neste tutorial, nós configuramos nosso próprio servidor DHCP no Ubuntu. Dynamic Host Configuration Protocol (DHCP) é um serviço de rede para atribuir automaticamente endereços IP a clientes em uma rede. Segue uma arquitetura Servidor-Cliente onde o cliente pede um servidor DHCP para obter um endereço IP. A maioria dos roteadores tem um servidor DHCP incorporado, mas nós podemos usar o nosso próprio servidor DHCP também.
Índice
- como funciona o PDHC?
- Métodos de alocação para DHCP
- Steps to set up DHCP Server on Ubuntu
- 1. Instalar o Servidor DHCP
- 2. Configure o servidor DHPC
- Backup do ficheiro de configuração Original
- crie e edite o novo ficheiro de configuração
- atribuir endereços IP aleatórios a partir de um pool
- atribuir um endereço IP estático a um cliente
- 3. Bind the DHCP Server to an interface
- 4. Reinicie o servidor DHCP
- 5. Verifique o estado do servidor DHCP
- Troubleshooting
- Conclusion
como funciona o PDHC?
quando o computador liga não tem um endereço IP (assumindo que não tem endereçamento IP estático configurado, que a maioria das máquinas não tem). Ele envia uma transmissão (no endereço MAC com todos os F’s) chamada DHCP Discover. Os servidores DHCP são projetados para responder a tais transmissões.
eles então enviam tráfego unicast conhecido como a oferta DHCP de volta para o cliente requerente. Esta oferta DHCP normalmente contém o endereço IP atribuído, o endereço IP padrão do Gateway, e o endereço IP do servidor DNS.
o cliente ao receber a oferta envia um pedido DHCP para o servidor DHCP reconhecendo que ele aceitou a informação dada a Ele pelo servidor.
os servidores DHCP mantêm um registo dos endereços IP atribuídos para evitar a dupla atribuição ou colisões de endereços IP.
uma vez que os servidores DHCP respondem à transmissão, eles devem estar presentes na rede local e não deve haver mais de 1 Servidor DHCP em uma rede local.
Métodos de alocação para DHCP
seguem os dois métodos de alocação para um servidor DHCP:
- Manual: Neste método, o endereço IP é dado com base no endereço MAC. Isto garante que uma determinada máquina recebe um endereço IP fixo como seu endereço IP é então amarrado ao seu endereço MAC. O servidor DHCP envia uma configuração constante para o cliente, dependendo de seu endereço MAC neste tipo de alocação.
- Automatic: In this method, the IP Addresses are assigned automatically by the DHCP Server on a first-come, first-served basis from a pool of addresses. Pode ainda ser dividido em duas categorias com base no tempo de Locação – o tempo para o qual um endereço IP é atribuído a um cliente.
- tempo de Locação fixo: quando um cliente DHCP não está mais na rede por um período especificado, a configuração é expirada e liberada de volta para o conjunto de endereços para uso por outros clientes DHCP. O cliente tem que renegociar para manter o endereço IP anterior.
- tempo de arrendamento infinito: isto tem o efeito de atribuir permanentemente um endereço IP a um cliente.
Steps to set up DHCP Server on Ubuntu
Now we’ll look at how to set up a DHCP Server on Ubuntu.
1. Instalar o Servidor DHCP
Você pode instalar o Servidor DHCP usando o apt o comando da seguinte maneira:
sudo apt install isc-dhcp-server
Observação: Você pode instalar um Servidor DHCP, mesmo em um Desktop edition em vez de a edição de servidor do Ubuntu. Veja esta resposta de StackOverflow para saber como as edições desktop e servidor são diferentes/similares.
2. Configure o servidor DHPC
o principal arquivo de configuração do servidor DHCP ISC é /etc/dhcp/dhcpd.conf
.
Backup do ficheiro de configuração Original
é sempre uma boa ideia fazer backup dos ficheiros de configuração originais. No caso de algo correr mal, a configuração original pode ser facilmente restaurada. Você pode usar o comando cp ou mV para criar uma cópia de segurança.
sudo mv /etc/dhcp/dhcpd.conf{,.backup}#Expands to sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.backup
o comando acima cria um ficheiro dhcpd.conf.backup
usando a funcionalidade de expansão {}
do bash.
crie e edite o novo ficheiro de configuração
pode usar o editor da sua escolha. Vou usar o editor nano.:
sudo nano /etc/dhcp/dhcpd.conf
as opções no arquivo de configuração dependem da complexidade da rede.
atribuir endereços IP aleatórios a partir de um pool
a coisa mais comum feita por um servidor DHCP é atribuir endereços aleatoriamente. As definições para o mesmo poderia ser da seguinte maneira:
# a simple /etc/dhcp/dhcpd.confdefault-lease-time 600;max-lease-time 7200;authoritative;subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.254; option domain-name-servers 192.168.1.1, 192.168.1.2;#option domain-name "mydomain.example";}
de Acordo com essa configuração:
- O tempo de concessão padrão para um cliente é de 10 minutos(600 segundos) e o tempo de concessão máximo é de 2 horas(7200 segundos).Este servidor DHCP é o servidor oficial da rede local. (indicado por
authoritative
). - o servidor irá entregar o endereço IP da Gama 192.168.1.100 a 192.168.1.200.
- o servidor também irá “aconselhar” o cliente a usar 192.168.1.254 como o gateway padrão e 192.168.1.1 e 192.168.1.2 como seus servidores DNS.
pode também incluir um nome de domínio.
atribuir um endereço IP estático a um cliente
para garantir que um determinado cliente irá sempre obter o mesmo endereço IP, o servidor DHCP irá precisar do endereço MAC desse cliente. Este seria o modo de alocação manual falado anteriormente neste artigo.Para obter o endereço MAC de um cliente, podemos usar o comando ip na máquina do cliente:
ip a
(Você deverá selecionar o Endereço MAC da interface da qual você está planejando para se conectar à rede. Escolhi o sem fios.)
Agora que temos o Endereço MAC, podemos colocá-lo no arquivo de configuração:
host archmachine {hardware ethernet e0:91:53:31:af:ab;fixed-address 192.168.1.20;}
Esta reserva de Endereço IP 192.168.1.20 para o cliente com o Endereço MAC e0:91:53:31:af:ab
.
finalmente, o ficheiro de configuração parece-se com este:
você pode omitir a parte de configuração de IP estático se quiser atribuir endereços automaticamente.
3. Bind the DHCP Server to an interface
The DHCP Server can have many interfaces. Você precisa definir a interface que ele deve ouvir. Você pode ver as interfaces no servidor usando ip a
assim como o cliente.
a interface com a qual se ligar é definida no ficheiro /etc/default/isc-dhcp-server
. Abra-o com o editor da sua escolha. A interface para o meu servidor é eth0
. Pode ser diferente para o seu servidor. Editar o arquivo como:
INTERFACESv4="eth0"
4. Reinicie o servidor DHCP
agora que as mudanças na configuração são feitas, precisamos reiniciar o serviço para permitir essas alterações. Para isso, usaremos o comando systemctl
:
sudo systemctl restart isc-dhcp-server.service
5. Verifique o estado do servidor DHCP
isto pode ser feito novamente usando o comando systemctl
:
sudo systemctl status isc-dhcp-server.service
Um status ativo indica que o Servidor DHCP tiver sucesso, pegou a configuração e está pronto para distribuir Endereços IP.
Troubleshooting
The DHCP Server writes its logs to the Syslog. Se você achar que o estado do serviço está inativo, você deve olhar para /var/log/syslog
file. A partir daí você pode procurar o problema específico mencionado no Syslog na internet.
Conclusion
In this article, we learned about DHCP and how to install a DHCP server on an Ubuntu machine. Ter um servidor DHCP automatiza a atribuição de endereços IP que é muito melhor do que a configuração manual de cada cliente.