- Address Resolution Protocol
- レイヤ 2 用のハードウェア アドレスと、レイヤ 3 用のプロトコル アドレスの名前解決を行うためのプロトコル
- 通常は MAC アドレス (Ethnetnet) と、IP アドレス (IP) の名前解決に利用される
- 本ページでは、Ethnetnet + IP を使用する前提で記述する
ARP [Address Resolution Protocol]†[edit]
- IP アドレスから MAC アドレスを調べる
- イーサネット フレームを送信する際に使用
Gratuitous ARP†[edit]
- ARP パケットの一種
- ARP リクエストの際に、自身の IP アドレスを宛先 IP アドレスにセットする
- 自分が使おうとしている IP アドレスを使用しているホストが他にないかチェックするために使われる
- HSRP、VRRP などで ARP キャッシュを更新する際も使われる
RARP [Reverse Address Resolution Protocol]†[edit]
- MAC アドレスから IP アドレスを調べる
- DHCP や BOOTP で IP アドレスを要求する場合に使用
| 0~3 bit | 4~7 bit | 8~11 bit | 12~15 bit | 16~19 bit | 20~23 bit | 24~27 bit | 28~31 bit |
~4 byte | ハードウェア タイプ | プロトコル タイプ |
~8 byte | ハードウェア長 | プロトコル長 | オペレーション |
~x byte | 送信元ハードウェア アドレス |
~x byte | 送信元プロトコル アドレス |
~x byte | 宛先ハードウェア アドレス |
~x byte | 宛先プロトコル アドレス |
~46 byte | パディング |
- ハードウェア タイプ
- レイヤ 2 プロトコル
- Ethernet は 0001
- IANA - Address Resolution Protocol (ARP) Parameters
- プロトコル タイプ
- ハードウェア長
- ハードウェア アドレスの長さ
- MAC アドレスは 6 byte (48 bit) なので 6
- プロトコル長
- プロトコル アドレスの長さ
- IP アドレスは 4 byte (32 bit) なので 4
- オペレーション
- 送信元ハードウェア アドレス
- 送信ホストの MAC アドレス
- 可変長だが、Ethrnet の場合は 6 byte (48 bit)
- 送信元プロトコル アドレス
- 送信ホストの IP アドレス
- 可変長だが、IP の場合は 4 byte (32 bit)
- 宛先ハードウェア アドレス
- 宛先ホストの MAC アドレス
- ARP リクエストの場合の定義は明確でない
- Ethrnet ヘッダの宛先アドレスがブロードキャストになる (ffff.ffff.ffff) ため
- 可変長だが、Ethrnet の場合は 6 byte (48 bit)
- 宛先プロトコル アドレス
- 宛先ホストの IP アドレス
- ARP リクエストの場合、知りたい相手の IP アドレスが入る
- 可変長だが、IP の場合は 4 byte (32 bit)
- パディング
- 以上の合計は 28 byte だが、Ethernet フレームは最短 46 byte
- 長さを合わせるために無意味なデータを付与する
#adsense(728x90)
Last-modified: 2020-07-08 (水) 18:10:14