isc-dhcp-serverが/etc/network/interfacesと競合する - 同じサブネットに一致する複数のインスタンス

isc-dhcp-serverが/etc/network/interfacesと競合する - 同じサブネットに一致する複数のインスタンス

Raspbianを実行していてcmdを実行しようとしています。isc-dhcp-server サービスが開始されます。。これによりメッセージが返されます。

[FAIL] Starting ISC DHCP server: dhcpd[....] check syslog for diagnostics. ... failed!

私のもの/var/sys/ログファイルに次のものが含まれています

dhcpd: Wrote 0 leases to leases file.
dhcpd: Multiple interfaces match the same subnet: wlan0 eth0
dhcpd: Multiple interfaces match the same shared network: wlan0 eth0
dhcpd:
dhcpd: No subnet declaration for wlan1 (no IPv4 addresses).
dhcpd: ** Ignoring requests on wlan1.  If this is not what
dhcpd:    you want, please write a subnet declaration
dhcpd:    in your dhcpd.conf file for the network segment
dhcpd:    to which interface wlan1 is attached. **
dhcpd:
dhcpd:
dhcpd: Not configured to listen on any interfaces!

私のもの/etc/ネットワーク/インターフェース含む

auto lo
iface lo inet loopback


iface wlan1 inet static
        address 192.168.42.1
        netmask 255.255.255.0


iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        gateway 192.168.1.1

allow-hotplug wlan0

iface wlan0 inet static
        address 192.168.1.200
        netmask 255.255.255.0
        gateway 192.168.1.1

wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

up iptables-restore < /etc/iptables.ipv4.nat

エラーログ分析

複数のインターフェイスが同じサブネットと一致する:wlan0 eth0

サブネットは次のように表示されていますか?住所内部に -/etc/ネットワーク/インターフェース文書?もしそうなら、イーサネット0持つ住所 192.168.1.100そして無線LAN 0持つ住所 192.168.1.200。これらは異なります。

また。もう一度まとめると/etc/ネットワーク/インターフェース次のようにブロックをファイルに整理してソートします。

auto lo
iface lo inet loopback

iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        gateway 192.168.1.1

allow-hotplug wlan0

iface wlan0 inet static
        address 192.168.1.200
        netmask 255.255.255.0
        gateway 192.168.1.1

wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

iface wlan1 inet static
        address 192.168.42.1
        netmask 255.255.255.0

up iptables-restore < /etc/iptables.ipv4.nat

私の間違い変数/システム/ログファイルが次に変更されます。

dhcpd: Wrote 0 leases to leases file.
dhcpd: No subnet declaration for wlan1 (no IPv4 addresses).
dhcpd: ** Ignoring requests on wlan1.  If this is not what
...

このファイルの並べ替えにより、古い** dhcpd:同じサブネット:wlan0 eth0**と一致する複数のインターフェイスが消えたのはなぜですか?同じサブネットと一致する場合は、宣言の有無にかかわらず常に一致する必要があります。そうですか?

ベストアンサー1

eth0wlan0同じサブネット/ネットワークアドレスがあります。

インターフェイスのサブネットアドレス(ネットワークアドレスとも呼ばれます)をeth0入力します。 「アドレス」と「ネットマスク」の「論理的AND」によって決まります。 「アドレス」は、「ネットマスク」はです。192.168.1192.168.1.0192.168.1.100255.255.255.0

10進表記では、数値位置の値は... 10000,1000,100,10,1です。

バイナリ表記では、値は... 128、64、32、16、8、4、2、1です。

                           128 64 32 16 8 4 2 1 
 Since 192=128+64  it is     1  1  0  0 0 0 0 0  or 11000000  in binary.
 Since 168=128+32+8 it is    1  0  1  0 1 0 0 0  or 10101000  in binary.
 Since 1=1  it is            0  0  0  0 0 0 0 1  or 00000001  in binary.
 Since 100=64+32+4  it is    0  1  1  0 0 1 0 0  or 01100100  in binary.
 Since 200=128+64+8 it is    1  1  0  0 1 0 0 0  or 11001000  in binary.
 255=128+64+32+16+8+4+2+1 or 1  1  1  1 1 1 1 1  or 11111111  in binary.

サブネットまたはネットワークアドレスを見つけるには、「アドレス」と「ネットマスク」の「論理的AND」を実行する必要があります。 0と0 = 0、1と0 = 0、0と1 = 0、最後に1と1 = 1の論理AND。したがって、192.168.1.100 論理AND255.255.255.0は次のようになります。

                  11000000.10101000.00000001.01100100
 "logical and"    11111111.11111111.11111111.00000000  gives
                  11000000.10101000.00000001.00000000 which equals
                       192.     168.       1.       0  or 192.168.1.0 

また192.168.1.200 論理的255.255.255.0です。

                  11000000.10101000.00000001.11001000
 "logical and"    11111111.11111111.11111111.00000000  gives
                  11000000.10101000.00000001.00000000 which equals
                       192.     168.       1.       0  or 192.168.1.0 

したがって、両方のサブネットは同じアドレスを持つため、同じサブネットです。

回避策はまたは192.168.1.200に変更することです。192.168.2.200192.168.1.100192.168.2.100

関連する例については、以下を参照してください。DHCPサーバー:さまざまなインターフェースに異なるサブネットアドレスを提供します。

おすすめ記事