PowerScale:如何使用 Tcpdump 收集交換器資訊
摘要: 本文介紹如何使用數據包捕獲工具收集基本交換機資訊。
說明
乙太網路交換器通常會廣播連接埠資訊,例如 port name小 port description小 system name小 system description,以及 native vlan。思科發現協定 (CDP) 是思科交換機平臺專有的。鏈路層發現協定 (LLDP) 更像是一種行業標準。
如需本主題的詳細資訊:
CDP - https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/cdp/configuration/15-mt/cdp-15-mt-book/nm-cdp-discover.html
LLDP - https://www.cisco.com/c/en/us/td/docs/routers/ncs4000/software/configure/guide/configurationguide/configurationguide_chapter_0111011.pdf
此資訊可協助工程師識別節點介面可能實體連接至的交換器連接埠。有時候纜線可能插入不正確的交換器連接埠,或是將連接埠通道設定為不正確的實體連接埠。識別埠可以幫助網路工程師快速查看這些介面上配置的內容以及它們是否正確。
「警告/陷阱」
- 可使用
tcpdump命令「不應」在邏輯介面上執行。例如 laggX 或 vlanX,因為資訊僅與實體介面相關。 - 可使用
tcpdump命令應該只在物理介面上運行。分別是 1G、10G、25G、40G 等 - 最好在介面對中收集數據。這表示如果調查 mce 介面上的彙總問題,請先從 mce2 收集,然後再從 mce3 收集。
- 如果節點上的介面狀態為「無載波」,則不會收到任何良好的數據包。這應該首先作為一個物理問題來解決。
- CDP/LLDP 流量 (緩慢) 會在 25 至 35 秒之間從交換器連接埠傳送。
- 如果在啟動 120 秒後沒有輸出
tcpdump,結束命令。可能是交換器未傳送封包。
以下內容 tcpdump 命令僅偵聽 CDP 數據包,列印數據包,然後停止運行(手動進入介面):
tcpdump -ni <iface> -v -s0 -c1 '(ether[20:2]=0x2000)'
以下內容 tcpdump 命令僅偵聽 LLDP 封包,列印數據包,然後停止運行(手動進入介面):
tcpdump -ni <iface> -v -s0 -c1 '(ether[12:2]=0x88cc)'
以下內容 tcpdump 命令偵聽 LLDP 和 CDP 數據包,列印收到的第一個數據包,然後停止運行(手動進入介面):
tcpdump -ni <iface> -v -s0 -c1 '(ether[12:2]=0x88cc or ether[20:2]=0x2000)'
其他資訊
要使用的命令因交換機供應商而異。
CDP 範例 (輸出可能有所不同):
isilon-1# tcpdump -ni cxgb0 -v -s0 -c1 '(ether[20:2]=0x2000)'
tcpdump: WARNING: cxgb0: no IPv4 address assigned
tcpdump: listening on cxgb0, link-type EN10MB (Ethernet), capture size 65535 bytes
13:09:18.942158 CDPv2, ttl: 180s, checksum: 692 (unverified), length 248
Device-ID (0x01), length: 25 bytes: 'nx-5k(XXXXXXXXXXX)'
Address (0x02), length: 13 bytes: IPv4 (1) Y.Y.Y.Y
Port-ID (0x03), length: 11 bytes: 'Ethernet1/2'
Capability (0x04), length: 4 bytes: (0x00000228): L2 Switch, IGMP snooping
Version String (0x05), length: 66 bytes:
Cisco Nexus Operating System (NX-OS) Software, Version 4.1(3)N2(1)
Platform (0x06), length: 14 bytes: 'N5K-C5010P-BFS'
Native VLAN ID (0x0a), length: 2 bytes: 1XX
Duplex (0x0b), length: 1 byte: full
MTU (0x11), length: 4 bytes: 1500 bytes
System Name (0x14), length: 12 bytes: 'nx-5k'
System Object ID (not decoded) (0x15), length: 14 bytes:
0x0000: XYXY XYXY XYXY XYXY XYXY XYXY XYXY
Management Addresses (0x16), length: 13 bytes: IPv4 (1) Y.Y.Y.Y
Physical Location (0x17), length: 13 bytes: 0x00/snmplocation
1 packet captured
25 packets received by filter
0 packets dropped by kernel
範例 LLDP (輸出可能有所不同):
isilon-1# tcpdump -ni ix0 -v -s0 -c1 '(ether[12:2]=0x88cc)'
tcpdump: WARNING: ix0: no IPv4 address assigned
tcpdump: listening on ix0, link-type EN10MB (Ethernet), capture size 65535 bytes
18:12:46.442857 LLDP, length 282
Chassis ID TLV (1), length 7
Subtype MAC address (4): xy:xy:xy:xy:xy:xy
Port ID TLV (2), length 13
Subtype Interface Name (5): Ethernet1/13
Time to Live TLV (3), length 2: TTL 120s
Port Description TLV (4), length 12: isi_node
System Name TLV (5), length xy: XXXXXX
System Description TLV (6), length 161
Cisco Nexus Operating System (NX-OS) Software ...truncated
System Capabilities TLV (7), length 4
System Capabilities [Bridge, Router] (0x0014)
Enabled Capabilities [Bridge, Router] (0x0014)
Management Address TLV (8), length 12
Management Address length 5, AFI IPv4 (1): Y.Y.Y.Y
Interface Index Interface Numbering (2): 1
Organization specific TLV (127), length 5: OUI Unknown (0x000142)
0x0000: 0001 XYXY XY
Organization specific TLV (127), length 6: OUI Ethernet bridged (0x0080c2)
Port VLAN Id Subtype (1)
port vlan id (PVID): 1XX
Management Address TLV (8), length 14
Management Address length 7, AFI 802 (6): xy:xy:xy:xy:xy:xy
Interface Index Interface Numbering (2): 1
End TLV (0), length 0
1 packet captured
3 packets received by filter
0 packets dropped by kernel