Ubuntuでは、isc-dhcp-serverを使用して各サブネットにホスト宣言を記述し、各ネットワークインターフェイスの各固定アドレスが正常にリースされています。このDHCPサーバーには2つのネットワークカードが接続されています。
しかし、この警告を修正するにはどうすればよいですか?
dhcpd [11328]:警告:ホスト宣言はグローバルです。それらは、宣言したスコープに限定されません。
同じ警告メッセージに関するこの投稿 回答ホストの宣言がサブネット定義の範囲外です。私の場合、2枚のカードが関係している場合はそうはいきません。
ホスト定義は常にグローバルです。
つまり、ルーターには3つのネットワークがあります。 「LAN」10.0.0.0/24、「ゲスト」10.100.100.0/24、「IoT」10.100.200.0/24
ぼくの dhcpd.conf
には次のような設定があります
subnet 10.0.0.0 netmask 255.255.255.0 {
authoritative;
option routers 10.0.0.1;
blah;
}
subnet 10.100.100.0 netmask 255.255.255.0 {
authoritative;
option routers 10.100.100.1;
blah;
}
subnet 10.100.200.0 netmask 255.255.255.0 {
authoritative;
option routers 10.100.200.1;
blah;
}
Host machine1 {
hardware ethernet xx:xx:xx:xx:xx:xx;
fixed-address 10.0.0.13;
option Host-name "machine1";
}
Host machine2 {
hardware ethernet yy:yy:yy:yy:yy:yy;
fixed-address 10.100.200.15;
option Host-name "machine2";
}
DHCPdは正しくmachine1
はLAN上にあり、machine2
はIoTサブネット上にあり、そのサブネットに関連する正しい構成(ネットマスク、デフォルトルート、DNSサーバーなど)を送信します。
複数のインターフェースに接続できるマシンがあり、それらに異なるアドレスを取得させたい場合は、ホストを複数回リストすることができます。たとえば、私の携帯電話:
Host s8 {
hardware ethernet aa:aa:aa:aa:aa:aa;
fixed-address 10.0.0.34;
option Host-name "s8";
}
Host s8-guest {
hardware ethernet aa:aa:aa:aa:aa:aa;
fixed-address 10.100.100.9;
option Host-name "s8-guest";
}
これで、使用しているネットワークに応じて、異なるアドレスが取得されます。
そのネットワークに静的エントリがない場合は、動的アドレスを取得します。サブネットに空きアドレスがない場合、アドレスは割り当てられません。