dhcpd nie uruchamia się na eth1

10

Mam problem z konfiguracją i uruchomieniem serwera ISC DHCP na moim komputerze. Korzystam z wersji komputerowej Ubuntu 11.10. Zainstalowałem ISC DHCP, uruchamiając

$ sudo apt-get install dhcp3-server

Moja maszyna ma dwie karty sieciowe:

eth0 , który jest podłączony do routera w celu uzyskania dostępu do Internetu, który ma adres IP 192.168.2.2. eth1 , gdzie chcę, aby dhcpd obsługiwał żądania, dla podsieci.

Zmodyfikowałem, /etc/default/isc-dhcp-serveraby wskazywał na eth1:

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

Skonfigurowałem dhcpd dla prostej podsieci:

$ 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;
}

W tej konfiguracji dhcpd nie uruchamia się dla mnie:

$ 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!

Czy brakuje mi kroku? Nie rozumiem, dlaczego dhcpd narzeka, że ​​nie jest skonfigurowany do nasłuchiwania na żadnym interfejsie.

To jest moja pierwsza konfiguracja DHCP. Spędziłem trzy dni czytając podręczniki i fora i myślę, że zrobiłem wszystko dobrze, ale ciągle pojawia się ten sam błąd. Wszelkie wskazówki, które pomogą mi podążać właściwą drogą, są bardzo mile widziane!

Vivek
źródło

Odpowiedzi:

6

W skrócie: musisz skonfigurować adres interfejsu, eth1aby DHCP mógł obsługiwać żądania z niego.

Dłuższa historia: serwer DHCP odczyta plik konfiguracyjny, a następnie dopasuje subnetdeklaracje do adresów IP aktualnie przypisanych do interfejsów. Tylko interfejsy, których adres IP pasuje do subnetdeklaracji, będą obsługiwać żądania dla tej podsieci. Dlatego musisz skonfigurować eth1adres z zakresu 192.168.0.0/24, jeśli chcesz, aby serwer ISC DHCP obsługiwał z niego żądania 192.168.0.0/24.

Riccardo Murri
źródło
Dziękuję Riccardo! Zaktualizowałem / etc / network / interfaces, uruchomiłem ifup eth1 i ponownie uruchomiłem dhcpd. Wiedziałem, że brakuje mi jakiegoś kroku, ale nie zrozumiałem wystarczająco procesu, aby wiedzieć, co to dokładnie było. Twoja odpowiedź jest praktyczna i wnikliwa.
Vivek,
2

Poniżej pracował dla mnie w Ubuntu 12.04

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

Przejdź do / etc / dhcp. utwórz nowy plik „dhcp.conf”. Wcześniej wykonaj kopię zapasową istniejącego pliku „dhcp.conf”

Dodaj poniższe szczegóły do ​​nowego pliku 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;
} 

Teraz przejdź do /etc/defaults/isc-dhcp-serveri dodaj nazwę interfejsu do plikuisc-dhcp-server

Zmodyfikuj /etc/network/interfacesplik, podając szczegółowe dane statyczne serwera, podobnie jak poniżej

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

Po tym uruchomieniu sudo /etc/init.d/isc-dhcp-server restartisudo /etc/init.d/networking restart

Uwaga: nie zapomnij zainstalować klienta dhcp w systemie klienta. Również po zainstalowaniu serwera dhcp w systemie serwera usuń system z sieci zewnętrznej, aby nie wyrządził szkody innym urządzeniom już znajdującym się w sieci, innym niż konkretny klient, którym jesteś zainteresowany

Teraz, jeśli podłączysz klienta do tej samej sieci, w której znajduje się serwer, klient uzyska adres IP z podanym zakresem

LAMOHAN
źródło
0

Inny sposób uruchomienia serwera dhcp jest możliwy za pomocą narzędzia serwisowego.

Na przykład:

# sudo service isc-dhcp-server start
Alexander Borodulya
źródło