サブインターフェイスで ISC DHCP サーバーを起動すると「サブネット宣言がありません」というメッセージが表示されるのはなぜですか?

サブインターフェイスで ISC DHCP サーバーを起動すると「サブネット宣言がありません」というメッセージが表示されるのはなぜですか?

2 つのサブインターフェースを作成しましたeth0:

  • eth0:0IP付き192.168.10.1/24
  • eth0:1IP付き192.168.11.1/24

次のように構成します/etc/dhcp/dhcpd.conf:

option domain-name-server 194.204.159.1;

subnet 192.168.10.0 netmask 255.255.255.0 {
   option routers 192.168.10.1;
   option subnet-mask 255.255.255.0;
   range 192.168.10.10 192.168.10.100;
}

subnet 192.168.11.0 netmask 255.255.255.0 {
   option routers 192.168.11.1;
   option subnet-mask 255.255.255.0;
   range 192.168.11.10 192.168.11.100;
}

しかし、DHCP サーバーを起動しようとすると、次のメッセージが表示されます。

No subnet declaration for eth0:0 (no IPv4 addresses).
 ** Ignoring requests on eth0:0.  If this is not what
    you want, please write a subnet declaration
    in your dhcpd.conf file for the network segment
    to which interface eth0:0 is attached. **

No subnet declaration for eth0:1 (no IPv4 addresses).
 ** Ignoring requests on eth0:1.  If this is not what
    you want, please write a subnet declaration
    in your dhcpd.conf file for the network segment
    to which interface eth0:1 is attached. **

設定/etc/default/isc-dhcp-server:

INTERFACES="eth0:0 eth0:1"

それは何が問題なのですか?

アップデート:

サブインターフェイス (エイリアス?) で router-on-a-stick を設定しようとしていることを忘れていました。 と を使用して 2 つのホストをセットアップし、192.168.10.2サブ192.168.11.2インターフェイスを使用して 3 番目のホストを設定した後eth0:0eth0:1これら 2 つのホスト間でパケットを転送しています。ただし、現在は 2 つのサブネット内の 2 つのホストに IP を動的に割り当てることができる DHCP サーバーを設定しようとしています。

答え1

IP エイリアスは既存のインターフェースにアドレスを追加する方法にすぎないため、これは機能しません。ここで実行する必要があるのはおそらく VLAN です。

答え2

これらのネットワークの DHCP 要求に対応するためにサブインターフェースは必要ありません。 http://manpages.ubuntu.com/manpages/hardy/man5/dhcpd.conf.5.html

DHCP は TCP/IP のようなプロトコルなので、マシンが IP アドレスを持つ前のレベルで動作します。したがって、DHCP 要求をサブインターフェイスでリッスンする必要はなく、これらの要求については実際の物理インターフェイス (この場合はおそらく eth0) でリッスンする必要があります。

次に、静的 MAC アドレス マッピングなど (Ubuntu で実行できるもの) を介して、それらのグループに IP アドレスをリースするためのルールを定義する必要があります。

eth0:1 および eth0:0 インターフェイスは NAT ルーティングにのみ必要であり、DHCP 構成のどこにも表示されません。

関連情報