Debian dhcpd "eth0에 대한 서브넷 선언이 없습니다"

Debian dhcpd "eth0에 대한 서브넷 선언이 없습니다"

저는 Plop Linux 이미지를 제공하기 위해 Debian 6.0.3 Squeeze 머신에 PXE 부팅 서버를 설정하려고 합니다. 나는 팔로우하고 있다"Plop Linux - 네트워크에서 PXE 부팅 - Linux 서버" 튜토리얼. 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 주소를 10.0.0.1 및 10.0.0.2로 설정해 보았지만 /etc/network/interfaces 동일한 결과가 나왔습니다.

답변1

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

인터페이스에 대한 서브넷 구성 문제를 해결했습니다 /etc/dhcp/dhcpd.conf.

**# 내 인터페이스

subnet 172.20.19.20 netmask 255.255.255.255 { }**

subnet 172.20.11.0 netmask 255.255.255.0 {
        option routers          172.20.11.253;
        option subnet-mask      255.255.255.0;
        option domain-name-servers 192.168.20.251;
        range 172.20.11.10 172.20.11.100;
        option tftp-server-name "192.168.254.102";
}

답변3

문제는 이것이 10.0.0.0유효한 IPv4 주소가 아니라는 것입니다. 서브넷의 첫 번째 주소(호스트 부분이 모두 0인 주소)는 서브넷 식별자이므로 유효한 호스트 주소가 아닙니다. 노력하다 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)

답변4

dnsmasq를 제거하면 문제가 해결되었습니다.

sudo apt-get -y remove dnsmasq

관련 정보