Olá pessoal, continuando nosso artigo veremos neste texto como configurar nosso servidor DHCP para que ele tenha uma faixa livre de IPs e que determinados endereços fiquem fixos em algumas máquinas de acordo com o MAC de placa de rede.
 
Esse recurso é usado em redes de terminais leves, para que o servidor "reconheça" os terminais e possa enviar a configuração adequada a cada um, mas pode ser usado em outras situações, como, por exemplo, em uma pequena rede, onde alguns micros compartilham impressoras e arquivos e, por isso, não podem ficar mudando de endereço IP a cada reboot.
Configurar o servidor DHCP para dar a eles sempre o mesmo IP pode ser mais prático que configurá-los para usar IP fixo manualmente, pois eles continuarão recebendo o mesmo IP mesmo que você reinstale o sistema (pois, apesar da mudança de sistema operacional, a placa de rede continuará a mesma).
Para usar este recurso basta adicionar as seguintes linhas no final do arquivo dhcpd.conf, sendo cada conjunto de linhas responsável por uma máquina:
 
host maquina01{
hardware ethernet 00:03:0D:7C:CF:A5;
fixed-address 192.168.1.10;
}

Segue baixo um arquivo de exemplo:


###ARQUIVO EXEMPLO SIMPLES DE CONFIGURAÇÃO DO SERVIDOR DHCP
authoritative;
  
ddns-update-style none;
  
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.0.199;
option routers 192.168.1.1;
option domain-name-servers 200.204.0.10, 200.204.0.138;
option broadcast-address 192.168.0.255;
host maquina01 {
hardware ethernet 00:03:0D:7C:CF:A5;
fixed-address 192.168.1.10;
}
host maquina02 {
hardware ethernet 00:0F:B0:45:BC:17;
fixed-address 192.168.1.11;
}
}
###FIM 



host: coloca o nome da maquina. (não pode ter espaços em branco entre o nome).
hardware ethernet: coloca o MAC da placa de rede.
fixed-address: coloca o endereço Ip que ficara fixo para aquela placa.

Feito isso basta salvar o arquivo e reiniciar o servidor DHCP com o comando:


$ sudo gedit /etc/default/dhcp3-server


Nosso arquivo exemplo tem como características:
distribuir Ips automáticos da faixa 192.168.1.100 até 192.168.100.199
reservar 2 Ip, sendo para maquina01 - 192.168.1.10 e para maquina02 192.168.1.11
Os demais endereços poderam ser programados manualmente.

Obs1:
Verificar se realmente a placa que será usada pelo servidor DHCP está correta verificando o arquivo dhcp3-server com o comando:


$sudo gedit /etc/default/dhcp3-server


No caso acima usei a interface "eth1".
Dica:
Quando você troca uma placa de rede o Linux poderá automaticamente renomeá-la para (ethX), fazendo com que sua conexão continue sem funcionar, isso acontece porque o Linux identifica a placa de rede pelo seu endereço MAC (que é único).
Para alterar o nome da placa de rede basta alterar o seguinte arquivo com o comando:


$sudo gedit /etc/udev/rules.d/70-persistent-net.rules


Obs2: No comando acima onde está o número 70 pode mudar conforme a distribuição Linux.

O seguinte arquivo será aberto, bastando ir em NAME e alterar o nome da placa e em seguida salvar.


####################################################
# This file maintains persistent names for network interfaces.
# See udev(7) for syntax.
#
# Entries are automatically added by the 75-persistent-net-generator.rules
# file; however you are also free to add your own entries.

# PCI device 0x13f0:0x0200 (sundance)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:06:4f:4b:8e:1f", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x1106:0x3065 (via-rhine)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:d8:af:4d:e9", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x10ec:0x8185 (rtl8180)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:18:e7:1c:2f:a6", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
####################################################


Espero que tenham gostado, qualquer crítica ou sugestão deixem um comentário. Até o próximo artigo.