Translation(s): Deutsch - English - Français - Italiano - 简体中文 - Русский

(!) ?Discussion

Introdução

Quando você configura uma rede local (LAN), um cliente precisa ter certas informações, como o endereço IP de sua interface, o endereço IP de pelo menos um servidor de nome de domínio e o endereço IP de um servidor na LAN que serve como um roteador para a internet. Na configuração manual, você deve digitar essas informações para cada cliente novamente. Com o protocolo de configuração dinâmica (Dynamic Host Configuration Protocol - DHCP), os computadores podem fazer isso automaticamente por você. Isso é particularmente conveniente para conectar notebooks à rede.

Para uma configuração simples de sua rede, você pode configurar um computador (por exemplo, aquele conectado à Internet) como um servidor DHCP e cada um dos outros computadores como um Cliente DHCP.

Instalação

Como de costume, a instalação é muito simples com o apt. Como root simplesmente execute

root# apt-get install isc-dhcp-server

ou

root# aptitude install isc-dhcp-server

Configuração

Primeiro você deve editar ou criar o arquivo /etc/default/isc-dhcp-server com permissões de root, seja executando dpkg-reconfigure isc-dhcp-server ou digite algo como isto no arquivo /etc/default/isc-dhcp-server:

INTERFACES="eth0"

O arquivo de configuração principal de um servidor DHCP é o /etc/dhcp/dhcpd.conf. Lembre-se de fazer uma cópia de backup antes de editar o arquivo.

Configuração básica

Para uma configuração básica, você precisa adicionar/editar as seguintes linhas no /etc/dhcp/dhcpd.conf. Eu deixaria todas as outras linhas como elas são.

option domain-name "spices.org";

Esta entrada fornece o nome do domínio, spices.org neste caso (não tenho certeza se e para que isso é necessário. Eu acho que é necessário se você quiser se referir a computadores na LAN por nome sem nome de domínio, ou seja, se você quiser se referir ao computador pepper.spices.org apenas com pepper.).

option domain-name-servers 213.191.92.86, 213.191.74.18;

Essa entrada fornece os endereços IP de dois servidores de nomes de domínio (DNS), mas um já seria suficiente. Você tem que listar aqui o DNS que funciona para o seu provedor de internet, os endereços indicados aqui provavelmente não funcionarão para você.

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.1 192.168.1.10;
  option routers pepper.spices.org;
}

Esta entrada define a rede local e o roteador da rede local. Os endereços IP 192.168.1.1 a 192.168.1.255 são típicos de uma intranet. Aqui apenas o intervalo 192.168.1.1 a 192.168.1.10 é permitido. pepper.spices.org é nesse caso o servidor conectado à internet que serve como um roteador.

Para tornar suas mudanças efetivas, você precisa reiniciar o dhcp-demon. Executar como root

root# /etc/init.d/isc-dhcp-server restart # new version
root# /etc/init.d/dhcp3-server restart # old version

Configuração avançada

Atribuir endereços fixos

Para atribuir um endereço fixo, por ex. 192.168.1.5, para uma máquina específica, por exemplo cinnamon, adicione uma declaração como a seguinte no arquivo de configuração.

host cinnamon {
  hardware ethernet 00:0D:87:B3:AE:A6;
  fixed-address 192.168.1.5;
}

O número críptico 00: 0D: 87: B3: AE: A6 é o endereço de hardware da interface de cinnamon. Ele identifica o cliente para o servidor. Você pode obtê-lo executando o comando ifconfig no cliente, se a interface estiver ativa.

O nome (cinnamon) dado aqui é bastante arbitrário neste momento e não é usado para nada ainda, tanto quanto eu posso dizer.

Mais informações

Consulte as páginas do manual para opções avançadas.

user> man dhcpd.conf 

Iniciar o servidor DHCP

Você pode testar seu servidor DHCP sem reiniciar:

sudo service isc-dhcp-server stop
sudo service isc-dhcp-server start
sudo ifdown eth0
sudo ifup eth0

Para ver as mensagens de erro do servidor DHCP ou ver quando um dispositivo capturou um IP desse servidor DHCP:

sudo tail /var/log/syslog

Para ver se o daemon do servidor DHCP está em execução:

ps ax | grep dhcpd

Exemplos de um servidor DHCP simples

Se você quiser que o seu computador seja o servidor DHCP de uma rede ethernet, usando o endereço IP 192.168.1.100 para o seu computador e 192.168.1.101 ou superior para os outros computadores, você pode usar estas configurações:

Conteúdo de "/etc/network/interfaces":

# The loopback network interface (always required)
auto lo
iface lo inet loopback

# Assign a static IP for this DHCP server through eth0:
auto eth0
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    broadcast 192.168.1.255
    gateway 192.168.1.1

Conteúdo do "/etc/resolv.conf":

# Use Google public DNS server:
nameserver 8.8.8.8
nameserver 8.8.4.4
# (or use faster values that your internet provider gave you!)

Conteúdo do "/etc/dhcp/dhcpd.conf:

option domain-name "mydebian";
# Use Google public DNS server (or use faster values that your internet provider gave you!):
option domain-name-servers 8.8.8.8, 8.8.4.4;
# Set up our desired subnet:
subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.101 192.168.1.254;
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.1.255;
    option routers 192.168.1.100;
    option domain-name-servers home;
}
default-lease-time 600;
max-lease-time 7200;
# Show that we want to be the only DHCP server in this network:
authoritative;

Depois de executar o servidor DHCP (como mencionado acima ou reinicializando), você deve poder conectar seus outros dispositivos à rede e eles devem receber endereços DHCP automaticamente. Para garantir que um computador esteja configurado para obter seu endereço IP usando o DHCP, coloque isso em "/etc/network/interfaces":

# The loopback network interface (always required)
auto lo
iface lo inet loopback

# Get our IP address from any DHCP server
auto eth0
iface eth0 inet dhcp

(Ou faça o equivalente usando o Network Manager ou outro programa para configurar o dispositivo que está configurando sua rede)