Comment installer et configurer un serveur DHCP?

55

Comment installer et configurer un serveur DHCP dans Ubuntu 12.04?

J'ai besoin d'un tutoriel étape par étape si quelqu'un en a un.

Galgalesh
la source
pas le plus ami de l'utilisateur, mais: help.ubuntu.com/community/dhcp3-server
adempewolff
1
C'est peut-être la même chose mais ... comtech247.net/2012/05/01/…
Mitch
2
"Notez que, dans Ubuntu 12.04, le serveur DHCP ISC est un paquet transitoire pour le serveur dhcp3." wiki.openelec.tv/…
1
Je préfère dnsmasqun serveur DNS et DHCP avec une syntaxe de fichier de configuration simple.
Reinier Post

Réponses:

55

La première chose à faire est d’installer les paquets dont nous avons besoin.

Ouvrez un terminal et tapez:

sudo apt-get install isc-dhcp-server

Il y a deux fichiers principaux /etc/default/isc-dhcp-serveret /etc/dhcp/dhcpd.confque nous devrons configurer, prenons le premier.

Ouvrez un terminal et utilisez votre type d'éditeur de texte favori:

sudo vim /etc/default/isc-dhcp-server

Vous devriez obtenir ce qui suit:

#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"

Remplacez eth0 ci-dessus par le nom de votre interface réseau sur laquelle vous souhaitez que le serveur loue des adresses. Sur le fichier suivant.

Ouvrez un terminal et tapez:

sudo vim /etc/dhcp/dhcpd.conf

ce qui devrait vous donner la sortie ci-dessous.

#
#Sample configuration file for ISC dhcpd for Debian
#
#Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as
#configuration file instead of this file.
#
#
....
option domain-name “example.org”;
option domain-name-servers ns1.example.org, ns2.example.org;
option domain-name “comtech.com”;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.150 10.0.0.253;
option routers 10.0.0.2;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.0.254;
option domain-name-servers 10.0.0.1, 10.0.0.2;
option ntp-servers 10.0.0.1;
option netbios-name-servers 10.0.0.1;
option netbios-node-type 8;
 ......
}

Cela nécessite un peu d'explication.

  1. Ajustez vos paramètres en fonction des besoins de votre réseau.
  2. L'option nom de domaine est le nom de votre zone DNS. Par exemple, le mien est défini sur comtech.com.
  3. La plage doit être la plage d'adresses IP que vous souhaitez que le serveur transmette aux clients.

Maintenant, redémarrez le service DHCP en tapant:

sudo service isc-dhcp-server restart

C'est ça!! Votre serveur DHCP devrait fonctionner, mais il est préférable de vérifier. Ouvrez un terminal et tapez:

sudo netstat -uap

qui va vous montrer quelque chose comme ce qui suit (cherchez dhcpd, nmbdet named):

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address State PID/Program name
udp        0      0 10.0.0.255:netbios-dgm  *:*                   1016/nmbd
udp        0      0 10.0.0.255:netbios-ns   *:*                   1016/nmbd
udp        0      0 *:bootps                *:*                   4525/dhcpd
udp        0      0 *:netbios-dgm           *:*                   1016/nmbd
udp        0      0 *:netbios-ns            *:*                   1016/nmbd
udp        0      0 chris-desktop:domain    *:*                   1273/named
udp        0      0 chris-desktop.lo:domain *:*                   1273/named
udp        0      0 chris-deskt:netbios-dgm *:*                   1016/nmbd
udp        0      0 chris-deskto:netbios-ns *:*                   1016/nmbd
udp6       0      0 [::]:domain             [::]:*                1273/named
BuZZ-dEE
la source
1
Juste un mot de prudence, assurez-vous d'utiliser /etc/dhcp/dhcpd.confet de ne pas /etc/dhcp3/dhcpd.conf
puk
1
Lorsque je redémarre le service ce message est affiché: stop: Unknown instance: isc-dhcp-server start/running, process 3027. Je ne suis pas capable de démarrer le service. J'utilise Ubuntu 13.10.
JJD
1
bien . mais assurez-vous que vous avez attribué une adresse IP statique b4 au démarrage du service DHCP
krizna
Ce n'est pas si difficile, mais utiliser dnsmasqest plus facile si vous me le demandez.
Reinier Post
5

Des éléments supplémentaires peuvent être inclus dans la réponse acceptée

  1. Attribuez une adresse IP statique avant de démarrer le service isc-dhcp-server.

  2. Vous pouvez réserver une adresse IP pour des périphériques tels que des imprimantes et des machines Linux en ajoutant un identifiant MAC au format ci-dessous dans le sous-réseau particulier.

    ------
    host bla1 { 
            hardware ethernet DD:GH:DF:E5:F7:D7;
            fixed-address 10.0.0.10;
    }
    ----
    

    Wiki de la communauté Dhcp3-server

    Serveur DHCP Ubuntu

Ubuntuhelp
la source
1

A partir de la page de la communauté Ubuntu dhcp3-server par contributeurs au wiki de documentation Ubuntu :

Protocole de configuration d'hôte dynamique (DHCP)

Le protocole DHCP (Dynamic Host Configuration Protocol) est un service réseau qui permet aux ordinateurs hôtes de se voir attribuer automatiquement les paramètres d'un serveur, par opposition à la configuration manuelle de chaque hôte réseau. Les ordinateurs configurés pour être des clients DHCP n'ont aucun contrôle sur les paramètres qu'ils reçoivent du serveur DHCP et la configuration est transparente pour l'utilisateur de l'ordinateur.

Installation

À l'invite du terminal, entrez la commande suivante pour installer dhcpd:

sudo apt-get install dhcp3-server

Vous devrez probablement modifier la configuration par défaut en modifiant /etc/dhcp3/dhcpd.conf pour répondre à vos besoins et à votre configuration particulière.

Vous devez également modifier /etc/default/dhcp3-serverpour spécifier les interfaces que dhcpd doit écouter. Par défaut, il écoute eth0.

Configuration

Le message d'erreur avec lequel l'installation se termine peut être un peu déroutant, mais les étapes suivantes vous aideront à configurer le service:

Le plus souvent, vous souhaitez attribuer une adresse IP au hasard. Cela peut être fait avec les paramètres suivants:

nano -w /etc/dhcp3/dhcpd.conf
# Sample /etc/dhcpd.conf
# (add your comments here) 
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;
} 

Ainsi, le serveur DHCP attribuera au client une adresse IP de la plage 192.168.1.10-192.168.1.100 ou 192.168.1.150-192.168.1.200. Il louera une adresse IP pendant 600 secondes si le client ne demande pas de délai spécifique. Sinon, le bail maximum (autorisé) sera de 7200 secondes. Le serveur "informera" également le client qu'il doit utiliser 255.255.255.0 comme masque de sous-réseau, 192.168.1.255 comme adresse de diffusion, 192.168.1.254 comme routeur / passerelle et 192.168.1.1 et 192.168.1.2 comme serveurs DNS.

Si vous devez spécifier un serveur WINS pour vos clients Windows, vous devrez inclure l'option netbios-name-servers, par exemple:

nano -w /etc/default/dhcp3-server
option netbios-name-servers 192.168.1.1; 

dhcp3-server et plusieurs interfaces

exemple d'interfaces multiples

Interface

nano -w /etc/network/interfaces
auto lo
iface lo inet loopback

mapping hotplug
        script grep
        map eth1

iface eth1 inet dhcp

auto eth0
iface eth0 inet static
    address 10.152.187.1
    netmask 255.255.255.0

auto wlan0
  iface wlan0 inet static
    address 192.168.1.1
    netmask 255.255.255.0
    up     /sbin/iwconfig wlan0 mode TTTTTT && /sbin/iwconfig wlan0 enc
restricted && /sbin/iwconfig wlan0 key [Y] XXXXXXXX && /sbin/iwconfig
wlan0 essid SSSSSSSS

auto eth1

Sélectionnez la carte d'interface

nano -w /etc/default/dhcp3-server
INTERFACES="wlan0 eth0"

Configurer le sous-réseau

nano -w /etc/dhcp3/dhcpd.conf
ddns-update-style none;
log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 {

        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        192.168.1.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              192.168.1.1;
        option netbios-name-servers     192.168.1.1;
        option netbios-node-type 2;
        default-lease-time 86400;
        max-lease-time 86400;

        host bla1 {
                hardware ethernet DD:GH:DF:E5:F7:D7;
                fixed-address 192.168.1.2;
        }
        host bla2 {
                hardware ethernet 00:JJ:YU:38:AC:45;
                fixed-address 192.168.1.20;
        }
}

subnet  10.152.187.0 netmask 255.255.255.0 {

        option routers                  10.152.187.1;
        option subnet-mask              255.255.255.0;
        option broadcast-address        10.152.187.255;
        option domain-name-servers      194.168.4.100;
        option ntp-servers              10.152.187.1;
        option netbios-name-servers     10.152.187.1;
        option netbios-node-type 2;

        default-lease-time 86400;
        max-lease-time 86400;

        host bla3 {
                hardware ethernet 00:KK:HD:66:55:9B;
                fixed-address 10.152.187.2;
        }
}

Vérifier l'itinéraire

ip route
192.168.1.0/24 dev wlan0  scope link
82.16.TT.0/24 dev eth1  scope link
10.152.187.0/24 dev eth0  scope link
default via 82.16.TT.UU dev eth1
Eliah Kagan
la source