23.4. マルチホーム DHCP サーバーの設定
マルチホーム DHCP サーバーは、複数のネットワーク(つまり複数のサブネット)を提供します。以下の項の例では、複数のネットワークを提供するように DHCP サーバーを設定する方法、リッスンするネットワークインターフェイスを選択する方法、ネットワークを移動するシステムのネットワーク設定の定義方法について詳しく説明します。
変更を行う前に、既存の
/etc/sysconfig/dhcpd ファイルおよび /etc/dhcpd.conf ファイルのバックアップを作成してください。
DHCP デーモンは、特に指定がない限り、すべてのネットワークインターフェイスでリッスンします。
/etc/sysconfig/dhcpd ファイルを使用して、DHCP デーモンがリッスンするネットワークインターフェイスを指定します。以下の /etc/sysconfig/dhcpd の例では、DHCP デーモンが eth0 インターフェイスおよび eth1 インターフェイスでリッスンするように指定します。
DHCPDARGS="eth0 eth1";
DHCPDARGS="eth0 eth1";
システムに 3 つのネットワークインターフェイスカード(
eth0、eth1、および eth2 )があり、DHCP デーモンが eth0 でリッスンすることが望ましい場合は、/etc/sysconfig/dhcpd で eth0 のみを指定します。
DHCPDARGS="eth0";
DHCPDARGS="eth0";
以下は、2 つのネットワークインターフェイスが 10.0.0.0/24 ネットワークで、
eth1 が 172.16.0.0 /24 ネットワークにあるサーバー用の基本的な /etc/dhcpd.conf ファイルです。複数の subnet 宣言を使用すると、複数のネットワークに異なる設定を定義できます。
-
サブネット 10.0.0.0 ネットマスク 255.255.255.0 - DHCP サーバーが提供しているすべてのネットワークには、
subnet宣言が必要です。複数のサブネットには、複数のサブネット宣言が必要です。DHCP サーバーにサブネット宣言の範囲にネットワークインターフェイスがない場合、DHCP サーバーはそのネットワークを提供しません。サブネット宣言が 1 つしかなく、そのサブネットの範囲内にネットワークインターフェイスがない場合、DHCP デーモンは起動に失敗し、以下のようなエラーが/var/log/messagesに記録されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
オプション subnet-mask 255.255.255.0 subnet-mask オプションは、サブネットマスクを定義し、subnet宣言のnetmask値を上書きします。簡単なケースでは、サブネットとネットマスクの値は同じです。-
オプションルーター 10.0.0.1 option routersオプションは、サブネットのデフォルトゲートウェイを定義します。これは、システムが異なるサブネット上の内部ネットワーク、さらには外部ネットワークに届くために必要です。-
range 10.0.0.5 10.0.0.15; rangeオプションは、利用可能な IP アドレスのプールを指定します。指定した IP アドレスの範囲からアドレスが割り当てられます。
詳細は、
dhcpd.conf (5) man ページを参照してください。
エイリアスインターフェイス
エイリアスインターフェイスは DHCP ではサポートされていません。エイリアスインターフェイスが唯一のインターフェイスである場合、
/etc/dhcpd.conf で指定された唯一のサブネットでは、DHCP デーモンが起動に失敗します。
23.4.1. ホストの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
変更を行う前に、既存の
/etc/sysconfig/dhcpd ファイルおよび /etc/dhcpd.conf ファイルのバックアップを作成してください。
複数ネットワーク用の単一システムの設定
以下の /etc/dhcpd.conf の例では、2 つのサブネットを作成し、接続するネットワークに応じて同じシステムに IP アドレスを設定します。
-
host example0 host宣言は、IP アドレスなどの単一システムの特定のパラメーターを定義します。複数のホストに特定のパラメーターを設定するには、複数のhost宣言を使用します。ほとんどの DHCP クライアントはhost宣言の名前を無視するため、他のhost宣言に固有の名前であれば、この名前はどのようなものでも構いません。複数のネットワークに同じシステムを設定するには、host宣言ごとに異なる名前を使用します。そうしないと、DHCP デーモンが起動に失敗します。システムは、host宣言の名前ではなく、ハードウェアイーサネットオプションで識別されます。-
hardware ethernet psycA:6B:6A:2E:0B; hardware ethernetオプションは、システムを識別します。このアドレスを見つけるには、必要なシステムで ifconfig コマンドを実行し、HWaddrアドレスを見つけます。-
fixed-address 10.0.0.20; fixed-addressオプションは、ハードウェアイーサネットオプションで指定されたシステムに、有効な IP アドレスを割り当てます。このアドレスは、rangeオプションで指定された IP アドレスプール外である必要があります。
option ステートメントがセミコロンで終了しない場合、DHCP デーモンは起動に失敗し、以下のようなエラーが /var/log/messages に記録されます。
複数のネットワークインターフェイスを持つシステムの設定
以下の host 宣言は、複数のネットワークインターフェイスを持つ単一のシステムを設定し、各インターフェイスが同じ IP アドレスを受け取るようにします。両方のネットワークインターフェイスが同じネットワークに同時に接続されている場合には、この設定は機能しません。
この例では、
interface0 が最初のネットワークインターフェイスで、interface1 は 2 番目のインターフェイスです。異なる ハードウェアイーサネット オプションは、各インターフェイスを識別します。
このようなシステムが別のネットワークに接続されている場合は、
ホスト 宣言をさらに追加します。
- ホストが接続し
ているネットワークに有効な Fix-addressを割り当てます。 host宣言の名前を一意にします。
host 宣言で指定された名前が一意ではない場合、DHCP デーモンは起動に失敗し、以下のようなエラーが /var/log/messages に記録されます。
dhcpd: /etc/dhcpd.conf line 31: host interface0: already exists dhcpd: } dhcpd: ^ dhcpd: Configuration file errors encountered -- exiting
dhcpd: /etc/dhcpd.conf line 31: host interface0: already exists
dhcpd: }
dhcpd: ^
dhcpd: Configuration file errors encountered -- exiting
このエラーは、
/etc/dhcpd.conf に複数の host interface0 宣言が定義されているために生じました。