ネットワークの設定は済んでいて、インターフェースもUPしているのに、
pingが届かないことがたまにある。
その場合の1つの原因として、MACアドレスの不一致が考えられる。
これは、対象の機器が交換されたりした場合に発生する。
対象の機器が交換されたことでMACアドレスは新しいものに変更になっているのに、
Solaris側が古いMACアドレスの情報を保持していて、
古いMACアドレス宛にpingを打ってしまうためである。
このような場合は、ARPテーブル(MACアドレスとIPアドレスの対応表)をクリアすれば良い。
1.1.1.1にpingが届かない
# ping 1.1.1.1 no answer from 1.1.1.1
ARPテーブルを見てみると
「1.1.1.1」のMACアドレスは「aa:aa:aa:aa:aa:aa」であると認識されている
# arp -a Net to Media Table: IPv4 Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- hme0 1.1.1.1 255.255.255.255 aa:aa:aa:aa:aa:aa hme0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00
これは古い方の「1.1.1.1」の機器のMACアドレス
そこで、いったんARPテーブルから「1.1.1.1」の登録を削除する
確認すると
# arp -d 1.1.1.1 1.1.1.1 (1.1.1.1) deleted
「1.1.1.1」の登録がなくなったので、改めてpingを打つ
# arp -a Net to Media Table: IPv4 Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- hme0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00
pingが届くようになった
# ping 1.1.1.1 1.1.1.1 is alive
再度ARPテーブルの登録を確認
「1.1.1.1」のMACアドレスが「bb:bb:bb:bb:bb:bb」として登録されている
# arp -a Net to Media Table: IPv4 Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- ----- --------------- hme0 1.1.1.1 255.255.255.255 bb:bb:bb:bb:bb:bb hme0 224.0.0.0 240.0.0.0 SM 01:00:5e:00:00:00