cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
373
Views
0
Helpful
1
Replies

Building Applications to interconnect with Cisco devices.

luc.hanssens
Level 1
Level 1

I put this conversation here as there is no other spot to put it.

Currently I want to build a C# application that has to find the CDP info of an IP telephone set. The CDP is a protocol specific to Cisco and is not implemented in the current languages. Has someone an idea how I can easily implement in C# the CDP protocol in order to get the CDP info of the set as well as a method to send the CDP query to the IP phone ?

The CDP protocol is not implemented in C# and I don't want to use tools like ethereal to get the CDP info.

I also want to know if there are some external functions available to be used for CDP in any programming language anyway ?

Thanks!

1 Reply 1

pcameron
Cisco Employee
Cisco Employee

CDP is sent as a layer 2 multicast sent to the address 01:00:0c:cc:cc:cc

For more details refer here -

http://www.cisco.com/en/US/products/hw/switches/ps663/products_tech_note09186a0080094713.shtml#cdp

Wikipedia has some reasonable detail as well -

http://en.wikipedia.org/wiki/Cisco_Discovery_Protocol

There are no queries sent out by any devices - each device (such as the phone) just advertises it's details at periodical intervals and relies on the router or switch to build up a database of entries, which can then be examined by the "SHOW CDP NEIGHBOR DETAIL"

If all you want to do is send out a CDP packet, technically you could just send a crafted hex file that is the representation of the CDP details direct to the NIC of a PC.

If you want to determine details about phones on the network you would need to listen for all traffic on the 01:00:0c:cc:cc:cc multicast MAC address then simply build up a table of entries for additional processing. I'm not in any way an expert in network programming but I think you could find some guides that show you how to do this.