前言
Cisco Discovery Protocol (CDP) 是 Cisco 独家的 Protocol,只可在 Cisco 产品上执行。透过 CDP,网管人员可以查看该设备的物理连接,得到相邻设备的资讯,例如:型号丶IOS 版本等等。现在一般都会使用 CDP Version 2,而 Cisco 设备预设亦会是 Version 2。
Neighbors
用上图网络为例子,由於 CDP 预设是开启的,因此只要输入 show cdp neighbors 即可看到相邻 Router 的资料。以下用 R1 作示范。
R1#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 Eth 0/0 128 R S I 3640 Eth 0/0
R3 Eth 0/1 133 R 7206VXR Fas 0/0
Device ID
相邻设备的 hostname。
Local Intrfce
即 Local Interface,是本设备连接相邻设备的 Interface。
Holdtme
CDP packet 预设每 60 秒传送一次,如果过了预设 Hold Time 180 秒也收不到 CDP packet,则判断对方已死掉。所以 Hold Time 会由 180 秒开始倒数,直至收到 CDP packet 再回到 180 秒,如果 Hold Time 数到 0 也收不到 CDP packet 的话,此条纪录便会被移除。
Capability
相邻设备是一件什麽东西呢?只要查看 Capability Code 便知道了。
Platform
相邻设备的型号。
Port ID
正在连接相邻设备的那一个 Interface。
如果想看得详细一点的话,可以用 show cdp neighbors detail,连 IP Address丶IOS Version 也赤裸裸的显示出来了,没有私隐!
R1#show cdp neighbors detail ------------------------- Device ID: R2 Entry address(es): IP address: 192.168.1.1 Platform: Cisco 3640, Capabilities: Router Switch IGMP Interface: Ethernet0/0, Port ID (outgoing port): Ethernet0/0 Holdtime : 173 sec Version : Cisco IOS Software, 3600 Software (C3640-JK9S-M), Version 12.4(16), RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2007 by Cisco Systems, Inc. Compiled Wed 20-Jun-07 11:43 by prod_rel_team advertisement version: 2 VTP Management Domain: '' Duplex: half ------------------------- Device ID: R3 Entry address(es): IP address: 192.168.2.1 Platform: Cisco 7206VXR, Capabilities: Router Interface: Ethernet0/1, Port ID (outgoing port): FastEthernet0/0 Holdtime : 174 sec Version : Cisco IOS Software, 7200 Software (C7200-IK9S-M), Version 12.4(17a), RELEASE SOFTWARE (fc2) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2007 by Cisco Systems, Inc. Compiled Wed 07-Nov-07 21:02 by prod_rel_team advertisement version: 2 Duplex: full
CDP Timer 与 Hold Time
如果这时候我们更改 R2 的 hostname,会发现要等一段时间後纪录才出现,而且旧纪录也没有立刻消失,这可能会造成一点困扰。
R2(config)#hostname Router2
R1#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 Eth 0/0 128 R S I 3640 Eth 0/0 Router2 Eth 0/0 168 R S I 3640 Eth 0/0 R3 Eth 0/1 133 R 7206VXR Fas 0/0
如果想更新快一点的话,可以修改 CDP Timer,缩短更新时间。但此举会增加网络负荷,请小心使用。现在试把 R2 的 CDP timer 改成 5 秒 (预设是 60 秒)。
Router2(config)#cdp timer ? <5-254> Rate at which CDP packets are sent (in sec) Router2(config)#cdp timer 5
用 show cdp 指令可查看 Timer 值。
Router2#show cdp
Global CDP information:
Sending CDP packets every 5 seconds
Sending a holdtime value of 180 seconds
Sending CDPv2 advertisements is enabled
观察 R1 的 CDP Neighbor,会发现 Router2 的 HoldTme 每数到 175 便会回到 180,证明 CDP Timer 已改成 5 秒。
R1#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 Router2 Eth 0/0 179 R S I 3640 Eth 0/0 R3 Eth 0/1 169 R 7206VXR Fas 0/0
现在尝试在 R2 更改 CDP holdtime。
R2(config)#cdp holdtime ? <10-255> Length of time (in sec) that receiver must keep this packet R2(config)#cdp holdtime 10
R2#show cdp
Global CDP information:
Sending CDP packets every 5 seconds
Sending a holdtime value of 10 seconds
Sending CDPv2 advertisements is enabled
在 R1 看 CDP Neighbor,现在 Router2 的 Holdtime 会由 10 秒开始倒数,如果过了 10 秒都收不到 Router2 传送 CDP packet,就会删掉纪录。这样子,不存在的设备就可以快一点消失。
R1#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 Router2 Eth 0/0 6 R S I 3640 Eth 0/0 R3 Eth 0/1 121 R 7206VXR Fas 0/0
关掉 CDP
由於 CDP 会暴露重要资讯,有时我们并不希望启动 CDP,例如:我是 ISP ,我不想我的客户知道我 Router 的资料,那便要关掉 CDP 了。
我们可以在 Interface 用 no cdp enable,这样,只有这个 Interface 的 CDP 会被关掉。
R2(config)#interface ethernet 0/0
R2(config-if)#no cdp enable
又或者使用 Global 指令 no cdp run,这样就所有 Interface 都不会发 CDP 了。
R2(config)#no cdp run
关掉 CDP 後,R1 便看不到 Router2 的资料。
R1#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 R3 Eth 0/1 134 R 7206VXR Fas 0/0
相關主題
Jan Ho 2021-07-22
Posted In: Layer 2 网络技术
发表回复