目錄

簡介

必要條件

需求

採用元件

CDP計時器和CDP保持時間

拓撲

登入路由器

登入交換機

案例 1:交換器傳送已標籤的CDP封包

案例 2:交換器傳送未標籤的CDP封包

簡介

本檔案介紹執行Cisco IOS®的路由器和交換器之間的Cisco探索通訊協定(CDP)的行為。

CDP是Cisco專有的第2層協定，獨立於介質和協定，並在所有Cisco製造的裝置上運行。Cisco裝置將CDP通告傳送到組播目標地址01-00-0c-cc-cc-cc發出每個連線的網路介面。這些組播資料包由Cisco交換機和其他支援CDP的網路裝置通過其連線的網路介面接收。

必要條件

需求

本文件沒有特定需求。

採用元件

本文件所述內容不限於特定軟體和硬體版本。本檔案適用於執行Cisco IOS的所有思科路由器和交換器。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

CDP計時器和CDP保持時間

預設情況下，CDP通告每60秒在支援子網訪問協定(SNAP)報頭的介面上傳送，包括乙太網、幀中繼和ATM。保持時間指定表中條目的生存期。即，如果在超過保持時間的期間內沒有從裝置接收到通告，則丟棄裝置資訊（預設為180秒）。

要更改預設CDP計時器（60秒）和CDP保持時間（180秒），請分別輸入cdp timer和cdp holdtime Cisco IOS配置命令。可以使用show cdp命令驗證更改，該命令顯示當前裝置的CDP設定。

Router#show cdp

Global CDP information:

Sending CDP packets every 60 seconds

Sending a holdtime value of 180 seconds

Sending CDPv2 advertisements is enabled

預設情況下，CDP在所有介面上啟用。但是，有一個選項可以針對整個路由器或每個介面禁用CDP。

拓撲

交換器組態

路由器配置

Switch#show run int fa1/0/23

Building configuration...

Current configuration : 267 bytes

!

interface FastEthernet1/0/23

switchport trunk encapsulation dot1q

switchport trunk native vlan 10

switchport mode trunk

power inline never

spanning-tree portfast

spanning-tree guard root

end

int vlan 10

ip address 10.111.51.3 255.255.255.224

int vlan 21

ip address 10.111.48.3 255.255.255.128

Router#show run int gi0/1

interface GigabitEthernet0/1

no ip address

no ip redirects

duplex auto

speed auto

media-type rj45

end

interface GigabitEthernet0/1.1

encapsulation dot1Q 1

shutdown

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

路由器上的介面具有分別配置了VLAN 1、10和21的dot1q子介面gi0/0.1、gi0/0.10和gi0/0.21。交換機上的介面是允許所有VLAN的中繼鏈路。

Router#show ip int brief

Interface                  IP-Address      OK? Method Status             Protocol

GigabitEthernet0/0         10.106.68.151   YES DHCP   up                    up

GigabitEthernet0/1         unassigned      YES NVRAM  up                    up

GigabitEthernet0/1.1       unassigned      YES unset  administratively down down

GigabitEthernet0/1.10      10.111.51.1     YES manual up                    up

GigabitEthernet0/1.21      10.111.48.1     YES manual up                    up

交換器將路由器顯示為有效的CDP鄰居，如下所示：

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router           Fas 1/0/23        145             R S I  3845      Gig 0/1.10

路由器上的同一命令不會顯示直連交換機。

Router#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

執行CDP調試以幫助確定原因(debug cdp { packets) |鄰接 |事件})。

登入路由器

在快取中找到此條目。

CDP-PA: version 2 packet sent out on GigabitEthernet0/1 --->the packet is sent out on gi0/1

登入交換機

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

CDP-EV: No space for insertion of civic location

CDP-EV: No space (1068) for insertion of location information.

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

根據前面的日誌，路由器沒有收到來自交換機任何連線介面上的任何CDP資料包。採用dot1q封裝的介面已透過管理操作關閉。因此，當交換機傳送CDP資料包時，該資料包會被路由器丟棄。

附註：在路由器上，具有最低VLAN/dot1q封裝的子介面被選為傳送CDP資料包的首選子介面。在交換器上，CDP流量總是首選在已配置的最低VLAN上。也就是說，VLAN 1始終存在，不能從VLAN資料庫中刪除。當交換機將CDP作為已標籤資料包或未標籤資料包傳送時，CDP協定的行為會有所不同，具體取決於中繼鏈路上配置的本徵VLAN。

在交換器上，CDP流量總是首選在已配置的最低VLAN上。也就是說，VLAN 1始終存在，不能從VLAN資料庫中刪除。

當交換機將CDP作為已標籤資料包或未標籤資料包傳送時，CDP協定的行為會有所不同，具體取決於中繼鏈路上配置的本徵VLAN。

案例 1:交換器傳送已標籤的CDP封包

Switch configuration:

interface FastEthernet1/0/1

switchport trunk encapsulation dot1q

switchport trunk native vlan 10

switchport mode trunk

end

案例1: 路由器上配置了VLAN 1的子介面為Up/Up

interface GigabitEthernet0/1.1

encapsulation dot1Q 1

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

GL.S.14-3800-8#show ip int brief

Interface                  IP-Address      OK? Method Status             Protocol

GigabitEthernet0/0         10.106.68.151   YES DHCP   up                    up

GigabitEthernet0/1         unassigned      YES NVRAM  up                    up

GigabitEthernet0/1.1       unassigned      YES unset  up                    up

GigabitEthernet0/1.10      10.111.51.1     YES manual up                    up

GigabitEthernet0/1.21      10.111.48.1     YES manual up                    up

交換機在VLAN 1上傳送CDP資料包，該資料包將由路由器作為標籤資料包接收。路由器檢查其任何子介面是否配置了VLAN1 dot1q封裝且處於UP狀態。如果此檢查成功，則路由器將在GigabitEthernet 0/1.1上處理CDP資料包。

路由器將在編號最小的子介面上生成CDP資料包，該介面為up/up狀態並配置了VLAN1 dot1q封裝（或最低VLAN）。

在此案例中，路由器在gi0/1.1上傳送未標籤的CDP封包，這些封包由FastEthernet1/0/23上的交換器接收。

登入交換機

CDP-PA:版本2資料包在FastEthernet1/0/23上傳送。在快取中找到此條目。

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

登入路由器

CDP-PA:版本2資料包在GigabitEthernet0/1.1上傳送。 CDP-PA:從介面GigabitEthernet0/1.1上的交換機收到的資料包。在快取中找到此條目。

CDP-EV: Lookup for ip phone with idb= GigabitEthernet0/1.1

ip= 10.111.51.3 mac= 0021.567e.e219 platform= cisco WS-C3750-24P

在路由器上輸入show cdp neighbor命令。

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        149             R S I  3845      Gig 0/1.1

在路由器上輸入show cdp neigh命令。

Router#show cdp neigh

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge>

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,>

D - Remote, C - CVTA, M - Two-port Mac Relay>

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID>

Switch          Gig 0/1.1          158             S I   WS-C3750- Fas 1/0/23

案例2:更改路由器介面上的配置，以便沒有與VLAN 1的任何子介面

!

interface GigabitEthernet0/1.1

end

!

Router#show ip interface brief

Interface                  IP-Address      OK? Method Status             Protocol

GigabitEthernet0/0         10.106.68.151   YES DHCP   up                    up

GigabitEthernet0/0.1       unassigned      YES unset  up                    up

GigabitEthernet0/1         unassigned      YES NVRAM  up                    up

GigabitEthernet0/1.1       unassigned      YES unset  up                    up

GigabitEthernet0/1.10      10.111.51.1     YES manual up                    up

GigabitEthernet0/1.21      10.111.48.1     YES manual up                    up

分析

交換器在fa1/0/23上傳送經CDP標籤的封包。路由器收到封包時，會檢查路由器上的子介面是否已設定為VLAN 1的封裝dot1q。目前尚未設定任何子介面。

因此，路由器在主介面上收到CDP資料包。路由器在主介面上收到封包的原因是VLAN 1處於使用中狀態。輸入show vlan-switch 命令進行確認。即使路由器沒有為VLAN 1配置任何介面，也會收到CDP資料包。

Router#show vlan-switch

VLAN Name                             Status    Ports

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

1    default                          active

1002 fddi-default                     act/unsup

1003 token-ring-default               act/unsup

1004 fddinet-default                  act/unsup

1005 trnet-default                    act/unsup

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2

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

1    enet  100001     1500  -      -      -        -    -        1002   1003

1002 fddi  101002     1500  -      -      -        -    -        1      1003

1003 tr    101003     1500  1005   0      -        -    srb      1      1002

1004 fdnet 101004     1500  -      -      1        ibm  -        0      0

1005 trnet 101005     1500  -      -      1        ibm  -        0      0

在這種情況下，路由器的CDP資料包通過gi0/1傳送。

登入交換機

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

在快取中找到此條目。

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

登入路由器

CDP-PA: version 2 packet sent out on GigabitEthernet0/1>

CDP-PA: Packet received from Switch on interface GigabitEthernet0/1

在快取中找到此條目。

CDP-EV: Lookup for ip phone with idb= GigabitEthernet0/1 ip= 10.111.51.3

mac= 0021.567e.e219 platform= cisco WS-C3750-24P

在switch:

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        123             R S I  3845      Gig 0/1

在路由器上：

Router#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Switch          Gig 0/1            160             S I   WS-C3750- Fas 1/0/23

將封裝VLAN配置為本地的介面時，您會看到類似的行為。

案例 2:交換器傳送未標籤的CDP封包

Switch configuration:

interface FastEthernet1/0/1

switchport trunk encapsulation dot1q

switchport trunk native vlan 1

switchport mode trunk

end

案例1：設定VLAN 1的介面為Up/Up

interface GigabitEthernet0/1.1

encapsulation dot1Q 1

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

當交換機向路由器傳送CDP資料包時，它會傳送一個未標籤的資料包，因為本徵VLAN用於此通訊。因此，路由器在設定VLAN 1的介面上接收封包。路由器會檢查是否已設定dot1q封裝VLAN 1，以及介面是否為up/up。如果檢查成功，路由器將通過該介面傳送資料包。

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        5               R S I  3845      Gig 0/1.1

Router#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Switch          Gig 0/1.1          8               S I   WS-C3750- Fas 1/0/23

登入路由器

CDP-PA: version 2 packet sent out on GigabitEthernet0/1.1

CDP-PA: Packet received from Switch on interface GigabitEthernet0/1.1

在快取中未找到條目。

登入交換機

CDP-AD: Aging entry for Router, on interface FastEthernet1/0/23

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

在快取中未找到條目。

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

案例2: 路由器上配置VLAN的介面為Up/Up，並且兩個介面都沒有指定本徵VLAN

interface GigabitEthernet0/1.1

encapsulation dot1Q 1

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10 native

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

分析

當交換器將CDP封包傳送到路由器時，會傳送未標籤的封包，因為本地VLAN用於通訊。路由器通過gi0/1.1接收資料包，因為它自身配置了VLAN 1。路由器會檢查是否已設定VLAN 1或任何其他本徵VLAN。在當前情況下，介面gi0/1.10配置了native關鍵字。因此，路由器通過gi0/1.10子介面傳送資料包。

在此案例中會出現以下輸出：

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        5               R S I  3845      Gig 0/1.1

路由器上的CDP鄰居結果如下所示：

Router#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Switch          Gig 0/1.10         7               S I   WS-C3750- Fas 1/0/23

登入路由器

CDP-PA: version 2 packet sent out on GigabitEthernet0/1.10

CDP-PA: Packet received from Switch on interface GigabitEthernet0/1.1

在快取中未找到條目。

登入交換機

CDP-AD: Aging entry for Router, on interface FastEthernet1/0/23

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

在快取中未找到條目。

CDP-PA:在FastEthernet1/0/23上傳送的第2版資料包

案例3: 沒有配置了VLAN 1的介面，但兩個介面都沒有配置Native關鍵字

interface GigabitEthernet0/1.1

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10 native

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

交換器將封包傳送到路由器時，會透過本地VLAN傳送未標籤的封包。路由器通過gi0/1接收資料包。路由器檢查它是否配置了VLAN 1或任何其他本徵VLAN。

這裡的gi0/1.10介面配置為本地封裝，因此路由器通過gi0/1.10傳送資料包。

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        156             R S I  3845      Gig 0/1

Router#sh cdp neigh

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Switch          Gig 0/1.10         0               S I   WS-C3750- Fas 1/0/23

登入路由器

CDP-PA: version 2 packet sent out on GigabitEthernet0/1.10

CDP-PA: Packet received from Switch on interface GigabitEthernet0/1

在快取中未找到條目。

登入交換機

CDP-AD: Aging entry for Router, on interface FastEthernet1/0/23

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

在快取中未找到條目。

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

案例4: 路由器沒有VLAN dot1q封裝，並且未指定本徵VLAN

interface GigabitEthernet0/1.1

end

interface GigabitEthernet0/1.10

encapsulation dot1Q 10

ip address 10.111.51.1 255.255.255.224

end

interface GigabitEthernet0/1.21

encapsulation dot1Q 21

ip address 10.111.48.1 255.255.255.128

end

當交換器將封包傳送到路由器時，會傳送未標籤的CDP封包，因為通訊是透過本地VLAN進行的。路由器通過gi0/1接收資料包。路由器檢查是否配置了VLAN 1或任何其他本徵VLAN。此處沒有介面，因此路由器會透過gi0/1傳送封包（透過主介面）。

此輸出在此案例中顯示：

Switch#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Router          Fas 1/0/23        7               R S I  3845      Gig 0/1

路由器的輸出如下所示：

Router#show cdp neighbor

Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge

S - Switch, H - Host, I - IGMP, r - Repeater, P - Phone,

D - Remote, C - CVTA, M - Two-port Mac Relay

Device ID        Local Intrfce     Holdtme    Capability  Platform  Port ID

Switch          Gig 0/1           7               S I   WS-C3750- Fas 1/0/23

登入路由器

CDP-PA: version 2 packet sent out on GigabitEthernet0/1

CDP-PA: Packet received from Switch on interface GigabitEthernet0/1

在快取中未找到條目。

登入交換機

CDP-AD: Aging entry for Router, on interface FastEthernet1/0/23

CDP-PA: Packet received from Router on interface FastEthernet1/0/23

在快取中未找到條目。

CDP-PA: version 2 packet sent out on FastEthernet1/0/23

摘要

路由器收到標籤的CDP封包:

使用VLAN1配置的子介面處於管理性關閉/關閉狀態。

路由器會丟棄CDP資料包。該交換機不會列為CDP鄰居。

使用VLAN1配置的子介面為UP/UP。未指定本徵VLAN。

路由器在此子介面上傳送和接收資料包。

路由器未配置VLAN1，並且任何子介面都配置了native關鍵字/沒有native。

資料包在主介面上傳輸。CDP雙向工作。

路由器收到未標記的CDP封包:

使用VLAN1配置的子介面處於管理性關閉/關閉狀態。

路由器會丟棄CDP資料包。該交換機不會列為CDP鄰居。

使用VLAN1配置的子介面為UP/UP。未指定本徵VLAN。

路由器在此子介面上傳送和接收封包。CDP雙向工作。

路由器未配置VLAN1，並且所有子介面均未配置native關鍵字。

路由器在主介面上接收CDP資料包，但通過配置了native關鍵字的子介面傳送這些資料包。

路由器未配置VLAN1和native關鍵字。

CDP資料包在主介面上傳輸。CDP雙向工作。