問11. 自分の所属するLANセグメントで現在稼働しているマシンのIPアドレスとMACアドレスの対応表を作りたい。そこで、LANセグメントにつながっている全マシンにpingを打った。そのあとにどんなコマンドを入力すると、全マシンのIPアドレスとMACアドレス対応表を表示させられるか。以下の選択肢から一つ選びなさい。なお、操作しているパソコンはWindowsパソコンとする。

[選択肢]
a. route print
b. arp -a
c. arp -?
d. netstat -r
e. netstat -?

[解説]
 正解は,選択肢bの「arp -a」です。

 ネットワーク管理者にとって,各種アドレスの管理は大切な仕事です。例えば,ユーザーが使っているパソコンのMACアドレスとIPアドレスの対応表を記した管理台帳を作っておくと,トラブル発生時やネットワークの拡張計画などに役立ちます。

 IPアドレスとMACアドレスの対応表は,ARPコマンドによって表示させることができます。コマンドは,選択肢bの「arp -a」です。

 パソコンがMACアドレスとIPアドレスの対応表を作るのには理由があります。それは,パソコンがIPパケットを送る際には,あて先IPアドレスに対応したMACアドレスを調べて送るからです。この調べるための作業に,ARP(address resolution protocol)というプロトコルを使います。

 パソコンは,一度ARPで調べたIPアドレスとMACアドレスの対応情報は,ARPキャッシュに一定時間(WinowsXP/2000は2分間)保存しておきます。arp -aコマンドは,このARPキャッシュに書かれた内容を表示させるコマンドです。そのため,LAN上で稼働しているすべての機器と通信したあとにarp -aコマンドを実行すれば,LAN上のすべての機器のIPアドレスとMACアドレスの対応表が作れるわけです。

arp -aコマンド実行時の表示

 なお,選択肢aのroute printと選択肢rのnetstat -rは,パソコンの経路表(ルーティング・テーブル)を表示させるコマンドです。選択肢cのarp -?は,ARPコマンドのヘルプ・メッセージを表示させるコマンドです。選択肢eのnetstat -?は,netstatコマンドのヘルプ・メッセージを表示させるコマンドです。