DHCP(Gratuitous ARP)

ここでは、Gratuitous ARPとDHCPとの関係を説明して行きます。

 Gratuitous ARPはARPパケットの一種で、主にホストIPアドレスが割り当てられた際に、他のホストへ既に同じIPアドレスが割り当てられていないかどうかを確認する為に使用されます。

 通常のARPパケットと異なり、Target Protocol Addressフィールドには、自分に割り当てられたもの、もしくは割り当てられようとしているものが設定されます。

つまり、Gratuitous ARPとは、自身のIPアドレスをリクエストするためのARPパケットなのです。

 本来のARPは、IPアドレスに対応するMACアドレスを解決するために使用します。自分のIPアドレスをリクエストすることに何の意味があるのでしょうか?

Gratuitousとは、「無料の;好意からの;無償の;必要のない」という意味があります。

本当に無意味なんでしょうか?

1つ目の用途として、設定ミス等によるIPアドレスの重複の検出に使用されます。

 本来であれば、自分自身のIPアドレスに対するARPリクエストを送信したところで、他の端末から返事なんてあるはずがありません。

ところが、返事があった場合はどうでしょうか?

既にそのIPアドレスが他の端末で使用されていることが分かります。

 この仕組みで、同一ネットワーク内において、IPアドレスが重複しているかどうかをチェックすることができるようになっているのです。

 Windows 2000 ベースのコンピュータでは、起動すると、ネットワーク内で、IPアドレスの重複が起こらないように、そのコンピュータのIPアドレスを含んだパケットがブロードキャストされるようになっています。

2つ目の用途として、VRRPでもGratuitous ARPが使用されます。

 これは、IPアド