書式
arp [-vn] [-H type] [-i if] -a [hostname]arp [-v] [-i if] -d hostname [pub]
arp [-v] [-H type] [-i if] -s hostname hw_addr [temp]
arp [-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub
arp [-v] [-H type] [-i if] -Ds hostname ifa [netmask nm] pub
arp [-vnD] [-H type] [-i if] -f [filename]
説明
arp は、カーネルの ARP キャッシュをさまざまな方法で操作する。 アドレス・マッピングのエントリーをクリアしたり、 手作業でエントリーを設定したりするのが、主要なオプションである。 デバッグに arp を利用して、ARP キャッシュを完全にダンプすることも可能である。オプション
- -v, --verbose
- 何が起こっているかを詳しくユーザーに知らせる。
- -n, --numeric
- このオプションを指定すると、ホスト名、ポート名、ユーザー名を解決せずに 番号のまま表示する。
- -H type, --hw-type type
- ARP キャッシュを設定したり読み出したりするとき、 エントリーのどのクラスを対象にして欲しいかを arp に指定する。 このパラメータは、デフォルトでは ether (つまり、IEEE 802.3 10Mbps Ethernet に対応するハードウェア・コード 0x01) に設定されている。 ほかに、たとえば ARCnet (arcnet), PROnet (pronet), AX.25 (ax25), NET/ROM (netrom) などのネットワーク技術が指定できる。
- -a [hostname], --display [hostname]
- 指定したホストのエントリーを表示する。 もし hostname が指定されていない場合は すべての エントリーが表示される。
- -d hostname, --delete hostname
- 指定されたホストのエントリーすべてを削除する。 例えば、これは指定されたホストがダウンしたときなどに使うことができる。
- -D, --use-device
- インターフェース ifa のハードウェアアドレスを使う。
- -i If, --device If
-
インターフェースを選択する。
ARP キャッシュをダンプする際、
指定されたインターフェースに合致するエントリーのみが出力される。
permanent ARP エントリー、または
temp
ARP エントリーを設定する場合には、このインターフェースは
そのエントリーと関連付けられる。
このオプションを使わないと、
カーネルは経路テーブルからデバイスを推量する。
pub
エントリーの場合は、ここに指定するインターフェースは
ARP 要求に答えてくれるインターフェースである。
注: これは IP データグラムの経路制御を行なうインターフェースとは、 異なっていなければならない。 - -s hostname hw_addr, --set hostname hw_addr
-
ARP アドレスのマッピング・エントリーを手作業で設定する。
ホスト
hostname
に対するハードウェア・アドレスは
hw_addr
に設定される。ハードウェア・アドレスの書式は、
ハードウェア・クラスによって異なるが、
ほとんどのクラスでは普通の書き方が使える。
例えば、ethernet のクラスでは 16 進数 6 バイトであり、
コロンで分割されている。
代理 ARP のエントリーを追加するとき (つまり、
pub
フラグを指定したとき) は、
netmask
を指定すると、サブネット全体の代理 ARP が設定される。
これはよい風習ではないが、
有効な時もあったので古いカーネルではサポートしていた。
temp
フラグを指定しなければ、設定したエントリーは永続的となり、
ARP キャッシュにそのまま残される。
注: カーネル 2.2.0 から、サブネット全体に ARP エントリーをセットすることは 出来なくなっている。 その代わり、Linux では、経路が存在しフォワードされていれば、 自動的に代理 arp される。 詳細は arp(7) を参照すること。 - -f filename, --file filename
-
-s
オプションと似ているが、このオプションの場合、アドレスの情報がファイル
filename
から与えられる。
これは、多数のホストに対して
ARP エントリーを設定しなければならない場合に使われる。
データファイルの名前には
/etc/ethers
がよく使われるが、これは公式のものではない。
filename が指定されない場合、
/etc/ethers
がデフォルトとして使われる。
ファイルの書式は簡単である。 ホスト名とハードウェア・アドレスはASCII テキストのみであり、 ホスト名とハードウェア・アドレスの間は空白で区切られる。 加えて、 pub, temp, netmask フラグを使うことができる。
hostname はいずれも、ピリオドで区切られた 10 進表記の IP address でもよい。
互換性のための特別なケースとして、 ホスト名とハードウェア・アドレスの順番を入れ換えることができる。
ARP キャッシュの完全なエントリーには、 C フラグがつけられる。また、永続的 (permanent) なエントリーには M フラグが、公開 (pub) エントリーには P フラグがつけられる。
ファイル
/proc/net/arp/etc/networks
/etc/hosts
/etc/ethers
著者
Fred N. van Kempen, <[email protected]> また、net-tools の管理者である Bernd Eckenfels <[email protected]> が多数の改良を行なった。