eth1에서 dhcpd가 시작되지 않습니다


10

컴퓨터에서 ISC DHCP 서버를 구성하고 시작하는 데 문제가 있습니다. Ubuntu 11.10 데스크톱 버전을 실행 중입니다. 다음을 실행하여 ISC DHCP를 설치했습니다.

$ sudo apt-get install dhcp3-server

내 컴퓨터에는 두 개의 NIC가 있습니다.

eth0 은 인터넷에 액세스하기 위해 라우터에 연결되어 있으며 IP 주소가 192.168.2.2. eth1 이며 dhcpd가 서브넷에 대한 요청을 처리하기를 원합니다.

/etc/default/isc-dhcp-servereth1을 가리 키도록 수정 했습니다.

$ cat /etc/default/isc-dhcp-server
# Defaults for dhcp initscript
INTERFACES="eth1"

간단한 서브넷에 대해 dhcpd를 구성했습니다.

$ cat /etc/dhcp/dhcpd.conf
ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;

subnet 192.168.0.0 netmask 255.255.255.0 {
  interface eth1;
  range 192.168.0.50 192.168.0.100;
  option subnet-mask 255.255.255.0;
  option broadcast-address 192.168.0.255;
}

이 구성을 사용하면 dhcpd가 시작되지 않습니다.

$ sudo /etc/init.d/isc-dhcp-server start
* Starting ISC DHCP server dhcpd
* check syslog for diagnostics.               [fail]

$ tail /var/log/syslog
Aug 15 15:29:45 eptc4 dhcpd: No subnet declaration for eth1 (no IPv4 addresses).
Aug 15 15:29:45 eptc4 dhcpd: ** Ignoring requests on eth1.  If this is not what
Aug 15 15:29:45 eptc4 dhcpd:    you want, please write a subnet declaration
Aug 15 15:29:45 eptc4 dhcpd:    in your dhcpd.conf file for the network segment
Aug 15 15:29:45 eptc4 dhcpd:    to which interface eth1 is attached. **
Aug 15 15:29:45 eptc4 dhcpd: 
Aug 15 15:29:45 eptc4 dhcpd: 
Aug 15 15:29:45 eptc4 dhcpd: Not configured to listen on any interfaces!

단계가 빠졌습니까? dhcpd가 인터페이스에서 수신하도록 구성되지 않았다고 불평하는 이유를 이해하지 못합니다.

이것이 DHCP를 처음 설정 한 것입니다. 나는 매뉴얼과 포럼을 읽는 데 3 일을 보냈고 모든 것을 올바르게했다고 생각하지만 계속 같은 오류가 발생합니다. 올바른 길로 안내하는 모든 팁은 대단히 감사합니다!

답변:


6

간단히 말해서 : eth1DHCP가 요청을 처리하기 전에 인터페이스에서 주소를 설정해야 합니다.

더 긴 이야기 : DHCP 서버는 구성 파일을 읽은 다음 subnet현재 인터페이스에 할당 된 IP 주소와 선언 을 일치시킵니다 . IP 주소가 subnet선언 과 일치하는 인터페이스 만 해당 서브넷에 대한 요청을 처리합니다. 따라서 eth1ISC DHCP 서버가 192.168.0.0/24에 대한 요청을 처리하도록하려면 192.168.0.0/24 범위의 주소 로 설정해야 합니다.


리카르도 감사합니다! / etc / network / interfaces를 업데이트하고 ifup eth1을 실행 한 다음 dhcpd를 성공적으로 다시 시작했습니다. 나는 내가 약간의 단계를 잃어 버렸다는 것을 알았지 만 그것이 정확히 무엇인지 알기에 충분한 과정을 이해하지 못했습니다. 당신의 대답은 실용적이고 통찰력이 있습니다.
Vivek

2

아래는 우분투 12.04에서 나를 위해 일했습니다.

apt-get remove --purge dhcp3-server
sudo apt-get install isc-dhcp-server

/ etc / dhcp로 이동하십시오. 새 파일 "dhcp.conf"를 작성하기 전에 기존 "dhcp.conf"파일의 백업을 유지하십시오.

새 dhcp.conf 파일에 아래 세부 사항을 추가하십시오.

# Sample /etc/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.example";
subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.10 192.168.1.100;
    range 192.168.1.150 192.168.1.200;
} 

이제 /etc/defaults/isc-dhcp-server인터페이스 이름을 파일에 추가하십시오.isc-dhcp-server

/etc/network/interfaces아래와 같이 서버 정적 세부 정보로 파일을 수정하십시오.

auto eth1
iface inet eth1 static
    address 192.168.1.149
    netmask 255.255.255.0
    gateway 192.168.1.255
    dns-nameservers 192.168.1.1

이 실행 한 후 sudo /etc/init.d/isc-dhcp-server restartsudo /etc/init.d/networking restart

참고 : 클라이언트 시스템에 dhcp 클라이언트를 설치하는 것을 잊지 마십시오. 또한 서버 시스템에 dhcp-server를 설치 한 후 외부 네트워크에서 시스템을 제거하여 관심있는 특정 클라이언트 이외의 다른 네트워크 장치에 영향을 미치지 않도록하십시오.

이제 서버가 호스팅되는 동일한 네트워크에 클라이언트를 연결하면 클라이언트가 지정된 범위의 IP를 얻습니다.


0

dhcp-server를 시작하는 다른 방법은 서비스 유틸리티를 사용하는 것입니다.

예를 들면 다음과 같습니다.

# sudo service isc-dhcp-server start
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.