o que é DHCP?
DHCP significa Dynamic Host Configuration Protocol. DHCP é um protocolo de rede padronizado usado em redes de Protocolo de Internet para distribuição dinâmica de Parâmetros de configuração de rede, tais como endereços IP para interfaces e serviços. Servidor DHCP pode ser qualquer servidor (Linux ou Windows) que é usado para distribuir endereços IP automaticamente para os clientes na rede. Uma vez que, o servidor DHCP atribui endereços IP automaticamente para todos os sistemas, um sistema ou administrador de rede não precisa atribuir endereços IP manualmente para cada máquina na rede. DHCP é optar por sistema ou administrador de rede que está gerenciando milhares de sistemas.
neste tutorial, vamos ver como instalar e configurar o servidor DHCP nos sistemas CentOS e Ubuntu. Para o propósito deste tutorial, eu estarei usando os seguintes três sistemas:
- CentOS 7 64bit Minimal server (Servidor DHCP)
- Ubuntu 15.04 64bit Minimal server (DHCP Server)
- Ubuntu 14.04 Desktop (DHCP Client)
uma nota de aviso: não use dois ou mais servidores DHCP ao mesmo tempo em sua rede. Os sistemas clientes podem não ser capazes de obter endereços IP a partir dos múltiplos servidores DHCP e isso leva à questão de conflito de endereço IP. Se o seu Router ou Switch tiver a funcionalidade DHCP activada por omissão, terá de a desligar também.
mais importante, você deve atribuir um endereço IP estático para o cartão de interface de rede do seu servidor DHCP.
Instale o servidor DHCP em CentOS
Primeiro vamos ver como instalar e configurar o servidor DHCP em CentOS 7 64bit. Os mesmos passos trabalharão em CentOS 6.x e outras versões mais antigas.
Log in as root user.
to install DHCP server on CentOS system, run:
yum install dhcp
1.1 Configuration
In CentOS 6.x systems, temos de atribuir a interface em que deseja que o seu servidor DHCP seja executado no ficheiro /etc/sysconfig/dhcpd. No meu caso, eu tenho apenas uma Interface no meu sistema (eth0), então eu atribuí eth0.
aviso: este ficheiro já não é usado em CentOS 7.x systems. Se você está aqui para restringir o que interfaces devem dhcpd ouvir, esteja ciente de que dhcpd escuta *somente* em interfaces para as quais ele encontra declaração de sub-rede em dhcpd.conf. Isso significa que a enumeração explícita de interfaces também na linha de comando não deve ser necessária na maioria dos casos.
se utilizar CentOS 6.x system, edit file /etc/sysconfig/dhcpd,
vi /etc/sysconfig/dhcpd
Assign the network interface:
# Command line options hereDHCPDARGS=eth0
Save and close the file.
Then, copy the sample dhcp configuration file to /etc/dhcp/ directory.
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
Now, edit dhcpd.conf file,
vi /etc/dhcp/dhcpd.conf
Make the changes as shown below.
define o nome de domínio e o domínio-servidores de nome:
# option definitions common to all supported networks... option domain-name "unixmen.local"; option domain-name-servers server.unixmen.local;
Se o servidor DHCP é o oficial do servidor DHCP para a rede local, você deve descomentar a seguinte linha:
authoritative;
Definir o sunbet, intervalo de endereços ip, domínio e servidores de nome de domínio, como abaixo:
# A slightly different configuration for an internal subnet. subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.20 192.168.1.30; option domain-name-servers server.unixmen.local; option domain-name "unixmen.local"; option routers 192.168.1.1; option broadcast-address 192.168.1.255; default-lease-time 600; max-lease-time 7200; }
Se quiser atribuir um endereço IP fixo ao seu cliente, deverá indicar o seu ID MAC e o endereço IP na seguinte directiva. Por exemplo, eu quero atribuir um endereço IP fixo 192.168.1.15 para o meu cliente Ubuntu, Portanto eu modifiquei a seguinte diretiva como mostrado abaixo.
host ubuntu-client { hardware ethernet 00:22:64:4f:e9:3a; fixed-address 192.168.1.15; }
depois de fazer todas as alterações que deseja, salve e feche o ficheiro. Tenha em atenção que se você tiver outras entradas não utilizadas no dhcpd.conf file, comente-os. Caso contrário, você terá problemas ao iniciar o serviço dhcpd.
agora, Inicie o serviço dhcpd e faça com que ele comece automaticamente em cada reinicialização.
em CentOS 7.x sistemas:
systemctl enable dhcpd
systemctl start dhcpd
No CentOS 6.x sistemas:
service dhcpd start
chkconfig dhcpd on
Que é isso. Agora, vá para a seção ‘Configurar os clientes DHCP’ e configure seus clientes para obter endereços IP automaticamente do servidor DHCP.
alguns de vocês podem querer configurar o servidor DHCP nos sistemas Ubuntu. Se for um deles, consulte a secção seguinte.
Instale o servidor DHCP no Ubuntu
deixe-nos ver como instalar e configurar o servidor DHCP no servidor Ubuntu 15.04 64 bit.
para instalar o servidor DHCP no Ubuntu 15.04, indique o seguinte comando:
sudo apt-get install isc-dhcp-server
2.1 Configuração
configuração do servidor DHCP não é tão difícil. Primeiro, temos que atribuir em que interfaces o servidor DHCP (dhcpd) deve servir os pedidos DHCP. No meu caso, eu tenho apenas uma Interface no meu sistema (eth0), então eu atribuí eth0.
Para fazer isso, edite o arquivo /etc/default/isc-dhcp-server,
sudo vi /etc/default/isc-dhcp-server
Atribuir a interface de rede:
INTERFACES="eth0"
gravar e fechar o ficheiro.
agora, edite dhcpd.conf file,
sudo vi /etc/dhcp/dhcpd.conf
Make the changes as shown below.
define o nome de domínio e o domínio-servidores de nome:
# option definitions common to all supported networks... option domain-name "unixmen.local"; option domain-name-servers server.unixmen.local;
Se o servidor DHCP é o oficial do servidor DHCP para a rede local, você deve descomentar a seguinte linha:
authoritative;
Definir o sunbet, intervalo de endereços ip, domínio e servidores de nome de domínio, como abaixo:
# A slightly different configuration for an internal subnet. subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.20 192.168.1.30; option domain-name-servers server.unixmen.local; option domain-name "unixmen.local"; option routers 192.168.1.1; option broadcast-address 192.168.1.255; default-lease-time 600; max-lease-time 7200; }
Se desejar atribuir um endereço IP fixo para o seu cliente, você deve entrar é o MAC id e o endereço IP na diretiva a seguir. Por exemplo, eu quero atribuir um endereço IP fixo 192.168.1.15 para o meu cliente Ubuntu, Portanto eu modifiquei a seguinte diretiva como mostrado abaixo.
host ubuntu-client { hardware ethernet 00:22:64:4f:e9:3a; fixed-address 192.168.1.15; }
depois de fazer todas as alterações que deseja, salve e feche o ficheiro. Tenha em atenção que se você tiver entradas não utilizadas no dhcpd.conf file, comente todos eles. Caso contrário, você terá problemas ao iniciar o serviço dhcp.
Agora, reinicie o serviço dhcp:
No Ubuntu 15.04:
sudo systemctl restart isc-dhcp-server
No Ubuntu 14.04 e sistemas mais antigos:
sudo service isc-dhcp-server restart
da Mesma forma, você pode iniciar/parar o serviço dhcp como mostrado abaixo:
In Ubuntu 15.04 systems:
sudo systemctl start isc-dhcp-server
sudo systemctl stop isc-dhcp-server
In Ubuntu 14.04 and older systems:
sudo service isc-dhcp-server start
sudo service isc-dhcp-server stop
Configure DHCP Clients
Now, go to the client configuration network settings and change the IP settings to Automatic (DHCP).
Here is my Lubuntu 14.04 settings:
reinicie a rede ou reinicie o sistema cliente para obter o endereço IP automaticamente do servidor DHCp.
now, you should see the IP address has been automatically assigned to the clients from the DHCP server.
Execute o seguinte comando a partir do sistema cliente de Terminal:
sudo ifconfig
saída de Exemplo:
como você vê na imagem acima, o meu sistema de desktop Ubuntu 14.04 que tem o ID MAC 00:22:64:4f:E9:3a obteve um endereço IP fixo ( 192.168.1.15 ) do servidor DHCP.
é isso. O servidor DHCP está pronto.
Cheers!