ネットワークの障害対応で使うコマンド一覧

障害対応(ネットワーク)のコースで、調べる・直すのに覚えるコマンドの一覧です。Cisco のコースで覚えるコマンド(show running-config・show ip route・show vlan brief・ping など)はCisco のコマンド辞典にあり、このコースでは最初から使えます。

show logging機器のログを読むLv1 で覚える

show logging
show logging | include UPDOWN

いつ・どのポートが落ちたか(%LINK-3-UPDOWN)、err-disabled(%PM-4-ERR_DISABLE)、ネイティブ VLAN やデュプレックスの不一致(%CDP-4-…)、OSPF の隣接の変化(%OSPF-5-ADJCHG)などが時刻つきで残ります。障害対応はまずここから。

show interfacesインターフェースの詳細とエラーの数Lv2 で覚える

show interfaces fa0/1
show interfaces g0/0

状態(up / down・err-disabled)、MTU、デュプレックスと速度、input errors・CRC・late collision などの数を表示します。CRC が増えるのはケーブルの傷やデュプレックスの不一致のしるし。

clear countersエラーの数を 0 に戻すLv3 で覚える

clear counters
clear counters fa0/1

エラーの数が昔のものか、今も増えているかを見分けるために、いったん 0 にしてから少し待って見直します。Last clearing of "show interface" counters に消した時刻からの時間が出ます。

show cdp neighbors detail隣の Cisco 機器の詳細Lv4 で覚える

show cdp neighbors detail

隣の機器の名前・IP アドレス・機種・自分のポートと相手のポート・ネイティブ VLAN・デュプレックスを表示します。ケーブルがどこに挿さっているかを確かめるのに使います。

lldp run / show lldp neighborsCisco 以外の機器も分かる LLDPLv5 で覚える

lldp run
show lldp neighbors

CDP は Cisco の機器同士だけ。Linux のサーバーなどは LLDP(lldpd)で名乗ります。IOS は最初は LLDP が止まっているので、lldp run で始めます。

ping … source / size / df-bit送信元や大きさを決めて pingLv6 で覚える

ping 10.1.1.1 source g0/1
ping 10.1.1.1 source 192.168.1.1
ping 10.1.1.1 size 1500 df-bit

ルーターの ping はふつう出口のアドレスから送るので、LAN からの戻りの経路が無くても通ってしまいます。source で LAN 側のアドレスから送ると、本当の利用者と同じ道で確かめられます。M は「分割が必要で DF が付いている」。

show ip arpIP アドレスと MAC アドレスの対応Lv7 で覚える

show ip arp
show arp

ルーターが覚えている IP と MAC の組。同じ IP を 2 台が名乗ると、ルーターのログに %IP-4-DUPADDR が出ます。

show interfaces description札と状態の一覧Lv9 で覚える

show interfaces description

インターフェースごとの状態(up・down・admin down)と札(description)を 1 行ずつ表示します。admin down は shutdown 中、down は相手やケーブルの問題。

show interfaces status err-disablederr-disabled の理由Lv10 で覚える

show interfaces status err-disabled

スイッチが自分でポートを止めた理由(psecure-violation・bpduguard など)を表示します。原因を取り除いてから shutdown → no shutdown で戻します。

errdisable recoveryerr-disabled から自動で戻すLv11 で覚える

errdisable recovery cause psecure-violation
errdisable recovery interval 60
show errdisable recovery

決めた理由で err-disabled になったポートを、決めた秒数がたつと自動で戻します。原因が残っていれば、また止まります。

speedポートの速度Lv12 で覚える

speed auto
speed 100

両端が違う速度に固定されていると、リンクが上がりません(notconnect)。ふつうは両端とも auto にします。

duplex全二重 / 半二重Lv13 で覚える

duplex auto
duplex full

片側だけ固定すると、オートネゴシエーションの相手は半二重(half)になり、デュプレックスの不一致になります。CRC や late collision が増え、通信がときどき落ちます。両端とも auto か、両端とも同じ固定にします。

show mac address-table addressMAC アドレスからポートを探すLv14 で覚える

show mac address-table address 0011.2233.4455
show mac address-table interface fa0/1

その MAC アドレスの端末がどのポートの先にいるかを表示します。トランクのポートに出たら、その先のスイッチで続けて探します。

show interfaces switchportスイッチポートの設定と実際Lv17 で覚える

show interfaces fa0/1 switchport

Administrative Mode(設定)と Operational Mode(実際)、Access Mode VLAN、ネイティブ VLAN、トランクで通す VLAN を表示します。VLAN が無いと (Inactive)。

show ip route <宛先>その宛先に使う経路Lv27 で覚える

show ip route 10.1.1.5

最長一致で選ばれた経路と、どこから覚えたか(connected・static・ospf)、AD とメトリック、ネクストホップを表示します。

show ip ospf interfaceOSPF のインターフェースの詳細Lv29 で覚える

show ip ospf interface g0/0
show ip ospf interface brief
show ip ospf

エリア・コスト・ネットワークの種類・Hello と Dead のタイマー・passive か・隣接の数を表示します。隣接しないときは、両端のここを見比べます。

ip ospf hello-interval / dead-intervalOSPF の合図の間隔Lv30 で覚える

ip ospf hello-interval 10
no ip ospf hello-interval
ip ospf dead-interval 40

Hello と Dead の間隔が両端で違うと、隣接しません。hello だけ変えると dead はその 4 倍になります。

ip mtuインターフェースの MTULv33 で覚える

ip mtu 1500
no ip mtu

1 回に送れるパケットの大きさ。OSPF は両端の MTU が違うと EXSTART で止まります。

clear ip ospf processOSPF をやり直すLv34 で覚える

clear ip ospf process

router-id を変えても、OSPF が動いている間は前のままです。clear ip ospf process(確認に yes)でやり直すと効きます。隣接はいったん切れます。

show ip interfaceインターフェースの IP の設定Lv36 で覚える

show ip interface g0/0

ACL(Inbound / Outgoing access list)、helper address、NAT の inside / outside、MTU などを表示します。

show ip nat statisticsNAT の設定と数Lv40 で覚える

show ip nat statistics

inside と outside のインターフェース、変換の数、どの ACL で変換するかを表示します。

show ip dhcp poolDHCP プールの使われ方Lv45 で覚える

show ip dhcp pool

プールのネットワーク、全体・貸した・除外したアドレスの数、次に貸すアドレスを表示します。

show ntp status / associations時刻の同期の状態Lv49 で覚える

show ntp status
show ntp associations

Clock is synchronized なら同期できています。unsynchronized なら、サーバーのアドレス・経路・ACL(UDP 123)を確かめます。

show ip sshSSH の状態Lv50 で覚える

show ip ssh

SSH Enabled / Disabled とバージョン。Disabled なら RSA の鍵がありません(ip domain-name を決めてから crypto key generate rsa)。

ip addr(Linux)サーバーのアドレスLv53 で覚える

ip addr
ip addr show dev eth0
ip addr add 10.0.10.20/24 dev eth0
ip addr del 10.0.10.20/16 dev eth0

NIC の状態(UP・LOWER_UP・NO-CARRIER)とアドレス・プレフィックスを表示・変更します。

ip route(Linux)サーバーの経路Lv54 で覚える

ip route
ip route get 10.0.50.5
ip route add default via 10.0.10.1
ip route add 10.0.50.0/24 via 10.0.20.1

default がデフォルトゲートウェイ。ip route get で、その宛先にどの NIC から出るかが分かります。

ip link(Linux)NIC と VLANLv55 で覚える

ip link
ip -d link show eth0.20
ip link add link eth0 name eth0.20 type vlan id 20
ip link set eth0.20 up
ip link set eth0 mtu 1500
ip -s link show eth0

NIC の状態・MTU を見て変えます。スイッチのポートがトランクなら、VLAN のサブインターフェースを作ります。-s でエラーの数。

ip neigh(Linux)サーバーの ARP の表Lv56 で覚える

ip neigh

隣の機器の IP と MAC の組。FAILED は答えが無い、思っていない MAC ならアドレスの重複を疑います。

tracepath(Linux)経路と通れる大きさLv57 で覚える

tracepath 10.0.20.11

経路を 1 つずつたどり、途中で通れるパケットの大きさ(pmtu)を調べます。

tcpdump(Linux)NIC を通るパケットを見るLv58 で覚える

tcpdump -i eth0 -nn icmp
tcpdump -i eth1 -nn -c 4 port 80

要求が届いているか、応答をどの NIC から返しているかが分かります。-nn は名前を引かずに番号で表示、-c は数。

ethtool(Linux)NIC の速度とデュプレックスLv59 で覚える

ethtool eth0
ethtool -s eth0 autoneg on

Speed・Duplex・Auto-negotiation・Link detected を表示します。スイッチ側だけを固定すると、サーバーは Half になります。

cat /proc/net/bonding/bond0(Linux)ボンディングの状態Lv65 で覚える

cat /proc/net/bonding/bond0
ip link add bond0 type bond mode active-backup miimon 100
ip link set eth0 master bond0
ip link set bond0 type bond miimon 100

モード・MII Polling Interval(miimon。0 は見張らない)・Currently Active Slave・NIC ごとの MII Status・802.3ad の相手(Partner Mac Address)を表示します。モードを変えるには、束を止めて NIC を外してから。