ネットワークトラブルの調査をしていると、「IPアドレスは正しい」「ルーティングも問題ない」のに通信できないケースに遭遇することがあります。
そのようなとき、原因として意外と多いのがARP(Address Resolution Protocol)に関する問題です。
ARPは同一ネットワーク内で通信を行うための基本的な仕組みですが、ARPテーブルの不整合や学習の問題が発生すると、パケットが正しい機器へ届かなくなります。
実際の運用現場でも、次のようなトラブルの原因がARPだったというケースは珍しくありません。
- 同一セグメントなのに通信できない
- 片方向だけ通信できる
- Pingが不安定
- 特定の端末だけ通信できない
この記事では、ネットワーク運用や障害対応の現場でよく発生するARP関連トラブルについて、
- ARPの基本的な仕組み
- ARPが原因で通信できなくなるケース
- 確認すべきポイント
- 実務で使う確認コマンド
- トラブル時の対処方法
を初心者にもわかるように解説します。
ARPとは?IPアドレスとMACアドレスを対応付ける仕組み
ARP(Address Resolution Protocol)は、IPアドレスからMACアドレスを取得するためのプロトコルです。
LAN内の通信では、IPアドレスだけでは通信できません。実際にフレームを送信する際には、宛先のMACアドレスが必要になります。
例えば次のような通信を考えてみます。
PC1
IP: 192.168.1.10
PC2
IP: 192.168.1.20
PC1がPC2へ通信する場合、次の流れでARPが動作します。
「192.168.1.20のMACアドレスは誰?」というARPリクエストをネットワークに送信します。
PC2がそれに応答し、自分のMACアドレスを通知します。この情報はARPテーブルに保存され、その後の通信に利用されます。
ARPが原因で通信できないよくある症状
ARP関連のトラブルでは、次のような症状がよく見られます。
- 同一ネットワークなのにPingが通らない
- 特定の端末だけ通信できない
- 一度通信すると直る
- 数分後にまた通信できなくなる
- 片方向通信になる
ARPテーブルの情報が古かったり誤っている場合、通信先のMACアドレスが間違ってしまうため、パケットが別の機器に送られてしまうことがあります。
ARPが原因で通信できなくなる主なケース
ARPテーブルの情報が古い
ARPテーブルには、IPアドレスとMACアドレスの対応情報がキャッシュとして保存されています。
しかし、ネットワーク構成が変わった場合などに、古い情報が残ることがあります。
例えば次のようなケースです。
- サーバ交換
- 仮想マシン移行
- IPアドレスの再利用
MACアドレスが変わったのにARPキャッシュが更新されていないと、通信できなくなることがあります。
IPアドレスの重複
IPアドレスが重複している場合、ARPの応答が競合することがあります。
例えば、同じIPアドレスを持つ端末が2台存在すると、ARPリクエストに対して両方が応答する可能性があります。
その結果、通信先MACアドレスが不安定になり、通信障害が発生します。
ARPスプーフィング
セキュリティ問題として知られるARPスプーフィングも通信障害の原因になることがあります。
これは攻撃者が偽のARP応答を送信し、通信を別の機器に誘導する攻撃です。
企業ネットワークではセキュリティ機能によって防御されることが多いですが、トラブル時の原因として疑うこともあります。
ネットワーク機器のARPテーブル不整合
ルータやL3スイッチでもARPテーブルを保持しています。
この情報が不整合を起こすと、パケット転送が正常に行われなくなる場合があります。
長時間稼働している機器では、ARPキャッシュの問題が発生することもあります。
ARPトラブル時の確認方法
通信トラブルの調査では、ARPテーブルを確認することで原因が見えてくることがあります。
Windowsでの確認
arp -a
このコマンドでARPテーブルを表示できます。
IPアドレスとMACアドレスの対応が確認できます。
Linuxでの確認
ip neigh
LinuxではARPテーブルは近隣キャッシュとして管理されています。
Cisco機器での確認
show ip arp
ルータやL3スイッチではこのコマンドでARP情報を確認できます。
IPアドレスとMACアドレスが正しく対応しているかをチェックします。
ARPキャッシュをクリアする方法
ARPキャッシュの問題が疑われる場合、キャッシュを削除すると改善することがあります。
Windows
arp -d *
Linux
ip -s -s neigh flush all
Cisco機器
clear arp-cache
キャッシュ削除後に通信を行うと、ARPが再学習されます。
ARPトラブルを防ぐためのポイント
ARP関連トラブルを防ぐためには、日頃のネットワーク管理も重要です。
- IPアドレス管理を徹底する
- DHCP管理を適切に行う
- ARPテーブルの状態を確認する
- ネットワーク機器を定期的に再起動する
特にIPアドレス重複はARPトラブルの代表的な原因なので、IPアドレス管理は重要です。
実際の運用現場でも、「通信できない原因を調査したらIPアドレス重複だった」というケースはよくあります。
まとめ
ARPはLAN通信において非常に重要な役割を持つプロトコルです。
そのため、ARPテーブルの問題が発生すると、ネットワーク通信に直接影響します。
通信トラブルが発生した場合は、次のポイントを確認しましょう。
- ARPテーブルの確認
- IPアドレス重複の有無
- MACアドレスの一致確認
- ARPキャッシュのクリア
ネットワーク障害の調査では、ルーティングやVLANだけでなくARPの状態も確認することが重要です。
ARPを理解しておくと、LANトラブルの原因特定がスムーズになります。
