Debian dhcpd「eth0のサブネット宣言はありません」


9


PLoP Linuxのイメージを提供するDebian 6.0.3 Squeezeマシンにpxeブートサーバーをセットアップしようとしています。私はこのチュートリアルに従っていました。
(パッケージdhcp3-serverから)dhcpdを起動しようとすると、次のようになります。

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



Not configured to listen on any interfaces!

/etc/dhcpd.confはいくつかの変更を除いてチュートリアルのそれと同じです:

host testpc {
        hardware ethernet 00:0C:6E:A6:1A:E6;
        fixed-address 10.0.0.250;
}

代わりに

host tablet {
        hardware ethernet 00:02:3F:FB:E2:6F;
        fixed-address 10.0.0.249;
}

/etc/network/interfacesは:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
        address 10.0.0.0
        netmask 255.255.255.0

そして、これは私の/etc/default/isc-dhcp-serverです。

# Defaults for dhcp initscript
# sourced by /etc/init.d/dhcp
# installed at /etc/default/isc-dhcp-server by the maintainer scripts

#
# This is a POSIX shell fragment
#

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#       Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACES="eth0"

私もコピーしたのです/etc/default/dhcp3-serverが、どちらをチェックするかわかりません。

また、IP /etc/network/interfacesを10.0.0.1と10.0.0.2に設定してみましたが、同じ結果が得られました。

回答:


8

dhcpdはIPアドレスをクライアントに渡す必要があるため、担当するアドレスの範囲を知る必要があります。サブネット宣言は、dhcpdにその情報などを提供します。10.0.0 / 24を使用していると仮定すると、次のようにしてエラーメッセージを開始し、先に進む必要がありますが、さらに先に進むにはドキュメントにアクセスする必要があります。これをdhcpd.confに追加してください:

subnet 10.0.0.0 netmask 255.255.255.0 { 
   authoritative; 
   range 10.0.0.1 10.0.0.254; 
   default-lease-time 3600; 
   max-lease-time 3600; 
   option subnet-mask 255.255.255.0; 
   option broadcast-address 10.0.0.255; 
   option routers 10.0.0.0; 
   option domain-name-servers 8.8.8.8; 
   option domain-name "example.com"; 
} 

上記で接続したIPアドレスは推測です。あなたはあなたのセットアップのためにこれらを適切に設定しなければなりません。


2

問題は、それ10.0.0.0が有効なIPv4アドレスではないことです。サブネットの最初のアドレス(ホスト部分がすべてゼロのアドレス)はサブネット識別子であるため、有効なホストアドレスではありません。お試しください10.0.0.1。また、サブネットの最後のアドレスはIPブロードキャストアドレスであるため、使用しないでください。

Decimal: 
  Address:     10   .0  .0  .0
  Subnet Mask: 255.255.255.255
Hex:     
  Address:     0A 00 00 00 
  Subnet Mask: FF FF FF 00
  Network:     ^^ ^^ ^^
  Host:                 ^^
  Smallest Addr:        01 (.1)
  Largest Addr:         FE (.254)
  Broadcast:            FF (.255)

1

私はdhcp3-serverをパージし、代わりにdnsmasqを使用することになりました。私はその構成ファイルを調べ、コメントした例を使用して、サーバーを必要に応じて構成できました。dnsmasqには、PXEブートに使用した組み込みのtftpサーバーもあります。


私はあなたがここでしたのと同じ問題を抱えています。あなたがこれについていくつかの光を共有できるか、あなたのdnsmasq.confを共有できるかどうか疑問に思っていました…ありがとう!
user1680784 14年

@ user1680784これを実行するように設定されたシステムがなくなったため、構成ファイルを共有できません。私はあなたが具体的に何を達成しようとしているのかわかりませんが、手動でdhcpdまたはdnsmasqを構成するのに問題がある場合は、DRBLを使用してLinuxブートイメージを提供してみてください。
スチピ2014年

0

確認する

ifconfig eth0

インターフェースeth0に正しいipv4がある場合

address 10.0.0.0とにかく無効になるように設定したようです)

IPの範囲が間違っている場合は、たとえば次のように新しいアドレスを指定します。

ifconfig eth0 10.0.0.1

次に、dhcpサーバーを再起動してみてください



0

systemdベースのOSでは、NetworkManager-wait-online.serviceが実行されていることを確認してください。

Fedora 26でも同様の問題がありました。参照が見つからなかったので、誰かがそれを必要とする場合に備えて、ここに解決策を投稿します。

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

Fedora 26はsystemdベースのOSで、従来のinitスクリプト(/etc/rc.d/init.d)がネイティブのsystemdサービスファイルに置き換えられています。

私のdhcpd.serviceファイル:

[Unit]
Description=DHCPv4 Server Daemon
Documentation=man:dhcpd(8) man:dhcpd.conf(5)
Wants=network-online.target
After=network-online.target
After=time-sync.target

[Service]
Type=notify
EnvironmentFile=-/etc/sysconfig/dhcpd
ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid $DHCPDARGS
StandardError=null

[Install]
WantedBy=multi-user.target

この行:

Wants=network-online.target
After=network-online.target

ネットワークがオンラインになった後にサービスが開始することを確認しますが、適切な「待機」サービスも有効にする必要があります1NetworkManager-wait-online.service

私はそうではありませんでした。

参照:https : //www.freedesktop.org/wiki/Software/systemd/NetworkTarget/

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.