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-reloaddhcpdサービスを再起動します。# 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-reloaddhcpd6サービスを再起動します。# systemctl restart dhcpd6.service