dhcpd ne démarre pas sur eth1

10

J'ai des problèmes pour configurer et démarrer le serveur DHCP ISC sur ma machine. J'utilise Ubuntu 11.10 desktop edition. J'ai installé ISC DHCP en exécutant

$ sudo apt-get install dhcp3-server

Ma machine possède deux cartes réseau:

eth0 , qui est connecté à un routeur pour l'accès à Internet, qui a une adresse IP de 192.168.2.2. eth1 , où je veux que dhcpd serve les demandes, pour un sous-réseau.

J'ai modifié /etc/default/isc-dhcp-serverpour pointer vers eth1:

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

J'ai configuré dhcpd pour un sous-réseau simple:

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

Avec cette configuration, dhcpd ne démarre pas pour moi:

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

Suis-je en train de manquer une étape? Je ne comprends pas pourquoi dhcpd se plaint qu'il n'est pas configuré pour écouter sur les interfaces.

C'est la première fois que je configure DHCP. J'ai passé trois jours à lire des manuels et des forums et je pense que j'ai tout fait correctement, mais je continue de recevoir la même erreur. Tous les conseils pour me mettre sur la bonne voie sont grandement appréciés!

Vivek
la source

Réponses:

6

En bref: vous devez configurer une adresse sur l'interface eth1avant que le DHCP puisse servir les requêtes de celui-ci.

Histoire plus longue: le serveur DHCP lira le fichier de configuration, puis fera correspondre les subnetdéclarations avec les adresses IP actuellement attribuées aux interfaces. Seules les interfaces dont l'adresse IP correspond à une subnetdéclaration serviront les demandes pour ce sous-réseau. Par conséquent, vous devez configurer eth1avec une adresse dans la plage 192.168.0.0/24, si vous souhaitez que le serveur DHCP ISC lui serve des demandes pour 192.168.0.0/24.

Riccardo Murri
la source
Merci Riccardo! J'ai mis à jour / etc / network / interfaces, exécuté ifup eth1 et redémarré dhcpd avec succès. Je savais que je manquais une étape, mais je ne comprenais pas suffisamment le processus pour savoir ce que c'était exactement. Votre réponse est pratique et perspicace.
Vivek
2

Ci-dessous a travaillé pour moi dans Ubuntu 12.04

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

Allez dans / etc / dhcp. créer un nouveau fichier "dhcp.conf" Avant cela, conserver une sauvegarde du fichier "dhcp.conf" existant

Ajoutez les détails ci-dessous au nouveau fichier 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;
} 

Maintenant, allez dans /etc/defaults/isc-dhcp-serveret ajoutez votre nom d'interface au fichierisc-dhcp-server

Modifiez le /etc/network/interfacesfichier avec les détails statiques de votre serveur comme ci-dessous

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

Après cette course sudo /etc/init.d/isc-dhcp-server restartetsudo /etc/init.d/networking restart

Remarque: N'oubliez pas d'installer le client DHCP dans votre système client. De plus, après avoir installé dhcp-server dans votre système de serveur, supprimez le système du réseau externe afin qu'il n'endommage pas les autres appareils déjà présents sur le réseau, autres que le client particulier qui vous intéresse

Maintenant, si vous connectez votre client au même réseau où votre serveur est hébergé, le client acquerra une adresse IP avec dans la plage spécifiée

LAMOHAN
la source
0

Une autre façon de démarrer dhcp-server est possible en utilisant l'utilitaire de service.

Par exemple:

# sudo service isc-dhcp-server start
Alexander Borodulya
la source