本文說明如何驗證IP裝置追蹤(IPDT)作業和某些疑難排解動作。
本文件沒有特定需求。
本檔案中的輸出是根據以下軟體和硬體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
IPDT的主要任務是跟蹤連線的主機(MAC和IP地址的關聯)。 為此,它傳送單播地址解析協定(ARP)探測,預設間隔為30秒。這些探測器將傳送到鏈路另一端所連線主機的MAC地址,並使用第2層(L2)作為預設源。根據RFC 5227中列出的ARP探測定義,這允許ARP從其通過的物理介面的MAC地址以及傳送方IP地址0.0.0.0。
附註:IPDT已被棄用,取而代之的是基於SISF的(交換器整合式安全功能)裝置追蹤。SISF提供增強的IP跟蹤功能,同時支援IPv4和IPv6。
從Cisco IOS® XE Denali 16.1.1開始,現有的IPv6監聽和IP裝置跟蹤(IPDT)命令具有相應的基於SISF的裝置跟蹤命令,允許您將配置應用於IPv4和IPv6地址系列。
保留本文檔,以備與舊版IP裝置追蹤(IPDT)功能相關時參考。當前部署可以使用基於SISF的裝置跟蹤,在現代Cisco IOS-XE平台中取代了IPDT。有關排除SISF故障的其他指南,請參閱Catalyst 9000系列交換機上的SISF故障排除。
在本文檔中,術語ARP探測用於指在本地鏈路上以全零傳送方IP地址廣播的ARP請求資料包。傳送方硬體地址必須包含傳送資料包的介面的硬體地址。必須將傳送方IP地址欄位設定為全零,以避免在地址已被另一台主機使用的情況下,ARP會在同一鏈路上的其他主機中快取的損壞。必須將目標IP地址欄位設定為要探測的地址。ARP探測功能會傳遞一個問題(有人使用這個地址嗎?)和一個隱含的語句(這是您希望使用的地址。)
IPDT的用途是讓交換器取得和維護透過IP位址連線到交換器的裝置清單。探測器未填充跟蹤條目;它只是用於在通過主機的ARP請求/應答獲知條目後維護表中的條目。
啟用IPDT時,IP ARP檢測會自動啟用。它在監視ARP資料包時檢測新主機的存在。如果啟用動態ARP檢測,則只有其驗證的ARP資料包用於檢測「裝置跟蹤」表中的新主機。
IP DHCP監聽(如果已啟用)在DHCP分配或撤銷新主機的IP地址時檢測新主機的存在或刪除。當看到給定主機的DHCP流量時,IPDT ARP探測間隔計時器被重置。
IPDT是一種始終可用的功能,但是對於較新版本的Cisco IOS®,預設會啟用其依存關係(請參閱思科錯誤ID CSCuj04986)。 當其IP/MAC主機關聯資料庫用於填充動態訪問控制清單(ACL)的源IP或維護IP地址到安全組標籤的繫結時,它非常有用。
ARP探測是在兩種情況下傳送的:
交換機傳送的keepalive探測是L2檢查。因此,從交換機的角度來看,在ARP中用作源的IP地址並不重要:此功能可以在未配置IP地址的裝置上使用,因此0.0.0.0的IP源不相關。
當主機收到此消息時,它會回覆並填寫目標IP欄位,其中包含所接收資料包中唯一可用的IP地址,即其自己的IP地址。這可能會導致錯誤重複的IP地址警報,因為作出回覆的主機將自己的IP地址同時視為資料包的源和目標;有關重複IP地址方案的詳細資訊,請參閱故障排除「重複IP地址0.0.0.0」錯誤消息文章。
IPDT的全域性開啟/關閉設定是舊有行為,會導致現場出現問題,因為客戶並不總是知道他們必須開啟IPDT才能使用某些功能。在當前版本中,IPDT僅在啟用需要IPDT的功能時受介面級別的控制。
在這些版本中,IPDT預設為全域開啟;即no global config命令:
必須注意的是,即使IPDT是全域性啟用的,這也不一定意味著IPDT主動監控給定埠。
在IPDT始終開啟以及當IPDT全域性啟用時可以全域性關閉/開啟IPDT的版本中,其他功能可確定它是否在特定介面上處於活動狀態(請參閱「功能區域」部分)。
從給定介面發出的IPDT及其ARP探測器用於以下功能:
| 平台 |
功能 |
預設開啟(啟動) |
禁用方法 |
禁用CLI |
| Cat 2960/3750(Cisco IOS) |
IPDT |
15.2(1)E * |
全域CLI(舊版本)* 每個介面 |
無ip裝置跟蹤* IP裝置跟蹤最大值為0*** |
| Cat 2960/3750(Cisco IOS) |
NMSP |
否 |
全域性CLI或 每個介面的CLI |
未啟用NMSP NMSP附件抑制通**** |
| Cat 2960/3750(Cisco IOS) |
裝置感測器 |
15.0(1)SE |
全域CLI |
沒有宏自動監控 |
| Cat 2960/3750(Cisco IOS) |
ARP窺探 |
15.2(1)E** |
不適用 |
不適用 |
| Cat 3850 |
IPDT |
所有版本* |
每個介面* |
IP裝置跟蹤最大0 *** |
| Cat 3850 |
NMSP |
所有版本 |
每個介面 |
NMSP附件抑制 |
| Cat 3850 |
裝置感測器 |
否 |
不適用 |
不適用 |
| Cat 3850 |
ARP窺探 |
所有版本** |
不適用 |
不適用 |
| Cat 4500 |
IPDT |
15.2(1)E / 3.5.0E * |
全域CLI(舊版本)* 每個介面 |
無IP裝置跟蹤* IP裝置跟蹤最大0 *** |
| Cat 4500 |
NMSP |
否 |
全域性CLI或 每個介面的CLI |
未啟用NMSP NMSP附件抑制通**** |
| Cat 4500 |
裝置感測器 |
15.1(1)SG/3.3.0SG |
全域CLI |
無宏自動監控 |
| Cat 4500 |
ARP窺探 |
15.2(1)E/3.5.0E節** |
不適用 |
不適用 |
在預設情況下未啟用IPDT的版本中,可以通過運行以下命令全域性關閉IPDT:
Switch(config)#no ip device tracking
在IPDT始終開啟的版本中,不能運行先前的命令,或不允許禁用IPDT(思科錯誤ID CSCuj04986)。 在這種情況下,有幾種方法可以確保IPDT不監控特定連線埠或不會產生重複的IP警報。
此命令不允許交換器在偵測到連結啟動/翻動時傳送10秒的探測,這可以最大程度地降低在連結另一側的主機檢查重複IP位址時傳送探測的可能性。RFC為重複地址檢測指定一個10秒的視窗。如果延遲裝置跟蹤探測,則可以在大多數情況下解決問題。
如果在主機(例如Microsoft Windows PC)處於重複地址檢測階段時,交換機為客戶端傳送ARP探測,則主機將探測檢測為重複的IP地址,並向使用者顯示一條消息,說明在網路上找到了重複的IP地址。如果PC沒有獲得地址,且使用者必須手動釋放/更新地址;斷開連線並重新連線到網路,或者重新啟動PC以訪問網路。
除了探測延遲,當交換機檢測到來自PC/主機的探測時,延遲也會自行重置。例如,如果探測計時器已計為五秒鐘,並且檢測到來自PC/主機的ARP探測,則該計時器將重置回10秒。
此組態已透過思科錯誤ID CSCtn27420提供。
使用此命令,可以將交換機配置為傳送不符合RFC的ARP探測;ip來源不是0.0.0.0,而是主機所駐留的VLAN中的交換器虛擬介面(SVI)。Microsoft Windows電腦不再將探測視為由RFC 5227定義的探測,並且它不會將其標籤為潛在的重複IP。
對於沒有可預測/可控制的終端裝置的客戶,或者對於擁有許多隻使用L2角色的交換機的客戶來說,SVI的配置(它在設計中引入了第3層變數)不是一個合適的解決方案。15.2(2)E版及更新版本中引入的一項增強功能,允許任意分配IP地址的可能性無需屬於交換機,即可用作IPDT生成的ARP探測中的源地址。此增強功能提供機會,以便按以下方式修改系統的自動行為(此清單顯示使用每個指令後系統如何自動行為):
作為上述計算的示例,假設您使用提供的掩碼和主機位探測主機192.168.1.200,您將生成源地址192.168.1.1。如果探測條目10.5.5.20,則可以生成源地址為10.5.5.1的ARP探測,以此類推。
此命令不會真正禁用IPDT,但是它會將跟蹤的主機數量限製為零。這不是推薦的解決方案,必須謹慎使用,因為它會影響依賴IPDT的所有其他功能,包括思科錯誤ID CSCun81556中介紹的埠通道配置。
可觸發IPDT的某些功能包括NMSP、裝置感測器、dot1x/MAB、WebAuth和IPSG。建議不要在主干連線埠上啟用這些功能。此解決方案專用於最困難或最複雜的情況,在這些情況下,以前提供的所有解決方案要麼都不如預期工作,要麼產生了其他問題。但是,這是在禁用IPDT時允許極端粒度的唯一解決方案,因為您只能關閉導致問題的與IPDT相關的功能,而所有其他功能均不受影響。
在最新的Cisco IOS版本15.2(2)E及更高版本中,您會看到類似以下的輸出:
Switch#show ip device tracking interface GigabitEthernet 1/0/9
--------------------------------------------
Interface GigabitEthernet1/0/9 is: STAND ALONE
IP Device Tracking = Disabled
IP Device Tracking Probe Count = 3
IP Device Tracking Probe Interval = 180000
IPv6 Device Tracking Client Registered Handle: 75
IP Device Tracking Enabled Features:
HOST_TRACK_CLIENT_ATTACHMENT
HOST_TRACK_CLIENT_SM
輸出底部所有帽中的兩行是使用IPDT工作的兩行。如果禁用介面中運行的單個服務,則禁用裝置跟蹤時產生的大部分問題都可以避免。
在早期版本的Cisco IOS中,目前還無法提供在介面下啟用哪些模組的簡易方法,因此您必須執行更多相關的程式才能取得相同的結果。您必須開啟debug ip device track interface,該介面是低頻率日誌,在大多數設定中必須安全。請注意不要啟用debug ip device tracking all,因為反之,這會使控制檯在縮放的情況下泛洪。
啟用調試後,將介面恢復為預設值,然後從介面配置中新增和刪除IPDT服務。調試的結果會告訴您哪個服務已使用您使用的命令啟用/禁用。
Switch(config)#interface GigabitEthernet 1/0/9
Switch(config-if)#ip device tracking maximum 10
Switch(config-if)#
*Mar 27 09:58:49.470: sw_host_track-interface:Feature 00000008 enabled on port Gi1/0/9, mask now 0000004C, 65 ports enabled
*Mar 27 09:58:49.471: sw_host_track-interface:Gi1/0/9[L2 DOWN, IPHOST DIS]IP host tracking max set to 10
Switch(config-if)#
輸出顯示您已啟用功00000008掩碼,且新功能掩碼為0000004C。
現在,移除剛新增的組態:
Switch(config-if)#no ip device tracking maximum 10
Switch(config-if)#
*Mar 27 10:02:31.154: sw_host_track-interface:Feature 00000008 disabled on port
Gi1/0/9, mask now 00000044, 65 ports enabled
*Mar 27 10:02:31.154: sw_host_track-interface:Gi1/0/9[L2 DOWN, IPHOST DIS]IP
host tracking max cleared
*Mar 27 10:02:31.154: sw_host_track-interface:Max limit has been removed from
the interface GigabitEthernet1/0/9.
Switch(config-if)#
刪除特徵掩00000008後,您將看到00000044個掩碼,該掩碼必須是原始預設掩碼。由於AIM為00000044x00000004,而SM為0x00000040,因此預期值為1000,兩者相加,結果為0x00000044。
有幾種IPDT服務可以在介面下運行:
| IPT服務 |
介面 |
| HOST_TRACK_CLIENT_IP_ADMISSIONS |
= 0x00000001 |
| HOST_TRACK_CLIENT_DOT1X |
= 0x00000002 |
| HOST_TRACK_CLIENT_ATTACHMENT |
= 0x00000004 |
| HOST_TRACK_CLIENT_TRACK_HOST_UPTO_MAX |
= 0x00000008 |
| HOST_TRACK_CLIENT_RSVP |
= 0x00000010 |
| HOST_TRACK_CLIENT_CTS |
= 0x00000020 |
| HOST_TRACK_CLIENT_SM |
= 0x00000040 |
| HOST_TRACK_CLIENT_WIRELESS |
= 0x00000080 |
在示例HOST_TRACK_CLIENT_SM(SESSION-MANAGER)和HOST_TRACK_CLIENT_ATTACHMENT(也稱為AIM/NMSP)中,為IPDT配置模組。要關閉此介面上的IPDT,您必須同時禁用這兩個功能,因為只有在同時禁用所有使用該功能的功能時,才會禁用IPDT。
停用這些功能後,您會得到類似以下的輸出:
Switch(config-if)#do show ip device tracking interface GigabitEthernet 1/0/9
--------------------------------------------
Interface GigabitEthernet1/0/9 is: STAND ALONE
IP Device Tracking = Disabled ß IPDT is disabled
IP Device Tracking Probe Count = 3
IP Device Tracking Probe Interval = 180000
IP Device Tracking Enabled Features:
ß No active features
--------------------------------------------
透過這種方式,IPDT會以更精細的方式停用。
以下是用來停用之前討論的一些功能的命令範例:
運行以下命令以驗證裝置上的IPDT狀態:
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
5.0 |
07-Jul-2026
|
已更新拼寫、語法、間距和CCW警報。 |
4.0 |
04-Dec-2025
|
更新了機器翻譯和SEO。 |
3.0 |
19-Dec-2024
|
更新的格式。 |
2.0 |
21-Aug-2023
|
更新的SEO、樣式要求和格式。 |
1.0 |
25-Nov-2014
|
初始版本 |