3.7. DHCP サーバーのネットワークインターフェイスの設定
デフォルトでは、dhcpd
サービスプロセスは、サービスの設定ファイルで定義されているサブネットに IP アドレスのあるネットワークインターフェイスでのみ要求します。
たとえば、以下のシナリオでは、dhcpd
は、enp0s1
ネットワークインターフェイスでのみリッスンします。
-
/etc/dhcp/dhcpd.conf
ファイルには、192.0.2.0/24 ネットワークのsubnet
定義しかない。 -
enp0s1
ネットワークインターフェイスが 192.0.2.0/24 サブネットに接続されている。 -
enp7s0
インターフェイスが別のサブネットに接続されます。
DHCP サーバーに同じネットワークに接続された複数のネットワークインターフェイスが含まれているにもかかわらず、サービスが特定のインターフェイスでのみリッスンする必要がある場合にのみ、この手順に従ってください。
IPv4、IPv6、またはその両方のプロトコルに DHCP を提供するかどうかに応じて、以下の手順を参照してください。
前提条件
-
root
ユーザーとしてログインしている。 -
dhcp-server
パッケージがインストールされている。
手順
IPv4 ネットワークの場合:
/usr/lib/systemd/system/dhcpd.service
ファイルを/etc/systemd/system/
ディレクトリーにコピーします。# cp /usr/lib/systemd/system/dhcpd.service /etc/systemd/system/
/usr/lib/systemd/system/dhcpd.service
ファイルは編集しないでください。dhcp-server
パッケージの今後の更新により、変更が上書きされます。/etc/systemd/system/dhcpd.service
ファイルを編集し、dhcpd
が、ExecStart
パラメーターのコマンドでリッスンする必要があるインターフェイスの名前を追加します。ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid $DHCPDARGS enp0s1 enp7s0
この例では、
dhcpd
がenp0s1
インターフェイスおよびenp7s0
インターフェイスでのみリッスンするように設定します。systemd
マネージャー設定を再読み込みします。# systemctl daemon-reload
dhcpd
サービスを再起動します。# systemctl restart dhcpd.service
IPv6 ネットワークの場合:
/usr/lib/systemd/system/dhcpd6.service
ファイルを/etc/systemd/system/
ディレクトリーにコピーします。# cp /usr/lib/systemd/system/dhcpd6.service /etc/systemd/system/
/usr/lib/systemd/system/dhcpd6.service
ファイルは編集しないでください。dhcp-server
パッケージの今後の更新により、変更が上書きされます。/etc/systemd/system/dhcpd6.service
ファイルを編集し、dhcpd
は、ExecStart
パラメーターのコマンドでリッスンする必要があるインターフェイスの名前を追加します。ExecStart=/usr/sbin/dhcpd -f -6 -cf /etc/dhcp/dhcpd6.conf -user dhcpd -group dhcpd --no-pid $DHCPDARGS enp0s1 enp7s0
この例では、
dhcpd
がenp0s1
インターフェイスおよびenp7s0
インターフェイスでのみリッスンするように設定します。systemd
マネージャー設定を再読み込みします。# systemctl daemon-reload
dhcpd6
サービスを再起動します。# systemctl restart dhcpd6.service