Configurando um servidor DHCP
Um servidor DHCP livre é o ISC dhcpd. Na
&debian;, ele está disponível no pacote dhcp.
Aqui está um modelo de configuração deste pacote (normalmente
/etc/dhcpd.conf):
option domain-name "exemplo.com";
option domain-name-servers ns1.exemplo.com;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
server-name "servername";
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.200 192.168.1.253;
option routers 192.168.1.1;
}
host clientname {
filename "/tftpboot/tftpboot.img";
server-name "servername";
next-server servername;
hardware ethernet 01:23:45:67:89:AB;
fixed-address 192.168.1.90;
}
Nota: O novo (e preferido) pacote dhcp3 utiliza o
arquivo de configuração /etc/dhcp3/dhcpd.conf.
Neste exemplo, existe somente um servidor
"servername" que faz todo o trabalho
do DHCP, servidor, servidor TFTP e gateway de rede. Você precisará
modificar as opções domain-name assim como o nome do servidor e
endereço de hardware do cliente. A opção "filename"
deve ter o nome do arquivo que será baixado via TFTP.
Após editar o arquivo de configuração dhcpd,
reinice-o com /etc/init.d/dhcpd restart.
Habilitando a inicialização através de PXE no servidor DHCP
Aqui está outro exemplo para o dhcp.conf usando o
método Pre-boot Execution Environment (PXE) do TFTP.
option domain-name "exemplo.com";
default-lease-time 600;
max-lease-time 7200;
allow booting;
allow bootp;
# The next paragraph needs to be modified to fit your case
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.200 192.168.1.253;
option broadcast-address 192.168.1.255;
# the gateway address which can be different
# (access to the internet for instance)
option routers 192.168.1.1;
# indicate the dns you want to use
option domain-name-servers 192.168.1.3;
}
group {
next-server 192.168.1.3;
host tftpclient {
# tftp client hardware address
hardware ethernet 00:10:DC:27:6C:15;
filename "/tftpboot/pxelinux.0";
}
}
Note que para a inicialização via PXE, o nome do arquivo do
cliente pxelinux.0 é o gerenciador de partida,
e não a imagem do kernel (veja abaixo).