So CDP is very useful but CDP is propriety
sh cdp neighbors as an example
shows me that my local device is shown in the list of neighbors that is the local router.
Notice the IP address of the local router
that’s the IP address shown in the neighboring output
and that’s typically because there is a non Cisco device in the network
that is forwarding CDP messages.
So the routers actually seeing itself through the network
because there is a loop somewhere or there might be another problem.
So how do I see neighboring devices that may not be using CDP?
In other words non Cisco devices.
Well, I can do that by enabling LLDP.
Now this router doesn’t support LLDP
but as an example, if I telnet to my 3750 switch
so let’s have a look at the details
here it's IP address and then I'll telnet to it.
This switch which is a physical Cisco switch
So this is knowledge in GNS3, switches is a physical 3750
so we can see various physical interfaces on the switch
this switch does support LLDP.
Notice I can type lldp run to enable LLDP on this switch.
So sh cdp neighbors
shows me my Cisco devices
but notice sh lldp neighbors
shows me non Cisco devices including a Dell server and Ubuntu hypervisor server.
So these are Linux based servers running in my local network.
The Dell server has 2 connections to the switch.
So the local 3750 is connected to the Dell on both F0/24 as well as 0/23
the Ubuntu servers connected to F1/0/19
let’s look at details so sh lldp neighbors detail
I can see that this is a Dell server, it's using Ethernet 1
to connect to the switch scrolling down
I can see that the Dell server is connecting via Ethernet 0
to the local switch as well.
So the Dell server got both of its Ethernet network cards
connected to the local 3750, I'll do that command again
so sh lldp neighbors detail
notice we can see the IP address of the Dell server
we can see the operating system on the Dell server
it's running Ubuntu 14/04, it’s an x86 64 bit operating system.
We can see the options for physical media capabilities
so it supports gigabit Ethernet running at full duplex.
On this Ubuntu server it’s connected using port P2 P1
this Ubuntu server is actually running a virtual box in Ubuntu
and has various tag interfaces hence this interesting name of an interface.
This is the IP address of that Ubuntu server.
So in the same way that CDP allows me to see information between Cisco devices.
LLDP allows me to see information of non Cisco devices.
In my GNS3 topology, I could run LLDP on these switches.
So on switch 1 as an example, I can type lldp run
no CDP run so I’ve disabled CDP on switch 1
but I’m running LLDP on switch 1.
On switch 2 will enable LLDP and list CDP running.
So on switch 2 sh cdp neighbors
I can see various Cisco devices notice switch 1 timers
are less than a 120 seconds because they're timing out
so the CDP timers are timing out but sh lldp neighbors
shows me switch 1, so I can see switch 1 but I can't see switch 3
and switch 4 because switch 3 and switch 4 are not running LLDP
so as an example on switch 3 show lldp neighbor
we can see that LLDP is not enabled but CDP is enabled
and we can see that switch 1 is going to timeout
where’s something like router 1 has been reset because of the CDP updates.
So you can run CDP at the same time as LLDP
like I’m doing here on switch 2
CDP will show me devices that are running CDP
LLDP will show me devices running LLDP
so in a moment, switch 1 is gonna timeout as its stand here
so we don’t see switch 1 through CDP
but we do see it through LLDP.
Remember LLDP is most useful when you have got none Cisco devices
so like in this example on 3750
I can see Linux based servers that are running LLDP
I'd also be able to see devices such as Cisco IP phones running LLDP
as well as non Cisco routers and switches from vendors such as HPE.
Link Layer Discover Protocol is essentially an industry standard version
of Cisco Discovery Protocol or CDP