Como instalo e configuro um servidor DHCP?

55

Como instalar e configurar um servidor DHCP no Ubuntu 12.04?

Preciso de um tutorial passo a passo, se alguém tiver um.

Galgalesh
fonte
não é o mais user-amigo, mas: help.ubuntu.com/community/dhcp3-server
adempewolff
11
Pode ser o mesmo, mas ... comtech247.net/2012/05/01/…
Mitch
2
"Observe que, no Ubuntu 12.04, o servidor ISC DHCP é um pacote de transição para o dhcp3-server." wiki.openelec.tv/…
11
Eu prefiro dnsmasq, um servidor DNS e DHCP com sintaxe simples do arquivo de configuração.
Reinier pós

Respostas:

55

A primeira coisa que você precisa fazer é instalar os pacotes que precisamos.

Abra um terminal e digite:

sudo apt-get install isc-dhcp-server

Existem dois arquivos principais /etc/default/isc-dhcp-servere /etc/dhcp/dhcpd.confque precisaremos configurar, então vamos pegar o primeiro.

Abra um terminal e use seu tipo de editor de texto favorito:

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

Você deve obter o seguinte:

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

Substitua eth0 acima pelo nome da sua interface de rede na qual você deseja que o servidor conceda endereços. Para o próximo arquivo.

Abra um terminal e digite:

sudo vim /etc/dhcp/dhcpd.conf

o que deve fornecer a saída abaixo.

#
#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;
 ......
}

Isso precisa de um pouco de explicação.

  1. Ajuste suas configurações de acordo com os requisitos de sua rede.
  2. O nome do domínio da opção é o nome da sua zona DNS. Por exemplo, o meu está definido como comtech.com.
  3. Intervalo deve ser o intervalo de endereços IP que você deseja que o servidor distribua aos clientes.

Agora reinicie o serviço dhcp digitando:

sudo service isc-dhcp-server restart

É isso aí!! Seu servidor dhcp deve estar em execução, no entanto, é melhor verificar. Abra um terminal e digite:

sudo netstat -uap

que irá mostrar-lhe algo como o seguinte (procure dhcpd, nmbde 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
fonte
11
Apenas uma palavra de cautela, certifique-se de uso /etc/dhcp/dhcpd.confe não /etc/dhcp3/dhcpd.conf
puk
11
Quando eu reiniciar o serviço esta mensagem é mostrada: stop: Unknown instance: isc-dhcp-server start/running, process 3027. Não consigo iniciar o serviço. Eu uso o Ubuntu 13.10.
JJD
11
Boa . mas certifique-se que você atribuiu b4 IP estático iniciar o serviço DHCP
Krizna
Isso não é tão difícil, mas usar dnsmasqé mais fácil se você me perguntar.
Reinier pós
5

Coisas adicionais podem ser incluídas na resposta aceita

  1. Atribua IP estático antes de iniciar o serviço isc-dhcp-server.

  2. Você pode reservar IP para dispositivos como impressoras e máquinas Linux, adicionando o ID MAC no formato abaixo, dentro da sub-rede específica.

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

    Dhcp3-server Wiki da Comunidade

    Servidor DHCP do Ubuntu

ubuntuhelp
fonte
1

Na página da comunidade Ubuntu, dhcp3-server, por Contribuintes no wiki de documentação do Ubuntu :

Protocolo de configuração dinâmica de host (DHCP)

O DHCP (Dynamic Host Configuration Protocol) é um serviço de rede que permite que computadores host sejam automaticamente atribuídos configurações de um servidor em vez de configurar manualmente cada host de rede. Os computadores configurados para serem clientes DHCP não têm controle sobre as configurações que recebem do servidor DHCP e a configuração é transparente para o usuário do computador.

Instalação

Em um prompt do terminal, digite o seguinte comando para instalar o dhcpd:

sudo apt-get install dhcp3-server

Você provavelmente precisará alterar a configuração padrão editando /etc/dhcp3/dhcpd.conf para atender às suas necessidades e configurações específicas.

Você também precisa editar /etc/default/dhcp3-serverpara especificar as interfaces que o dhcpd deve ouvir. Por padrão, ele escuta eth0.

Configuração

A mensagem de erro com a qual a instalação termina pode ser um pouco confusa, mas as etapas a seguir ajudarão você a configurar o serviço:

Geralmente, o que você deseja fazer é atribuir um endereço IP aleatoriamente. Isso pode ser feito com as configurações da seguinte maneira:

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

Isso resultará no servidor DHCP fornecendo ao cliente um endereço IP do intervalo 192.168.1.10-192.168.1.100 ou 192.168.1.150-192.168.1.200. Ele concederá um endereço IP por 600 segundos se o cliente não solicitar um período de tempo específico. Caso contrário, a concessão máxima (permitida) será de 7200 segundos. O servidor também "aconselha" o cliente a usar 255.255.255.0 como máscara de sub-rede, 192.168.1.255 como endereço de broadcast, 192.168.1.254 como roteador / gateway e 192.168.1.1 e 192.168.1.2 como servidores DNS.

Se você precisar especificar um servidor WINS para seus clientes Windows, precisará incluir a opção netbios-name-servers, por exemplo

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

dhcp3-server e múltiplas interfaces

exemplo de múltiplas interfaces

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

Selecione o cartão de interface

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

Configurar sub-rede

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

Verificar rota

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
fonte