ISC-DHCP-Server は DNS サーバーから無効な動的 DNS 名を削除します。

ISC-DHCP-Server は DNS サーバーから無効な動的 DNS 名を削除します。

私は両方のゲストvdeb02-10-baseと一緒にカーネルベースの仮想マシン(KVM)を実行するためにDebian Bullseyeを使用していますvdeb03-10-base。どちらのゲストにもDebian Busterがインストールされています。テスト目的でこのユーティリティをvdeb03-10-base複製して使用して、Macアドレスなどの独自のシステムパラメータがあることを確認してください。私が使用するすべてのデバイス(ホスト、ゲスト)vdeb02-10-basevirt-cloneシステムネットワーク

ISC-DHCPサーバーからIPアドレスを取得するためにDHCPを有効にすると、vdeb02-10-baseDHCPサーバーのログに示すようにすべてが正常に機能します。

Oct 05 18:43:49 vnetsvr30-10 dhcpd[1534]: DHCPDISCOVER from 52:54:00:ee:f5:0a via ens1
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: DHCPOFFER on 192.168.30.104 to 52:54:00:ee:f5:0a (vdeb02-10-base) via ens1
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: DHCPREQUEST for 192.168.30.104 (192.168.30.10) from 52:54:00:ee:f5:0a (vdeb02-10-base) via ens1
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: Wrote 56 leases to leases file.
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: DHCPACK on 192.168.30.104 to 52:54:00:ee:f5:0a (vdeb02-10-base) via ens1
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: Added new forward map from vdeb02-10-base.home.hoeft-online.de. to 192.168.30.104
Oct 05 18:43:50 vnetsvr30-10 dhcpd[1534]: Added reverse map from 104.30.168.192.in-addr.arpa. to vdeb02-10-base.home.hoeft-online.de.

動的DNS名はDNSサーバーにマップされるため、次のように照会できます。

~$ dig +search +noall +answer vdeb02-10-base
vdeb02-10-base.home.hoeft-online.de. 3600 IN A  192.168.30.104

起動すると、vdeb03-10-baseDHCP サーバーのログに以下が表示されます。

Oct 05 18:44:55 vnetsvr30-10 dhcpd[1534]: DHCPDISCOVER from 52:54:00:ed:c5:df (vdeb02-10-base) via ens1
Oct 05 18:44:55 vnetsvr30-10 dhcpd[1534]: ICMP Echo reply while lease 192.168.30.104 valid.
Oct 05 18:44:55 vnetsvr30-10 dhcpd[1534]: Abandoning IP address 192.168.30.104: pinged before offer
Oct 05 18:44:55 vnetsvr30-10 dhcpd[1534]: Removed forward map from vdeb02-10-base.home.hoeft-online.de. to 192.168.30.104
Oct 05 18:44:55 vnetsvr30-10 dhcpd[1534]: Removed reverse map on 104.30.168.192.in-addr.arpa.
Oct 05 18:44:57 vnetsvr30-10 dhcpd[1534]: DHCPDISCOVER from 52:54:00:ed:c5:df via ens1
Oct 05 18:44:58 vnetsvr30-10 dhcpd[1534]: DHCPOFFER on 192.168.30.95 to 52:54:00:ed:c5:df (vdeb03-10-base) via ens1
Oct 05 18:44:58 vnetsvr30-10 dhcpd[1534]: DHCPREQUEST for 192.168.30.95 (192.168.30.10) from 52:54:00:ed:c5:df (vdeb03-10-base) via ens1
Oct 05 18:44:58 vnetsvr30-10 dhcpd[1534]: DHCPACK on 192.168.30.95 to 52:54:00:ed:c5:df (vdeb03-10-base) via ens1
Oct 05 18:44:58 vnetsvr30-10 dhcpd[1534]: Added new forward map from vdeb03-10-base.home.hoeft-online.de. to 192.168.30.95
Oct 05 18:44:58 vnetsvr30-10 dhcpd[1534]: Added reverse map from 95.30.168.192.in-addr.arpa. to vdeb03-10-base.home.hoeft-online.de.

DHCPサーバーがfromDHCPDISCOVERではなくvdeb02-10-basefromと言うのはなぜですかvdeb03-10-base? Macアドレスとホスト名が異なります。もちろん、DHCPサーバーにpingを送信することは、ネットワークにIPアドレスの競合があることを意味します。その後、DNSマッピングを削除してvdeb02-10-baseマッピングに置き換えるため、名前を解決できvdeb03-10-baseなくなります。vdeb02-10-base

ここで何が起こっているのでしょうか? DHCPサーバーが2番目のゲストの名前を追加するのではなく、DNSサーバーのホスト名を変更するのはなぜですか?問題はどこにありますか?クライアントでは、標準ブリッジを持つホスト、DHCPサーバー、またはsystemd-networkdを使用しますか?たぶん利用可能なオプションがありますか/etc/dhcp/dhcpd.conf

答え1

DHCPサーバーのログを見ると、2つの異なるデバイスの名前とMACアドレスが異なる場合でも、それを区別できないようです。明らかに、これはネットワーク内のデバイスを識別するために使用されません。vdeb03-10-baseクローンであるため、vdeb02-10-baseクローンの後に変更されていない他の識別子が必要です(名前とmacアドレスが変更されます)。

man systemd.networkこれが何であるかを知るよりは、ClientIdentifier=りんご「または」ドイド両方のデバイス名を設定すると、mac動的にDNSサーバーに正しくマッピングされますが、問題の原因は解決されません。両方のデバイスに同じままのDUIDが必要で、他の問題を引き起こす可能性があります。

DHCPのDUIDを設定できることがわかりましたが、/etc/systemd/networkd.conf次の質問はこれをどのように計算するかです。私が見つけたものman networkd.conf

「DUIDType = vendor」の場合、DUID値はベンダー識別子(systemd)とmachine-id(5)のハッシュとして「43793」を使用して生成されます。 DUIDType =が指定されていない場合、これはデフォルトです。

だから問題の根本はマシンIDどちらのゲストも同じです。

しかし、変更にはいくつかの問題があります。私が見つけた方法は次のとおりです。/etc/machine-idを変更できますか?。簡単に言えば、次のことを行う必要があります。

~$ sudo rm -f /etc/machine-id
~$ sudo dbus-uuidgen --ensure=/etc/machine-id
~$ sudo rm /var/lib/dbus/machine-id
~$ sudo dbus-uuidgen --ensure

関連情報