目录

简介

先决条件

要求

使用的组件

规则

配置思科发现协议

在Cisco IOS设备上启用/禁用CDP

在接口上启用/禁用CDP

CDP上的已知问题

CDP会占用所有路由器内存

相关信息

简介

本文档说明如何在运行Cisco IOS®的思科路由器和交换机上配置思科发现协议(CDP)。具体来说，本文档介绍如何在思科设备上启用、验证和禁用 CDP，以及一些与 CDP 相关的已知问题。

CDP是思科专有的第2层协议，与介质和协议无关，在所有思科制造的设备上运行，包括：

- 路由器

- 网桥

- 访问服务器

- 交换机

启用CDP的Cisco设备会定期向组播地址发送接口更新，以便让邻居知道自己。由于它是第二层协议，因此这些数据包（帧）不会路由。使用带CDP MIB的SNMP使网络管理应用程序能了解设备类型和相邻设备的SNMP代理地址，并能向那些设备发送SNMP查询请求。CDP使用CISCO-CDP-MIB。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档不限于特定的软件和硬件版本。本文适用于运行Cisco IOS的Cisco路由器/交换机和路由模块，如WS-X4232-L3、RSM和MSFC等。

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

规则

有关文档规则的详细信息，请参阅 Cisco 技术提示规则。

配置思科发现协议

在Cisco IOS设备上启用/禁用CDP

默认情况下，思科路由器上启用CDP。如果您不喜欢使用CDP功能，请通过no cdp run命令禁用该功能。要重新启用CDP，请在全局配置模式下使用cdp run命令。

使用show cdp neighbors命令，您能验证您的Cisco设备上是否启用或禁用了CDP。

Router#show cdp neighbors

% CDP is not enabled

!--- This message indicates that CDP is disabled on this device.

Router#

此命令输出表示设备上已启用CDP，但未发现任何邻居设备或将其连接到此设备。

Router#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 Intrfce     Holdtme    Capability  Platform  Port ID

Router#

Router#show cdp

Global CDP information:

Sending CDP packets every 60 seconds

Sending a holdtime value of 180 seconds

Sending CDPv2 advertisements is  enabled

Router#

此命令输出显示CDP已启用，某些邻居设备已通过CDP协议发现。

Router#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 Intrfce     Holdtme    Capability  Platform  Port ID

R2-AGS           Ser 1              129          R        2500      Ser 0

R6-2500          Eth 0              144          R        4000      Eth 0

Router#

show cdp neighbors命令显示以下信息：

- 发现的设备类型

- 设备名称

- 本地接口（端口）的编号和类型

- CDP通告对端口有效的秒数

- 设备类型

- 设备产品编号

- 端口 ID

show cdp neighbors detail和show cdp entry命令显示有关相邻设备的其他信息，包括网络层协议信息和版本。

router#show cdp neighbors detail

-------------------------

Device ID: lab-7206

Entry address(es):

IP address: 172.19.169.83

Platform: cisco 7206VXR, Capabilities: Router

Interface: Ethernet0, Port ID (outgoing port): FastEthernet0/0/0

Holdtime : 123 sec

Version :

Cisco Internetwork Operating System Software

IOS (tm) 5800 Software (C5800-P4-M), Version 12.1(2)

Copyright (c) 1986-2002 by Cisco Systems, Inc.

advertisement version: 2

Duplex: half

-------------------------

Device ID: lab-as5300-1

Entry address(es):

IP address: 172.19.169.87

Platform: cisco AS5300, Capabilities: Router

--More--

!--- Output is suppressed.

router#show cdp entry lab-7206

-------------------------

Device ID: lab-7206

Entry address(es):

IP address: 172.19.169.83

Platform: cisco 7206VXR, Capabilities: Router

Interface: Ethernet0, Port ID (outgoing port): FastEthernet0/0/0

Holdtime : 123 sec

Version :

Cisco Internetwork Operating System Software

IOS (tm) 5800 Software (C5800-P4-M), Version 12.1(2)

Copyright (c) 1986-2002 by Cisco Systems, Inc.

advertisement version: 2

Duplex: half

在接口上启用/禁用CDP

如果CDP可以获得cdp run命令的全局支持，那么在默认情况下它也可以在所有支持的接口上启用(除帧中继多点子接口外)，并能发送并接收CDP信息。您能用no cdp enable命令在支持CDP的接口上禁用CDP。

Router#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 Intrfce     Holdtme    Capability  Platform  Port ID

R2-AGS           Ser 1              129          R        2500      Ser 0

R6-2500          Eth 0              144          R        4000      Eth 0

Router#

在此路由器上，串行接口1和以太网接口0上启用了CDP。在Serial 1接口上禁用CDP，并验证是否在Serial 1接口上发现邻居设备，如以下输出所示：

Router#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

Router(config)#interface s1

Router(config-if)#no cdp enable

Router(config-if)#^Z

Router#4w5d: %SYS-5-CONFIG_I: Configured from console by console

路由器不会删除禁用了CDP的接口上的邻居的条目，除非保持时间到期。此输出显示路由器仅在Ethernet 0接口上发现邻居。

Router#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 Intrfce     Holdtme    Capability  Platform  Port ID

R6-2500          Eth 0              149          R        4000      Eth 0

Router#

使用show running-config命令查找设备上特定接口上是否启用/禁用了CDP。

Router#show running-config int s1

Building configuration...

Current configuration : 94 bytes

!

interface Serial1 ip address 40.40.40.1 255.255.255.0

ip router isis

no cdp enable

!--- This command indicates that CDP is disabled on the Serial 1 interface.

end

Router#

注意：不能在接口上启用/禁用CDP，除非使用cdp run命令全局启用它。

CDP上的已知问题

CDP会占用所有路由器内存

当发送大量CDP邻居通告时，可能会占用可用设备的所有内存。这会导致崩溃或其他异常行为。有关详细信息，请参阅思科对CDP问题的回应：

相关信息

- 使用Cisco IOS配置Cisco发现协议

- 使用CatOS配置CDP

- 技术支持和文档 - Cisco Systems