目標

Cisco Discovery Protocol(CDP)是Cisco裝置用於與其他連線的Cisco裝置共用裝置資訊的協定。這包括裝置型別、韌體版本、IP地址、序列號和其他標識資訊。CDP設定可以全域性調整，也可以根據交換機上的單個埠進行調整。

與鏈路層發現協定(LLDP)類似，CDP是一種鏈路層協定，用於直連鄰居向對方通告自己及其功能。但是，與LLDP不同，CDP是Cisco專有協定。

本文提供有關如何通過命令列介面(CLI)在交換機上配置CDP設定的說明，該介面包括以下工作流程：

1. 配置CDP全域性屬性。

2. 在介面上配置CDP設定。

3. （可選）如果使用Auto Smartport檢測CDP裝置的功能，請在Smartport屬性上配置CDP設定。有關說明，請按一下此處。

4. 顯示或清除CDP設定

如果您喜歡使用圖形使用者介面(GUI)配置CDP設定，請按一下此處。

適用裝置

- Sx350系列

- SG350X系列

- Sx500 系列

- Sx550X系列

軟體版本

- 2.3.0.130

配置CDP屬性

配置CDP全域性屬性

步驟 1.登入交換器主控台。預設的使用者名稱和密碼是 cisco/cisco。如果您已設定新的使用者名稱或密碼，請改為輸入認證。

注意：要瞭解如何通過SSH或Telnet訪問SMB交換機CLI，請按一下此處。

附註：這些命令可能會依據交換器的確切型號而有所不同。在此範例中，SG350X 交換器是透過 Telnet 存取。建議使用SSH。

步驟 2.從交換器的特權 EXEC 模式中，透過輸入以下命令來進入全域組態模式：

SG350X#configure

步驟 3.要在交換機上全域性啟用CDP，請輸入以下內容：

SG350X(config)#cdp run

注意：預設情況下啟用CDP。

步驟4.（可選）要在全域性禁用CDP時指定CDP資料包處理，請輸入以下內容：

SG350X(config)#cdp pdu [過濾 | 橋接 | flooding]

選項包括：

- filtering — 指定當全域性禁用CDP時，過濾或刪除CDP資料包。

- 橋接 — 指定當全域性禁用CDP時，CDP資料包作為常規資料包橋接，並根據虛擬區域網(VLAN)轉發。

- flooding — 指定當全域性禁用CDP時，CDP資料包將泛洪到產品中處於STP轉發狀態的所有埠，忽略VLAN過濾規則。

步驟 5.要使裝置能夠在已啟用CDP且屬於語音VLAN的所有埠上通告CDP中的語音VLAN，請輸入以下內容：

SG350X(config)#cdp裝置 — tlv enable

注意：這將啟用裝置TLV的傳送。

步驟 6.要驗證所有強制（根據CDP協定）TLV是否存在於接收的CDP幀中，請輸入以下內容：

SG350X(config)#cdp mandatory-tlvs驗證

注意：如果啟用，不包含強制TLV的傳入CDP資料包將被丟棄，無效錯誤計數器將遞增。這將刪除不包含所有強制TLV的CDP資料包。

步驟 7.要指定傳輸的CDP資料包的第2版，請輸入以下內容：

SG350X(config)#cdp advertise-v2

注意：在本示例中，使用版本2。

步驟 8.要在已傳送的CDP消息中指定生存時間(TTL)值，請輸入以下內容：

SG350X(config)#cdp holdtime [seconds]

- seconds — 生存時間保持時間的值（秒）。該值應大於傳輸計時器的值。

注意：這是CDP資料包在丟棄資料包之前保留的時間量，以TLV通告間隔的倍數度量。例如，如果TLV通告間隔為30秒，而保持乘數為4，則CDP資料包會在120秒後丟棄。預設值為180秒。在本例中，TTL設定為240秒。

步驟 9.要指定CDP資料包的傳輸頻率，請輸入以下內容：

SG350X(config)#cdp計時器[秒]

- seconds — 傳輸計時器的值（以秒為單位）。該值應小於TTL的值。

注意：這是傳送CDP通告更新的速率（以秒為單位）。預設值為60秒。在本示例中，計時器設定為120秒。

步驟 10.要指定Device-ID TLV的格式，請輸入以下內容：

SG350X(config)#cdp device-id格式[mac | serial-number | 主機名]

- mac — 指定裝置ID TLV包含裝置的MAC地址。

- serial-number — 指定Device-ID TLV包含裝置的硬體序列號。

- hostname — 指定Device-ID TLV包含裝置的主機名。

注意：在本示例中，裝置ID TLV應具有裝置的MAC地址。

步驟 11.要指定用於選擇源IP地址的CDP源埠，請輸入以下內容：

SG350X(config)#cdp source-interface [interface-id]

- interface-id — 用於選擇源IP地址的源埠。此IP地址將用於幀的TLV中。

注意：這將指定一個介面，該介面的最小IP地址將在TLV中通告，而不是傳出介面的最小IP地址。

在介面上配置CDP設定

步驟 12.在全域組態模式中，透過輸入以下指令來進入介面組態環境：

SG350X(config)#interface [interface-id]

- interface-id — 指定乙太網埠ID。

步驟 13.要在介面上啟用CDP，請輸入以下內容：

SG350X(config-if)#cdp enable

注意：預設情況下啟用CDP。

步驟14.（可選）要啟用驗證CDP資料包中接收的埠的VoIP狀態是否與其實際配置相匹配，並且如果SYSLOG VoIP不匹配消息的生成不匹配，請輸入以下命令：

SG350X(config-if)#cdp log mismatch voip

注意：啟用後，當檢測到語音VLAN不匹配時，將傳送SYSLOG消息。這意味著傳入幀中的語音VLAN資訊與本地裝置通告的內容不匹配。此功能已預設為啟用。

步驟15.（可選）若要啟用驗證CDP封包中接收的本徵VLAN是否與連線埠的實際本徵VLAN相符，以及如果不相符，則生成SYSLOG VLAN本機不相符訊息，請輸入以下內容：

SG350X(config-if)#cdp log mismatch native

注意：啟用後，當檢測到本徵VLAN不匹配時，將傳送SYSLOG消息。這意味著傳入幀中的本徵VLAN資訊與本地裝置通告的內容不匹配。此功能已預設為啟用。

步驟16.（可選）若要啟用驗證CDP封包中接收的連線埠的雙工狀態是否與連線埠的實際組態相匹配，以及如果不相符時產生SYSLOG雙工不相符訊息，請輸入以下內容：

SG350X(config-if)#cdp log mismatch duplex

註：啟用時，如果雙工資訊不匹配，將傳送SYSLOG消息。這表示傳入幀中的雙工資訊與本地裝置通告的內容不匹配。此功能已預設為啟用。

步驟 17.輸入 end 指令以返回特權 EXEC 模式：

SG350X(config-if)#end

現在，您應該已經通過CLI成功地在交換機上配置了CDP設定。

顯示或清除CDP設定

步驟 1.要顯示交換機上的全域性CDP資訊，請輸入以下內容：

SG350X#show cdp

注意：在本示例中，將顯示交換機上配置的CDP設定的一般資訊。

步驟2.（可選）要顯示有關特定鄰居的資訊，請輸入以下內容：

SG350X#show cdp entry [* | 裝置名稱] [協定 | 版本]

選項包括：

- * — 指定所有鄰居。

- device-name — 指定鄰居的名稱。

- protocol — 限制顯示關於在鄰居上啟用的協定的資訊。

- version — 顯示限製為有關在鄰居上運行的軟體版本的資訊。

注意：在本示例中，顯示所有鄰居的CDP資訊。

步驟 3.要顯示有關啟用CDP的埠的資訊，請輸入以下內容：

SG350X#show cdp interface [interface-id]

- interface-id — 指定乙太網埠ID。

注意：在本示例中，顯示埠ge1/0/2上的CDP設定。

步驟 4.要顯示主快取或輔助快取中保留的鄰居的相關資訊，請輸入以下內容：

SG350X#show cdp neighbors [interface-id] [detail | secondary]

- interface-id — 顯示連線到此埠的鄰居。

- detail — 顯示主快取中鄰居（或鄰居）的詳細資訊，包括網路地址、啟用的協定、保持時間和軟體版本。

- secondary — 顯示有關輔助快取中鄰居的資訊。

注意：在本示例中，顯示有關次快取記憶體中鄰居的資訊。

步驟5.（可選）要顯示CDP計數器，包括傳送和接收的資料包數和校驗和錯誤，請輸入以下內容：

SG350X#show cdp tlv [interface-id]

- interface-id — （可選）指定乙太網埠ID。

注意：在本示例中，顯示介面ge1/0/1的CDP計數器。

步驟 6.要顯示CDP計數器，包括傳送和接收的包數和校驗和錯誤，請輸入以下內容：

SG350X#show cdp traffic [global | interface-id]

- global — 僅顯示全域性計數器。

- interface-id — 應顯示其計數器的埠。

計數器顯示以下內容：

- Total packets output — 本地裝置傳送的CDP通告數。請注意，此值是CDP第1版通告輸出和CDP第2版通告輸出欄位的總和。

- 輸入 — 本地裝置接收的CDP通告數。請注意，此值是CDP版本1通告輸入和CDP版本2通告輸入欄位的總和。

- Hdr語法 — 本地裝置接收的帶有錯誤報頭的CDP通告數。

- Chksum error — 對傳入的CDP通告進行校驗和（驗證）操作失敗的次數。

- 無記憶體 — 當本地裝置嘗試組裝用於傳輸的廣告資料包並在收到它們時對其進行分析時，本地裝置沒有足夠的記憶體來將CDP通告儲存在廣告快取表中的次數。

- 無效 — 收到無效CDP通告的數目。

- CDP版本1通告輸出 — 本地裝置傳送的CDP版本1通告數。

- CDP版本1通告輸入 — 本地裝置接收的CDP版本1通告數。

- CDP版本2通告輸出 — 本地裝置傳送的CDP版本2通告數。

- CDP版本2通告輸入 — 本地裝置接收的CDP版本2通告數。

注意：在本示例中，顯示有關全域性CDP流量的詳細資訊。

步驟7.（可選）若要將CDP流量計數器重置為0，請輸入以下命令：

SG350X#clear cdp counters [global | interface-id]

- global — 僅清除全域性計數器。

- interface-id — 指定應清除的計數器的介面識別符號。

注意：在本例中，介面ge1/0/2的CDP流量重置為零。

步驟8.（可選）要刪除CDP快取表，請輸入以下內容：

SG350X#clear cdp表

步驟9.（可選）在交換機的特權EXEC模式下，輸入以下命令，將配置的設定儲存到啟動配置檔案中：

SG350X#copy running-config startup-config

步驟10。（可選）出現Overwrite file [startup-config]....提示後，在鍵盤上按Y選擇「Yes」，或按N選擇「No」。

現在，您應該已經通過CLI顯示或清除交換機上的CDP配置設定。

觀看與本文相關的影片...

按一下此處以觀看思科的技術演講