
Windows XP では、DHCP クライアントが DHCP サーバーから IPv4 アドレスを受信できなかったとき、ホストは 169.254.0.0/16 で IPv4 リンクローカルアドレスを割り当てられました。しかし、Linuxホストが同じように動作するのを見たことはありません。これはDHCPクライアントの実装によって異なりますか? ISC dhclientバージョン4.1を使用しています。それとも、LinuxはいつIPv4リンクローカルアドレスを使用しますか?
答え1
(申し訳ありません。まだコメントできません。ここにあります。)
このような場合は、dhclientで「リース」オプションを設定する必要があると思います。
望むより:dhクライアント(8)
dhclientが最初に呼び出されたとき(通常は最初のシステム起動中)、DHCPサーバーが利用できない場合、以前のリースは維持されます。この場合、有効期限が切れていないdhclient.leasesファイルの以前のリースがテストされ有効であることが確認されると、有効期限が切れるか、DHCPサーバーが利用可能になるまで使用されます。
時々、DHCPサーバーを持たないネットワークにアクセスする必要があるモバイルホストは、そのネットワークの固定アドレスのリースを事前にロードすることがあります。 DHCPサーバーに接続しようとする試みがすべて失敗すると、dhclientは静的リースを検証し、成功すると再起動するまでリースを使用します。
答え2
dhcp.confで静的リースを使用してこの機能を偽にすることができますが、他のシステムがすでにIPアドレスを使用している場合、その機能は正しく機能しません。通常、リンクローカルアドレスが選択されると、ホストはそのアドレスを使用している人がいないことを確認するためにテストを実行し、競合が検出されると、使用可能なアドレスが見つかるまで別のアドレスを選択しようとします。
Linuxでこの機能を実装するには、avahi-autoipdパッケージを確認する必要があります。 dhcp クライアントの一部ではありません。