The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Cisco Discovery Protocol (formerly known as CDP) is a Layer 2, media-independent, and network-independent protocol that runs on Cisco devices and enables networking applications to learn about directly connected devices nearby. This protocol facilitates the management of Cisco devices by discovering these devices, determining how they are configured, and allowing systems using different network-layer protocols to learn about each other.
This module describes Cisco Discovery Protocol Version 2 and how it functions with Simple Network Management Protocol (SNMP).
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
VLAN Trunking Protocol (VTP) is a discovery technique used by switches. A switch advertises its management domain, configuration revision number, VLANs, and their specific parameters on its trunk ports. A VTP domain is made up of a single device or interconnected devices that share the same VTP domain name. A switch can belong to only one VTP domain.
Type-Length-Value (TLV) fields are blocks of information embedded in Cisco Discovery Protocol advertisements. Information in advertisements varies, and the TLV frame format allows for extending advertisements when needed. The table below summarizes the TLV definitions.
Cisco Discovery Protocol is a Layer 2, media-independent, and network-independent protocol that networking applications use to learn about nearby, directly connected devices. Cisco Discovery Protocol is enabled by default. Each device configured for Cisco Discovery Protocol advertises at least one address at which the device can receive messages and sends periodic advertisements (messages) to the well-known multicast address 01:00:0C:CC:CC:CC. Devices discover each other by listening at that address. They also listen to messages to learn when interfaces on other devices are up or go down.
Advertisements contain time-to-live information, which indicates the length of time a receiving device should hold Cisco Discovery Protocol information before discarding it. Advertisements supported and configured in Cisco software are sent, by default, every 60 seconds on interfaces that support Subnetwork Access Protocol (SNAP) headers. Cisco devices never forward Cisco Discovery Protocol packets. Cisco devices that support Cisco Discovery Protocol store the information received in a table. Information in this table is refreshed every time an advertisement is received, and information about a device is discarded after three advertisements from that device are missed.
The information contained in Cisco Discovery Protocol advertisements varies based on the type of device and the installed version of the operating system. Some of the information that Cisco Discovery Protocol can learn includes:
Cisco Discovery Protocol Version 2 provides more intelligent, device-tracking features than those available in Version 1. One of the features available is an enhanced reporting mechanism for more rapid error tracking, which helps to reduce network downtime. Errors reported include mismatched native VLAN IDs (IEEE 802.1Q) on connected ports and mismatched port-duplex states between connected devices. Messages about reported errors can be sent to the console or to a logging server.
You can use show commands for getting detailed output on VTP management domains and duplex modes of neighboring devices, counters related to Cisco Discovery Protocol, and VLAN IDs of connecting ports.
Using Cisco Discovery Protocol with Simple Network Management Protocol (SNMP) allows network management applications to learn the type of device and the SNMP agent address of neighboring devices. Applications can also send SNMP queries to these neighboring devices.
The SNMP management application learns protocol addresses and types of neighboring devices by retrieving the Cisco Discovery Protocol tables from SNMP agents on those devices. When enabled, the network management module (NMM) SNMP agent discovers neighboring devices and builds its local cache with information about these devices. A management workstation can retrieve this cache by sending SNMP requests to access CISCO-CDP-MIB.
Cisco Discovery Protocol and On-Demand Routing (ODR) support exists for ATM point-to-point permanent virtual circuits (PVCs). ODR uses Cisco Discovery Protocol to propagate IP address information in hub-and-spoke topologies. When ODR is enabled, spoke routers automatically advertise their subnets by using Cisco Discovery Protocol.
Cisco Discovery Protocol is disabled by default on ATM PVC interfaces. To enable Cisco Discovery Protocol, use the cdp run command in global configuration mode and the cdp enable command in interface configuration mode on both ends of the PVC. To enable ODR, use the router odr command in global configuration mode on the hub router, and turn off all dynamic-routing protocols on the spoke routers. For details about configuring ODR, see the “Configuring On-Demand Routing” section in the IP Routing: ODR Configuration Guide.
Cisco Discovery Protocol in IPv6 functions in the same way as in IPv4 and offers the same benefits. The IPv6 enhancement allows Cisco Discovery Protocol to exchange IPv6 and neighbor addressing information. The enhancement also provides IPv6 information to network management products and troubleshooting tools.
Cisco Discovery Protocol provides the following benefits:
1.
enable
2.
configure
terminal
3.
no
cdp
run
4.
end
1.
enable
2.
configure
terminal
3.
cdp
run
4.
end
If the encapsulation of an interface is changed, Cisco Discovery Protocol is reenabled on that interface even if Cisco Discovery Protocol was previously disabled. For example, when interface encapsulation changes from PPP to High-Level Data Link Control (HDLC), Cisco Discovery Protocol is reenabled on that interface even though it was explicitly disabled with the no cdp run command on that interface. This behavior is by design. The encapsulation changes the Layer 2 protocol configured for that interface and resets the interface configuration to the default Cisco Discovery Protocol state of being enabled, assuming that Cisco Discovery Protocol is enabled globally on the device.
1.
enable
2.
configure
terminal
3.
interface
type
number
[name-tag]
4.
no
cdp
enable
5.
end
In the following example, Cisco Discovery Protocol is first disabled on an interface:
Device(config)# interface fastethernet 3/0 Device(config-if)# no ip address Device(config-if)# shutdown Device(config-if)# no cdp enable ! Cisco Discovery Protocol is disabled. Device(config-if)# end
In the following example, the encapsulation of the interface is changed from PPP to HDLC:
Device# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Device(config)# interface fastethernet 3/0 ! Encapsulation changed from PPP to HDLC. Device(config-if)# do show running interface fastethernet 3/0 Current configuration : 49 bytes !
The following example shows that Cisco Discovery Protocol is reenabled after the encapsulation for the interface is changed even though Cisco Discovery Protocol was previously disabled:
Device(config)# interface fastethernet 3/0 Device(config-if)# no ip address Device(config-if)# shutdown ! Cisco Discovery Protocol is now back on. You don't see it here previously disabled. Device(config-if)# end
Note | In Cisco ASR 1000 Series Aggregation Services Routers, Cisco Discovery Protocol is disabled by default in devices and interfaces. Enabling Cisco Discovery Protocol on a device does not enable on its supported interfaces. Cisco Discovery Protocol must be enabled on the specific interfaces manually. |
Note | If the encapsulation of an interface is changed, Cisco Discovery Protocol is reenabled on that interface, even if Cisco Discovery Protocol was previously disabled. |
1.
enable
2.
configure
terminal
3.
interface
type
number
[name-tag]
4.
cdp
enable
5.
end
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. | ||
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. | ||
Step 3 |
interface
type
number
[name-tag]
Example: Device(config)# interface ethernet 0/1 |
Configures the specified interface and places the CLI in interface configuration mode.
| ||
Step 4 |
cdp
enable
Example: Device(config-if)# cdp enable |
Enables Cisco Discovery Protocol on the interface. | ||
Step 5 |
end
Example: Device(config-if)# end |
Returns the CLI to privileged EXEC mode. |
Perform this task to set the frequency of Cisco Discovery Protocol transmissions and the hold time for Cisco Discovery Protocol packets.
1.
enable
2.
configure
terminal
3.
cdp
timer
seconds
4.
cdp
holdtime
seconds
5.
end
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
cdp
timer
seconds
Example: Device(config)# cdp timer 30 |
Specifies the frequency of transmission of Cisco Discovery Protocol packets. |
Step 4 |
cdp
holdtime
seconds
Example: Device(config)# cdp holdtime 90 |
Specifies the time for which a receiving device should hold information before discarding it. |
Step 5 |
end
Example: Device(config)# end |
Enters privileged EXEC mode. |
The broadcasting of Cisco Discovery Protocol Version 2 advertisements is enabled by default on Cisco devices. To disable or reenable this broadcasting, perform these tasks.
1.
enable
2.
configure
terminal
3.
no
cdp
advertise-v2
4.
end
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
no
cdp
advertise-v2
Example: Device(config)# no cdp advertise-v2 |
Disables the broadcasting of Cisco Discovery Protocol Version 2 advertisements. |
Step 4 |
end
Example: Device(config)# end |
Exits to privileged EXEC mode. |
1.
enable
2.
configure
terminal
3.
cdp
advertise-v2
4.
end
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
configure
terminal
Example: Device# configure terminal |
Enters global configuration mode. |
Step 3 |
cdp
advertise-v2
Example: Device(config)# cdp advertise-v2 |
Enables the broadcasting of Cisco Discovery Protocol Version 2 advertisements. |
Step 4 |
end
Example: Device(config)# end |
Exits to privileged EXEC mode. |
Perform this task to monitor and maintain Cisco Discovery Protocol on a device. This task and all its steps are optional, and the steps can be performed in any sequence.
1.
enable
2.
clear
cdp
counters
3.
clear
cdp
table
4.
show
cdp
5.
show
cdp
entry
device-name
[protocol |
version]
6.
show
cdp
interface
[type
number]
7.
show
cdp
neighbors
[type
number] [detail]
8.
show
cdp
traffic
9.
show
debugging
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable
Example: Device> enable |
Enables privileged EXEC mode. |
Step 2 |
clear
cdp
counters
Example: Device# clear cdp counters |
Resets Cisco Discovery Protocol traffic counters to zero. |
Step 3 |
clear
cdp
table
Example: Device# clear cdp table |
Clears the table that contains Cisco Discovery Protocol information about neighbors. |
Step 4 |
show
cdp
Example: Device# show cdp |
Displays the interval between advertisements, the number (in seconds) for which an advertisement is valid for a given port, and the version of the advertisement. |
Step 5 |
show
cdp
entry
device-name
[protocol |
version]
Example: Device# show cdp entry test-device protocol |
Displays information about a specific neighbor. |
Step 6 |
show
cdp
interface
[type
number]
Example: Device# show cdp interface |
Displays information about interfaces on which Cisco Discovery Protocol is enabled. |
Step 7 |
show
cdp
neighbors
[type
number] [detail]
Example: Device# show cdp neighbors |
|
Step 8 |
show
cdp
traffic
Example: Device# show cdp traffic |
Displays information about Cisco Discovery Protocol traffic, including the number of packets sent and received and checksum errors. |
Step 9 |
show
debugging
Example: Device# show debugging |
Displays information about the types of debugging that are enabled for the device. |
In the following example, the timer is set to send updates every 30 seconds and a show cdp interface command is used to verify that the update is effective:
Device(config)# cdp timer 30 Device(config)# end Device# show cdp interface Serial0 is up, line protocol is up Encapsulation is HDLC Sending CDP packets every 30 seconds Holdtime is 180 seconds
In the following example, the hold time is set to 90 seconds and a show cdp interface command is used to verify that the update is effective:
Device(config)# cdp holdtime 90 Device(config)# end Device# show cdp interface Serial0 is up, line protocol is up Encapsulation is HDLC Sending CDP packets every 30 seconds Holdtime is 90 seconds
The following example shows a series of commands that you can use to view Cisco Discovery Protocol information:
Device# show cdp Global CDP information: Sending CDP packets every 60 seconds Sending a holdtime value of 180 seconds Sending CDPv2 advertisements is enabled Device# show cdp neighbors Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge S - Switch, H - Host, I - IGMP, r - Repeater Device ID Local Interfce Holdtme Capability Platform Port ID C2950-1 Fas 0/0 148 S I WS-C2950T-Fas 0/15 RX-SWV.cisco.com Fas 0/1 167 T S WS-C3524-XFas 0/13 Device# show cdp neighbors detail ------------------------- Device ID: C2950-1 Entry address(es): Platform: Cisco WS-C2950T-24, Capabilities: Switch IGMP Interface: FastEthernet0/0, Port ID (outgoing port): FastEthernet0/15 Holdtime : 139 sec Version : Cisco IOS C2950 Software (C2950-I6Q4L2-M), Version 12.1(9)EA1, RELEASE SOFTWARE . . . Device# show cdp traffic CDP counters : Total packets output: 81684, Input: 81790 Hdr syntax: 0, Chksum error: 0, Encaps failed: 0 No memory: 0, Invalid packet: 0, Fragmented: 0 CDP version 1 advertisements output: 0, Input: 0 CDP version 2 advertisements output: 81684, Input: 81790
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
Cisco Discovery Protocol commands |
|
SNMP support configuration tasks |
“Configuring SNMP Support” module |
On-Demand Routing configuration tasks |
“Configuring On-Demand Routing” module |
Debug commands |
Standard |
Title |
---|---|
IEEE 802.1Q |
Virtual LANs |
MIB |
MIBs Link |
---|---|
CISCO-CDP-MIB |
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: |
Description |
Link |
---|---|
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies. To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds. Access to most tools on the Cisco Support website requires a Cisco.com user ID and password. |
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
Cisco Discovery Protocol Version 2 |
Cisco IOS XE 3.13S |
Cisco Discovery Protocol is a Layer 2, media-independent, and network-independent protocol that runs on Cisco devices and enables networking applications to learn about nearby, directly connected devices. This protocol facilitates the management of Cisco devices and allows systems using different network layer protocols to learn about one another. |