>_Dhcp

Introdução teórica

O DHCP Dynamic Host Configuration Protocol é um protocolo que funciona nas camadas 2 e 3 do modelo OSI e é amplamente utilizado para oferecer endereçamento IP á um host que ainda não está configurado, o que oferece uma flexibilidade ao Administrador de Sistema. O protocolo DHCP opera da seguinte forma:

DHCPDISCOVER – Um cliente envia um quadro broadcast (destinado a todas as máquinas) com um pedido DHCP;

DHCPOFFER – O servidor DHCP captura o quadro  e oferece um endereço IP ao cliente;

DHCPREQUEST – O cliente envia um DHCP REQUEST endereçado para o servidor DHCP aceitando o IP;

DHCPACK – Esse é o pacote que confirma a atribuição de uma configuração de rede a um cliente, ou seja, aquele cliente agora possui configurações distribuídas pelo servidor DHCP;

DHCPNAK – Caso o cliente não aceite aquele endereço IP, ele enviará um DHCPNAK para o servidor, e realizará o DHCPDISCOVER novamente.

O DHCP oferece três tipos de alocação de endereço IP:

Atribuição manual – Quando desejamos que certo cliente tenha determinado endereço IP, temos que “amarrar” o endereço MAC da máquina do cliente no endereço IP desejado. O servidor de DHCP descobre o MAC ADDRESS do cliente através do DHCPDISCOVER, assim identificando quais são as máquinas que irão receber configurações personalizadas;

Atribuição automática – Onde o cliente obtém um endereço de um espaço de endereços possíveis chamado de range, especificado pelo administrador. Geralmente não existe vínculo entre os vários MAC’s habilitados a esse espaço de endereços. Assim que o cliente se loga pela primeira vez na rede, ele recebe um endereço definitivo;

Atribuição dinâmica – O único método que dispõe a reutilização dinâmica dos endereços. O administrador disponibiliza um espaço de endereço possíveis, e cada cliente terá o software TCP/IP da sua interface de rede configurados para requisitar um endereço por DHCP assim que a máquina inicialize. A alocação utiliza um mecanismo de aluguel do endereço, caracterizado por um tempo de vida. Após a máquina se desligar, o tempo de vida naturalmente irá expirar, e da próxima vez que o cliente se ligue, o endereço provavelmente será outro.

Algumas implementações do software servidor de DHCP permitem ainda a atualização dinâmica dos servidores de DNS para que cada cliente disponha também de um DNS. Este mecanismo utiliza o protocolo de atualização do DNS especificado no RFC 2136.

Configurando um servidor DHCP

1 – instale o pacote do servidor dhcp3 no Debian.

# apt-get install dhcp3-server

1 – instale o pacote do servidor dhcp no CentOS.

# yum install dhcp

Configurando no Debian o serviço DHCP

2 – O arquivo de configuração é o dhcpd.conf no exemplo abaixo, ele fica dentro de /etc/dhcp3.

# vim /etc/dhcp3/dhcpd.conf
ddns-update-style none;

subnet 192.168.0.5 netmask 255.255.255.224 {

range 192.168.0.10 192.168.0.20;
 option subnet-mask 255.255.255.224;
 option domain-name "seu-dominio.com.br";
 option domain-name-servers 192.168.0.6;
 option routers 192.168.0.2;
 default-lease-time 600;
 max-lease-time 7200;

}

Acima temos uma configuração bem básica do serviço DHCP no Debian.

1

2

3

Configurando no CentOS o serviço DHCP

# vim /etc/dhcpd.conf

ddns-update-style interim;
 ignore client-updates;

subnet 192.168.0.0 netmask 255.255.255.224 {

# --- default gateway
 option routers                  192.168.0.2;
 option subnet-mask              255.255.255.224;

option nis-domain               "emc.local";
 option domain-name              "emc.local";
 option domain-name-servers      192.168.0.6;

option time-offset              -18000; # Eastern Standard Time
 #       option ntp-servers              192.168.0.2;
 #       option netbios-name-servers     192.168.0.6;
 # --- Selects point-to-point node (default is hybrid). Don't change this unless
 # -- you understand Netbios very well
 #       option netbios-node-type 2;

range dynamic-bootp 192.168.0.10 192.168.0.20;
 default-lease-time 21600;
 max-lease-time 43200;

# we want the nameserver to appear at a fixed address
 host ns {
 next-server corcel.emc.local;
 hardware ethernet 12:34:56:78:AB:CD;
 fixed-address 192.168.0.7;
 }
 }

Ative o DHCP para iniciar junto com o boot do sistema (CentOS)

 /etc/rc3.d/

Principais diretrizes do arquivo de configuração

default-lease-time 600 – Servidores DHCP cedem endereços sob pedido por um tempo pré-determinado. O padrão nesse exemplo é ceder o endereço IP por 600 segundos, ou 10 minutos;

max-lease-time 7200 – Caso o cliente solicite um tempo maior, o tempo máximo permitido será de 7.200 segundos (2 horas);

option subnet-mask 255.255.255.0 – Essa opção define a máscara de subrede a ser fornecida aos clientes;

option broadcast-address 192.168.200.255 – Essa opção define o endereço de envio para requisições de broadcast;

option routers – 192.168.0.2 – O cliente além do número IP, recebe também a informação do número do host que é o gateway de sua rede;

option domain-name-servers – 192.168.0.6 – Essa opção lista os servidores de nomes (DNS) a serem utilizados para resolução de nomes;

option domain-name emc.local – O nome de domínio do cliente.

Configurando os clientes DHCP

1 – Do lado cliente, temos duas opções para fins de teste

# dhclient

Caso não tenha o comando dhclient

# aptitude install dhcp3-client
# yum install dhclient

# vim /etc/network/interface (Debian)
# vim /etc/sysconfig/network-scripts/ifcfg-ethX (CentOS)

auto ethX
iface ethX inet dhcp

Para visualizar a placa de rede que está utilizando

# mii-tool

2 – Este é o arquivo onde ficam registrados os empréstimos de IP’s.
# more /var/lib/dhcp3/dhcpd.leases (Debian)

# more /var/lib/dhcpd/dhcpd.leases (CentOS)

Fixar IP via DHCP

É possível fixar o IP via DHCP para máquinas respectivas. Para isso, precisamos associar o MAC ADDRESS da placa com um IP.

1 – Considere que:

micro1 tenha o endereço físico 00:80:c7:d2:f8:d5 e ele precisa ter o ip fixado 192.168.0.20
micro2 tenha o endereço físico 88:3d:be:00:c7:00 e ele precisa ter o ip fixado 192.168.0.19

Para esse cenários ser possível, seria necessária a respectiva entrada no arquivo de configuração do dhcp.conf

host micro1 {
 hardware ethernet 00:80:c7:d2:f8:d5;
 fixed-address 192.168.0.20;
 }
host micro2 {
 hardware ethernet 88:3d:be:00:c7:00;
 fixed-address 192.168.0.19;
 }

O arquivo /etc/dhcp3/dhcpd.conf ficaria assim:

# vim /etc/dhcp3/dhcpd.conf
ddns-update-style none;

subnet 192.168.0.5 netmask 255.255.255.224 {

range  dynamic-bootp 192.168.0.10 192.168.0.20;

option subnet-mask 255.255.255.224;
 option domain-name "seu-dominio.com.br";
 option domain-name-servers 192.168.0.6;
 option routers 192.168.0.2;
 default-lease-time 21600;
 max-lease-time 43200;

host micro1 {
 hardware ethernet 00:80:c7:d2:f8:d5;
 fixed-address 192.168.0.20;
 }

host micro2 {
 hardware ethernet 88:3d:be:00:c7:00;
 fixed-address 192.168.0.19;

}
 }

Para habilitar o suporte ao servidor dinâmico, utilize a opção:

dynamic-bootp

Já no CentOS, não é necessário inserir esse comando.

Existem outras opções que podem ser inserida no arquivo de configuração do DHCP, como exemplo o PXE (boot pela placa de rede).  O legal é estudar a sua necessidade e implementar outras opções dentro desse arquivo.

Até a próxima

>_Dhcp
Tagged on:

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

%d blogueiros gostam disto: