2024-07-24 05:18 PM
本ドキュメントでは、ND cluster 内で network に関するトラブルシューティングに用いられる ip address コマンドや ip neigh コマンドについて解説します。
ルーティング関係に用いられる ip route コマンドや ip rule コマンドについては以下をご参照ください。
Nexus Dashboard: Routes テーブルについて
本ドキュメントに記載の内容は、以下の ND cluster 環境での確認結果に基づきます。
Version: 3.1(1k)
Master node 3台 (SE-NODE-G2 * 3)
data network: 192.168.200.0/24 (ipv6 なし)
management network: 10.71.168.0/24 (ipv6 なし)
rescue-user@jtac-se1:~$ acs show nodes ╭────────────────────┬────────────────┬──────────┬─────────┬────────────────────┬────────────────────┬─────────╮ │ NAME (*=SELF) │ SERIAL │ VERSION │ ROLE │ DATANETWORK │ MGMTNETWORK │ STATUS │ ├────────────────────┼────────────────┼──────────┼─────────┼────────────────────┼────────────────────┼─────────┤ │ *jtac-se1 │ WMP255000V4 │ 3.1.1k │ Master │ 192.168.200.1/24 │ 10.71.168.201/24 │ Active │ │ │ │ │ │ ::/0 │ ::/0 │ │ │ ------------------ │ -------------- │ -------- │ ------- │ ------------------ │ ------------------ │ ------- │ │ jtac-se2 │ WZP23460YYC │ 3.1.1k │ Master │ 192.168.200.2/24 │ 10.71.168.202/24 │ Active │ │ │ │ │ │ ::/0 │ ::/0 │ │ │ ------------------ │ -------------- │ -------- │ ------- │ ------------------ │ ------------------ │ ------- │ │ jtac-se3 │ WZP23460YYA │ 3.1.1k │ Master │ 192.168.200.3/24 │ 10.71.168.203/24 │ Active │ │ │ │ │ │ ::/0 │ ::/0 │ │ ╰────────────────────┴────────────────┴──────────┴─────────┴────────────────────┴────────────────────┴─────────╯
ip address コマンドを用いると、その ND node 上にある全ての interface についての情報が得られます。
rescue-user@jtac-se1:~$ ip address 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: fabric0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP group default qlen 1000 link/ether cc:ed:4d:d7:30:ec brd ff:ff:ff:ff:ff:ff altname eno5 altname enp99s0f0 3: fabric1: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc mq master bond0 state DOWN group default qlen 1000 link/ether cc:ed:4d:d7:30:ed brd ff:ff:ff:ff:ff:ff altname eno6 altname enp99s0f1 4: eno7: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether cc:ed:4d:d7:30:ee brd ff:ff:ff:ff:ff:ff altname enp99s0f2 5381: veth39276c71@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 5e:d8:84:3c:50:aa brd ff:ff:ff:ff:ff:ff link-netns f52f9633-ae03-4051-920c-9ccbd76778f0 inet6 fe80::5cd8:84ff:fe3c:50aa/64 scope link valid_lft forever preferred_lft forever 261: vetha894393b@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 52:84:f0:03:a0:4f brd ff:ff:ff:ff:ff:ff link-netns c6917f07-4465-4353-bbae-504e96dd0ce2 inet6 fe80::5084:f0ff:fe03:a04f/64 scope link valid_lft forever preferred_lft forever 5: eno8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether cc:ed:4d:d7:30:ef brd ff:ff:ff:ff:ff:ff altname enp99s0f3 5382: veth7af7111c@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 2a:2b:4f:5e:62:25 brd ff:ff:ff:ff:ff:ff link-netns 585c3424-5821-439f-9b71-b1862e0ee23c inet6 fe80::282b:4fff:fe5e:6225/64 scope link valid_lft forever preferred_lft forever 262: vethd09b8ca3@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether f2:ca:26:a7:01:d3 brd ff:ff:ff:ff:ff:ff link-netns 0afce897-4082-433d-97a2-e3f6d4a5a597 inet6 fe80::f0ca:26ff:fea7:1d3/64 scope link valid_lft forever preferred_lft forever 6: mgmt0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond1 state UP group default qlen 1000 link/ether 9c:d5:7d:41:22:2e brd ff:ff:ff:ff:ff:ff altname eno1 altname enp59s0f0 5383: veth0377a183@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether ce:6e:5d:e4:c0:a0 brd ff:ff:ff:ff:ff:ff link-netns 51b366ec-c3bd-494f-bb67-b900d0444a66 inet6 fe80::cc6e:5dff:fee4:c0a0/64 scope link valid_lft forever preferred_lft forever 263: veth0e96ed70@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether be:8e:df:74:94:aa brd ff:ff:ff:ff:ff:ff link-netns 3913d2cc-ae00-46e8-8e3d-d3dee9ed2e35 inet6 fe80::bc8e:dfff:fe74:94aa/64 scope link valid_lft forever preferred_lft forever 7: mgmt1: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc mq master bond1 state DOWN group default qlen 1000 link/ether 9c:d5:7d:41:22:2f brd ff:ff:ff:ff:ff:ff altname eno2 altname enp59s0f1 5384: veth6bb84867@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 5a:90:74:22:ce:42 brd ff:ff:ff:ff:ff:ff link-netns 271899da-10a0-4e7a-9f58-760bd775823f inet6 fe80::5890:74ff:fe22:ce42/64 scope link valid_lft forever preferred_lft forever 264: veth839b8a6b@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 2e:15:dc:a5:76:d0 brd ff:ff:ff:ff:ff:ff link-netns 0dc7aef2-02ac-4f79-bdca-3a612ceca8ce inet6 fe80::2c15:dcff:fea5:76d0/64 scope link valid_lft forever preferred_lft forever 8: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether cc:ed:4d:d7:30:ec brd ff:ff:ff:ff:ff:ff inet6 fe80::ceed:4dff:fed7:30ec/64 scope link valid_lft forever preferred_lft forever 5385: vethfd6a5143@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 4e:7d:05:59:2c:f6 brd ff:ff:ff:ff:ff:ff link-netns bde0bd2f-97a4-4d45-ae52-e8a1e655752e inet6 fe80::4c7d:5ff:fe59:2cf6/64 scope link valid_lft forever preferred_lft forever 9: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 9c:d5:7d:41:22:2e brd ff:ff:ff:ff:ff:ff inet 10.71.168.201/24 brd 10.71.168.255 scope global bond1 valid_lft forever preferred_lft forever inet6 fe80::9ed5:7dff:fe41:222e/64 scope link valid_lft forever preferred_lft forever 5386: veth2c86447e@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 36:20:f5:a8:bf:54 brd ff:ff:ff:ff:ff:ff link-netns 2aa92ada-4186-46f1-9052-2733098d9a52 inet6 fe80::3420:f5ff:fea8:bf54/64 scope link valid_lft forever preferred_lft forever 10: bond0.100@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether cc:ed:4d:d7:30:ec brd ff:ff:ff:ff:ff:ff inet 192.168.200.1/24 brd 192.168.200.255 scope global bond0.100 valid_lft forever preferred_lft forever inet6 fe80::ceed:4dff:fed7:30ec/64 scope link valid_lft forever preferred_lft forever 5387: vetha3304378@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 82:37:fa:5a:8a:63 brd ff:ff:ff:ff:ff:ff link-netns 132bc7e8-bef7-4d20-aeeb-d4c1bdb95945 inet6 fe80::8037:faff:fe5a:8a63/64 scope link valid_lft forever preferred_lft forever 11: app-vnic: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UNKNOWN group default qlen 1000 link/ether ba:b2:16:db:28:53 brd ff:ff:ff:ff:ff:ff inet6 fe80::b8b2:16ff:fedb:2853/64 scope link valid_lft forever preferred_lft forever 5388: vethff0d0863@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether 9e:ea:dd:57:e4:20 brd ff:ff:ff:ff:ff:ff link-netns a9aa0d1b-4136-46cd-ba77-981902b9d1ae inet6 fe80::9cea:ddff:fe57:e420/64 scope link valid_lft forever preferred_lft forever 12: k8br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP group default qlen 1000 link/ether e0:05:c5:a8:f3:73 brd ff:ff:ff:ff:ff:ff inet 172.17.76.1/16 scope global k8br0 valid_lft forever preferred_lft forever inet6 fe80::e205:c5ff:fea8:f373/64 scope link valid_lft forever preferred_lft forever 5389: vethb71a9ff0@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master k8br0 state UP group default link/ether be:2b:b8:33:53:9a brd ff:ff:ff:ff:ff:ff link-netns 41e135c9-fd29-47bd-beb0-b648cd60cd7e inet6 fe80::bc2b:b8ff:fe33:539a/64 scope link valid_lft forever preferred_lft forever 13: k8br1: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether ea:c0:2a:2f:2b:d4 brd ff:ff:ff:ff:ff:ff inet 169.254.0.196/25 scope global k8br1 valid_lft forever preferred_lft forever inet6 fe80::e8c0:2aff:fe2f:2bd4/64 scope link valid_lft forever preferred_lft forever
----- snip -----
(以下は k8s 内で用いられる veth が多数のため省略)
ip address show <interface name> とすると対象の interface 情報のみが得られます。
rescue-user@jtac-se1:~$ ip address show bond0.100 10: bond0.100@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether cc:ed:4d:d7:30:ec brd ff:ff:ff:ff:ff:ff inet 192.168.200.1/24 brd 192.168.200.255 scope global bond0.100 valid_lft forever preferred_lft forever inet6 fe80::ceed:4dff:fed7:30ec/64 scope link valid_lft forever preferred_lft forever
ip address コマンドで得られた interface のうち、fabric0, fabric1, bond0, bond0.100 は ND node 間の通信や、ND と各 site との通信等に用いられる data network で使われるものです。
ip address コマンドの出力から、data network の IP address は bond0.100 interface に振られていることがわかります。
rescue-user@jtac-se1:~$ ip address show bond0.100 10: bond0.100@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether cc:ed:4d:d7:30:ec brd ff:ff:ff:ff:ff:ff inet 192.168.200.1/24 brd 192.168.200.255 scope global bond0.100 valid_lft forever preferred_lft forever inet6 fe80::ceed:4dff:fed7:30ec/64 scope link valid_lft forever preferred_lft forever
bond0 がどのように構成されているかは以下のように確認できます。
この例では、fabric0 が active slave であること、fabric1 は down 状態であること、などがわかります。
(active-backup mode なので、fabric0/fabric1 が両方 up していても、data network の packet は active slave のみを通ります)
rescue-user@jtac-se1:~$ cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v5.15.135stock-3 Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active) Primary Slave: None Currently Active Slave: fabric0 MII Status: up MII Polling Interval (ms): 60 Up Delay (ms): 0 Down Delay (ms): 0 Peer Notification Delay (ms): 0 Slave Interface: fabric1 MII Status: down Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: cc:ed:4d:d7:30:ed Slave queue ID: 0 Slave Interface: fabric0 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: cc:ed:4d:d7:30:ec Slave queue ID: 0
management network に用いられる interface は mgmt0, mgmt1, bond1 です。
ip address コマンドの出力から、management network の IP address は bond1 interface に振られていることがわかります。
rescue-user@jtac-se1:~$ ip address show bond1 9: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 9c:d5:7d:41:22:2e brd ff:ff:ff:ff:ff:ff inet 10.71.168.201/24 brd 10.71.168.255 scope global bond1 valid_lft forever preferred_lft forever inet6 fe80::9ed5:7dff:fe41:222e/64 scope link valid_lft forever preferred_lft forever
data network の bond0 の場合と同様に bond1 は mgmt0 および mgmt1 の active-backup bonding となっていて、以下のように確認できます。
この環境の場合、mgmt0 が active slave であり、management network の packet は全て同 interface を経由します。
rescue-user@jtac-se1:~$ cat /proc/net/bonding/bond1 Ethernet Channel Bonding Driver: v5.15.135stock-3 Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active) Primary Slave: None Currently Active Slave: mgmt0 MII Status: up MII Polling Interval (ms): 60 Up Delay (ms): 0 Down Delay (ms): 0 Peer Notification Delay (ms): 0 Slave Interface: mgmt1 MII Status: down Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 9c:d5:7d:41:22:2f Slave queue ID: 0 Slave Interface: mgmt0 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 9c:d5:7d:41:22:2e Slave queue ID: 0
ip neigh コマンドは IP address の neighbor、つまり IPv4 の ARP や IPv6 の ND (Neighbor Discovery) の状態を確認するためのものです。
単に ip neigh と実行すると、その ND node が持つ全ての neighbor 情報が出力されます。
rescue-user@jtac-se1:~$ ip neigh 172.17.76.242 dev k8br0 lladdr 52:94:3d:dc:00:c8 STALE 172.17.76.115 dev k8br0 lladdr c6:43:62:3a:c4:cf REACHABLE 172.17.76.236 dev k8br0 FAILED 10.71.168.202 dev bond1 lladdr 5c:71:0d:da:3a:22 STALE 172.17.76.109 dev k8br0 lladdr 4a:b9:ff:3b:55:e8 STALE 172.17.76.238 dev k8br0 FAILED 10.71.168.200 dev bond1 lladdr 84:b2:61:c2:49:a2 STALE 172.17.76.111 dev k8br0 lladdr ca:94:44:7e:7e:00 STALE 172.17.76.232 dev k8br0 lladdr 96:65:1b:df:07:4e STALE 172.17.76.105 dev k8br0 lladdr aa:0a:81:1d:3c:25 STALE 172.17.76.234 dev k8br0 lladdr 52:94:01:1e:8a:6c STALE 172.17.76.107 dev k8br0 lladdr 0a:e3:32:f5:89:0c STALE 172.17.76.228 dev k8br0 lladdr e6:bb:42:fc:b9:a2 STALE 172.17.76.101 dev k8br0 lladdr de:9b:3f:61:ba:ea STALE 172.17.76.230 dev k8br0 lladdr 62:b9:8b:7c:f9:2d STALE 172.17.76.103 dev k8br0 lladdr 62:80:ba:04:6a:b2 STALE 172.17.76.224 dev k8br0 lladdr 86:7f:32:cc:5c:04 REACHABLE 10.71.168.254 dev bond1 lladdr 00:fd:22:0a:ed:99 REACHABLE ----- snip -----
(出力多数のため以下省略)
ip neigh show <prefix> とすると該当の prefix で filter をかけることができます。
以下は data network の prefix 192.168.200/0/24 や management network の prefix 10.71.168.0/24 で絞った例です。
### data network rescue-user@jtac-se1:~$ ip neigh show 192.168.200/24 192.168.200.254 dev bond0.100 lladdr 8c:60:4f:87:ac:6f REACHABLE 192.168.200.12 dev bond0.100 lladdr 5c:71:0d:ee:68:48 STALE 192.168.200.10 dev bond0.100 lladdr 5c:71:0d:ee:68:48 STALE 192.168.200.8 dev bond0.100 lladdr 5c:71:0d:fb:e5:fc STALE 192.168.200.2 dev bond0.100 lladdr 5c:71:0d:ee:68:48 REACHABLE 192.168.200.9 dev bond0.100 lladdr 5c:71:0d:fb:e5:fc STALE 192.168.200.5 dev bond0.100 FAILED 192.168.200.3 dev bond0.100 lladdr 5c:71:0d:fb:e5:fc REACHABLE
### management network rescue-user@jtac-se1:~$ ip neigh show 10.71.168.0/24 10.71.168.202 dev bond1 lladdr 5c:71:0d:da:3a:22 STALE 10.71.168.200 dev bond1 lladdr 84:b2:61:c2:49:a2 STALE 10.71.168.254 dev bond1 lladdr 00:fd:22:0a:ed:99 REACHABLE 10.71.168.121 dev bond1 lladdr e8:eb:34:88:6b:bc STALE 10.71.168.97 dev bond1 FAILED 10.71.168.133 dev bond1 lladdr 00:62:ec:bf:7d:8e REACHABLE 10.71.168.171 dev bond1 lladdr 00:50:56:98:72:a6 STALE 10.71.168.203 dev bond1 lladdr 5c:71:0d:da:14:f2 STALE 10.71.168.253 dev bond1 lladdr c0:67:af:03:e7:f2 REACHABLE 10.71.168.120 dev bond1 lladdr e8:eb:34:88:6c:20 STALE 10.71.168.98 dev bond1 FAILED 10.71.168.96 dev bond1 lladdr f8:6b:d9:d0:b4:60 STALE 10.71.168.132 dev bond1 lladdr 00:62:ec:bf:67:80 REACHABLE 10.71.168.95 dev bond1 lladdr f8:6b:d9:d0:d6:80 STALE
各行の最右列にある status の意味はそれぞれ以下の通りです。
ND node 間で cluster がうまく組めない時など、L2/L3 network のトラブルシューティングが必要になった場合などにご利用ください。
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます