ARP(4) FreeBSD カーネルインタフェースマニュアル ARP(4)
名称
arp − アドレス解決プロトコル |
書式
pseudo-device ether |
解説
アドレス解決プロトコル (ARP) はインターネットホストアドレスと 10Mb/s の イーサネットアドレスを動的にマッピングするプロトコルです。これは全ての 10Mb/s イーサネットインタフェースドライバで利用されています。このプロトコ ルはインターネットプロトコルや 10Mb/s イーサネットに限定されているわけで はありませんが、現在の実装ではこの組み合わせしかサポートしていません。 ARP はインターネットアドレスとイーサネットアドレスのマッピング (対応関係) をキャッシュします。キャッシュにないアドレスのマッピングをインタフェース が要求したとき、 ARP は、そのマッピングを要求するメッセージをキューに入 れ、そのアドレスマッピングを要求するメッセージを接続されたネットワークに 対してブロードキャストします。応答があった場合、新たにマッピングされたア ドレスをキャッシュに格納し、キューに入れられていたメッセージを送信しま す。 ARP はマッピング要求の応答を待つ間、高々 1 つのパケットをキューに保 持します。すなわち、1 番最近 ‘‘送信した’’ パケットのみを保持します。もし 目的のホストが数回の要求にも応じない場合、そのホストは短期間 (通常 20 秒) ダウンしていると考えられ、その間の転送要求に対しエラーが返ります。そのエ ラーは、宛先のホストが応じない場合は EHOSTDOWN 、ルータが応じない場合は EHOSTUNREACH となります。 ARP キャッシュは、動的に生成されたホスト経路として、システムのルーティン グテーブルに収められます。直接接続されているイーサネットネットワークへの 経路は ‘‘複製’’ された経路 ( RTF_CLONING フラグが立った経路) として格納さ れ、そのネットワーク上の個々のホストへの経路は必要に応じて生成されます。 これらの経路は定期的にタイムアウトします (通常その経路が有効になってから 20 分でタイムアウトし、これらのエントリは使われない限り有効にはなりませ ん)。応答のないホストへのエントリは ‘‘拒否’’ された経路 ( RTF_REJECT フラ グが立てられた経路) になります。 ARP エントリは arp(8) ユーティリティにより追加や削除、変更されることがあ ります。手作業で追加されたエントリには一時的なものも永続的なものもありえ ますし、 ‘‘公表’’ されることもあります。公表された場合、システムは ARP リ クエストに対し、自分がそのリクエストの目的ホストであるかのように応答しま す。 以前 ARP は、トレーラカプセル化の使用を交渉するために使われていました。こ れはもはやサポートされていません。 ARP は自分の振りをするホスト (つまり自分のアドレスに対する ARP 要求に応答 するホスト) を受動的に監視します。 |
診断
arp: %x:%x:%x:%x:%x:%x is using my IP address %d.%d.%d.%d!: ARP はローカ ルネットワークに、違うイーサネットアドレスなのにもかかわらず自分と同じイ ンターネットアドレスに対するマッピング要求に応答する別のホストを見つけま した。一般的に、2 つのホストが同じインターネットアドレスを使おうとしてい ることを示しています。 arp: ether address is broadcast for IP address %d.%d.%d.%d!: ARP はあるホ ストについての情報を要求し、そのホストのイーサネットアドレスがイーサネッ トのブロードキャストアドレスであることを示す応答を受け取りました。これは デバイスの設定ミスか、壊れていることを示しています。 arp: %d.%d.%d.%d moved from %x:%x:%x:%x:%x:%x to %x:%x:%x:%x:%x:%x: ARP は参照したホストのイーサネットアドレスをキャッシュしていますが、そのホス トが新しいアドレスを持っていることを示す応答を受け取りました。これは通常 ホストのハードウェアアドレスが変わったり、モバイル端末がローカルのサブ ネットに繋がれたか切り放されたときに起こります。またこれは代理 ARP の問題 であることもあります。 arpresolve: can’t allocate llinfo for %d.%d.%d.%d: 参照しているホストへの 経路は ARP が要求されたデバイスを指しています。しかし ARP はそのホストの MAC アドレスを格納するルーティングテーブルのエントリを割り当てることがで きませんでした。これは通常ルーティングテーブルの設定ミスを示しています。 また、カーネルがメモリを割り当てられなかった時にも起ります。 |
関連項目
Plummer, D., " RFC826", An Ethernet Address Resolution Protocol. Leffler, S.J. and Karels, M.J., " RFC893", TrailerEncapsulations. 4th Berkeley Distribution April 18, 1994 4th Berkeley Distribution