私のホームサーバーのESXiの下の仮想マシンでUbuntu Server 20.04を実行しています。 Dockerコンテナ内で2つの別々のPiHoleインスタンスを実行できるように、仮想マシンに2つの一意のIPアドレスが必要です。
仮想マシンに2つのネットワークアダプタを設定し、/etc/netplan/00-installer-config.yamlを次のように設定しました。
network:
ethernets:
ens160:
dhcp4: true
ens192:
dhcp4: true
version: 2
を実行すると、netplan apply
DHCPを介してそれぞれ独自のIPを持つ2つのインターフェイスがあります。
# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.212 netmask 255.255.255.0 broadcast 10.0.0.255
...
ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.213 netmask 255.255.255.0 broadcast 10.0.0.255
...
/etc/dhcp/dhclient.conf
次に、デフォルトの「ホスト名を送信」オプションをコメントアウトし、2つのインターフェース固有のオプションに置き換えて編集しました。
#send host-name = gethostname();
interface "ens160" {
send host-name = "something-else-1";
}
interface "ens192" {
send host-name = "something-else-2";
}
このステップはうまくいかないようです。 DHCPサーバー(Unifi)はまだホスト名を「実験的」と報告します。実際、gethostname()
既存の行を変更してホスト名だけを異ならせようとしましたが、それでもうまくいかなかったようです。
私は/etc/hostname
別のものを使って変更してみましたが、これが実際にうまくいきました。したがって、何らかの理由でオプションが/etc/dhcp/dhclient.conf
無視されるようです。
誰かが私が間違っていることを教えてもらえますか?ありがとうございます!
答え1
問題は、各インターフェイスに異なるDHCP「状態マシン」が必要であることです。これを行うには、次のように各クライアントに異なるクライアントIDを割り当てる必要があります。
# send host-name = gethostname();
interface "enp2s0" {
send dhcp-client-identifier "officemac";
send host-name "officemac";
}
interface "enp2s0:0" {
send dhcp-client-identifier "media";
send host-name "media";
}