Linuxコマンド辞典 arpコマンド(ネットワーク)
カーネルのARPキャッシュを操作する「arp」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
概要・使用方法
書式
$ arp [オプション] [ホスト名]
Ethernetでリモートホストと通信を行う場合、相手のホスト名からIPアドレスの変換はDNSやhostsファイルで行い、さらに低層階ではIPアドレスとMACアドレスの関連を調べて目的ホストへパケットを届けます。カーネルはIPアドレスとMACアドレスのリストをARPキャッシュとして蓄えます。arpはこのARPキャッシュを操作します。Linuxカーネルでは、/proc/net/arpにarpキャッシュが記述されています。arpコマンドはroot権限が必要となります。
最近のディストリビューションではarpコマンドは非推奨となっています。代わりにipコマンドを使用することを推奨しています。
arpコマンドの主な表示項目
項目 | 説明 |
---|---|
Address | IPアドレス/ホスト名 |
HWtype | デバイスのタイプ(ether:イーサネット) |
HWaddress | MACアドレス |
Flags | フラグ(C:通常のエントリ、M:永続的なエントリ) |
Iface | ネットワークインターフェース名 |
オプション
-n –numeric | ホスト名の名前解決やポート名/ユーザ名の解決を行わず、数値で表示する |
-a [ホスト名] –display [ホスト名] | ホスト名を指定した場合はそのホストのエントリを表示する。指定がない場合は持っているARPキャッシュを表示する |
-d ホスト名 –delete ホスト名 | 指定したホストをARPキャッシュから削除する |
-f ファイル名 –file ファイル名 | ファイルを指定してARPテーブルに追加する。ファイルが指定されなければ/etc/ethersを利用する |
-i インターフェース名 –device インターフェース名 | 指定したインターフェースのARPエントリを表示する |
-s ホスト名 MACアドレス –set ホスト名 MACアドレス | 指定したホストをしてしたMACアドレスでARPエントリを作成する |
-e | Linuxスタイルで表示する(デフォルト) |
現在のARPキャッシュ状況を表示する
$ cat /proc/net/arp
実行結果
[root@centos ~]# cat /proc/net/arp
IP address HW type Flags HW address Mask Device
192.168.0.29 0x1 0x2 d4:5d:64:54:6e:70 * eth0
192.168.0.1 0x1 0x2 f8:b7:97:23:6b:94 * eth0
[root@centos ~]#
arpキャッシュを削除する
$ arp -d IPアドレス
実行結果
[root@centos ~]# arp -d 192.168.0.29
arpキャッシュを作成する
$ arp -s IPアドレス MACアドレス
実行結果
[root@centos ~]# arp -s 192.168.0.29 00:00:00:00:00:00