ICMP
ICMP(Internet Control Message Protocol)はエラー通知や問い合わせ情報を転送するためのプロトコル。
- ベストエフォート型のため通信状況やエラーの確認を行わないIPを補う役割を担い、IPとセットで用いられる。
- インターネット層のプロトコルであり、IPの上位に位置付けられます。
- ICMPメッセージはIPデータグラムによってカプセル化されます。

IPヘッダ | ICMPメッセージ |


ICMPメッセージは次の2種類に大別できます。
- エラー通知‥何かしらの理由でパケットが破棄されてしまった場合、Destination Unreachable(宛先到達不能)メッセージで送信者へ通達します。
- 問い合わせ‥特定のノードに対して問い合わせをしてネットワーク診断をします。ICMPを利用した代表的なツールにpingやtracerouteがあります。
ping
- pingは特定のノードと通信できるかを確認する際に用いられるコマンド。
- エコー要求(タイプ8)を発信し、対象のノードからエコー応答(タイプ0)が帰ってきたら、接続OKとする。
ARP
ARP(Address Resolution Protocol)はIPアドレスに基づくMACアドレス(レイヤ2アドレス)を調べるためのプロトコル。

IPアドレスからMACアドレスを調べる一連の処理をアドレス解決といいます。
ARPリクエスト(要求)
ARP要求はブロードキャストで送信するため、宛先MACアドレスは「ffff.ffff.ffff」を使用します。

ARPリプライ(応答)
ユニキャストで応答

ARPテーブル
何度もブロードキャストしないため、一回ARPリプライで取得したMACアドレスを記憶する