sexta-feira, 4 de janeiro de 2013

DHCP em Ubuntu Server

Olá Pessoal!

Hoje a dica é muito simples e de muita importância e utilidade para nós Administradores de Redes, é o DHCP (Dynamic Host Configuration Protocol). Em suma o DHCP distribui endereços IP na  rede de forma "automática" dando um prazo de concessão a eles. Não precisamos de uma máquina física para ser o nosso DHCP Server um modem ADSL pode ser nosso servidor de DHCP, um roteador Wireless enfim.. Mas sempre lembrando que um (somente um) equipamento ou máquina deve ser nosso servidor de DHCP por segmento de rede. Aqui podemos ter uma breve explicação teórica sobre o protocolo DHCP.

Mas como o nosso negócio é configurar então:

#Cenário
Vou usar Ubuntu Server versão 11.04 para ser o servidor e um Windows Xp como cliente.
Rede: 192.168.254.0
Mascara: /26 = 255.255.255.192
Range: 192.168.254.1 à 192.168.254.62 (vamos liberar somente 25 ip's)
Broadcast: 192.168.254.63

O ip do servidor de DHCP é 192.168.254.62/26

Let's Go!

Primeiro devemos instalar o serviço de dhcp-server no nosso servidor

#apt-get install dhcp3-server



Esperamos o download/instalação terminar podemos entrar na pasta de configuração do DHCP

#cd /etc/dhcp
#ls

Note que visualizamos o arquivo dhcpd.conf que é o arquivo que vai conter os parâmetros da nossa configuração


* Muitos técnicos criam uma cópia de segurança do dhcpd.conf mas isso fica a seu critério caso queria criar o comando é:

#cp dhcpd.conf dhcpd.conf.bkp


Feito ou não a cópia vamos editar o arquivo dhcpd.conf. Eu prefiro excluir todo o conteúdo e fazer a configuração do meu jeito

# > dhcpd.conf    

Pronto! arquivo vazio (barbada né!?)

Esse é o nosso arquivo de configuração com os parâmetros do cenário mencionado lá no inicio do post

############inicio do arquivo###########

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;

subnet 192.168.254.0 netmask 255.255.255.192 {
   range 192.168.254.1 192.168.254.25;
   option routers 192.168.254.62;
   option domain-name-servers 8.8.8.8, 8.8.4.4;
   option broadcast-address 192.168.254.63;
}

###########fim do arquivo####################


Agora copiamos o conteúdo do acima e colamos no nosso dhcpd.conf

# vim dhcpd.conf 



Agora vamos entender o porque de cada linha: 

#default-lease-time 600; 
Controla o tempo de renovação do IP, estes 600 indica que o servidor irá verificar a cada 10 minutos se o IP está sendo usado para passar para outro computador na rede, caso ele não esteja sendo usado. 

#max-lease-time 7200; 
Esta linha determina o tempo que cada máquina pode usar um determinado IP. 

#authoritative; 
Indica que o servidor DHCP será autoritário em todo o seguimento da rede;

#subnet 192.168.254.0 netmask 255.255.255.192 { 
Define a rede 192.168.254.0 com a máscara 255.255.255.192, e abre o bloco com { 

#range 192.168.254.1 192.168.254.25; 
Define o range, a ser liberado pelo servidor. 

#option routers 192.168.254.62; 
Gateway padrão. 

#option domain-name-servers 8.8.8.8, 8.8.4.4; 
DNS's publicos do Google primario e secundário respectivamente

#option broadcast-address 192.168.254.63; }
Aqui, estamos definindo o endereço de broadcast e fechando o bloco com }



Agora iremos definir em qual placa de rede o dhcp server irá trabalhar:

# cd /etc/default/
# vim isc-dhcp-server


Defina a placa comentando a linha interfaces (no meu caso estou usando a eth1), salve e saia


Podemos iniciar o serviço de dhcp

# /etc/init.d/isc-dhcp-server start 
ou
# service dhcpd3-server start


Nosso servidor esta pronto! agora vamos ver se a máquina cliente "pegou" o endereço dentro da nossa range:


Tudo certo! Veja que pegou o primeiro ip do Range e mascara e note que o tempo de concessão é de 10 minutos conforme configurado.

Agora vamos supor que temos uma impressora até mesmo um computador que precise ficar sempre com o mesmo ip 192.168.254.29/26. É muito simples, basta pegarmos o MAC Address do dispositivo e incluirmos esta linha no dhcpd.conf:

host printer {
hardware ethernet 08:00:07:26:c0:a5;
fixed-address 192.168.254.29;
}


Nosso arquivo padrão ficaria assim:

############inicio do arquivo###########

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
authoritative;

subnet 192.168.254.0 netmask 255.255.255.192 {
   range 192.168.254.1 192.168.254.25;
   option routers 192.168.254.62;
   option domain-name-servers 8.8.8.8, 8.8.4.4;
   option broadcast-address 192.168.254.63;
}

host printer {
hardware ethernet 08:ff:07:26:c0:a5;
fixed-address 192.168.254.29;
}

###########fim do arquivo####################

Bom pessoal, como podemos ver o dhcp é muito simples de configurar só temos de ter definido tudo antes para não termos nenhum problema

Não deixem de postar suas dúvidas ou sugestões!

Um Grande Abraço!

:wq