DHCP (Dynamic Host Configuration Protocol) é um protocolo que fornece gerenciamento rápido, automático e central para a distribuição de endereços IP em uma rede. O DHCP também é usado para configurar a máscara de sub-rede, o gateway padrão e as informações do servidor DNS no dispositivo.
O Grupo de Trabalho de Configuração Dinâmica de Host da IETF criou o DHCP.
Como funciona o DHCP
Um servidor DHCP emite endereços IP exclusivos e configura automaticamente outras informações de rede. Na maioria das residências e pequenas empresas, o roteador atua como o servidor DHCP. Em redes grandes, um único computador pode atuar como servidor DHCP.
Para fazer isso funcionar, um dispositivo (o cliente) solicita um endereço IP de um roteador (o host). Em seguida, o host atribui um endereço IP disponível para que o cliente possa se comunicar na rede.
Quando um dispositivo é ligado e conectado a uma rede que possui um servidor DHCP, ele envia uma solicitação ao servidor, chamada de solicitação DHCPDISCOVER.
Depois que o pacote DISCOVER chega ao servidor DHCP, o servidor mantém um endereço IP que o dispositivo pode usar e oferece ao cliente o endereço com um pacote DHCPOFFER.
Assim que a oferta for feita para o endereço IP escolhido, o dispositivo responde ao servidor DHCP com um pacote DHCPREQUEST para aceitá-lo. Em seguida, o servidor envia um ACK para confirmar se o dispositivo possui aquele endereço IP específico e para definir por quanto tempo o dispositivo pode usar o endereço antes de obter um novo.
Se o servidor decidir que o dispositivo não pode ter o endereço IP, ele enviará um NACK.
Prós e contras do uso de DHCP
Um computador, ou qualquer dispositivo que se conecta a uma rede (local ou Internet), deve ser configurado corretamente para se comunicar nessa rede. Como o DHCP permite que a configuração aconteça automaticamente, ele é usado em quase todos os dispositivos que se conectam a uma rede, incluindo computadores, switches, smartphones e consoles de jogos.
Por causa dessa atribuição dinâmica de endereço IP, há menos chance de que dois dispositivos tenham o mesmo endereço IP, o que é comum ao usar endereços IP estáticos atribuídos manualmente.
O uso de DHCP torna a rede mais fácil de gerenciar. Do ponto de vista administrativo, cada dispositivo na rede pode obter um endereço IP com nada mais do que suas configurações de rede padrão, que são configuradas para obter um endereço automaticamente. A alternativa é atribuir endereços manualmente a cada dispositivo da rede.
Como esses dispositivos podem obter um endereço IP automaticamente, os dispositivos podem se mover livremente de uma rede para outra (desde que cada dispositivo seja configurado com DHCP) e receber um endereço IP automaticamente, o que é útil com dispositivos móveis.
Na maioria dos casos, quando um dispositivo tem um endereço IP atribuído por um servidor DHCP, esse endereço IP muda cada vez que o dispositivo se conecta à rede. Se os endereços IP forem atribuídos manualmente, os administradores devem fornecer um endereço específico para cada novo cliente, e os endereços existentes atribuídos devem ser desatribuídos manualmente antes que outros dispositivos possam usar esse endereço. Isso é demorado e a configuração manual de cada dispositivo aumenta a chance de erros.
Há vantagens em usar o DHCP e também desvantagens. Os endereços IP dinâmicos e variáveis não devem ser usados para dispositivos fixos e que precisam de acesso constante, como impressoras e servidores de arquivos. Embora esses tipos de dispositivos existam predominantemente em ambientes de escritório, não é prático atribuir a eles um endereço IP variável. Por exemplo, se uma impressora de rede tem um endereço IP que mudará em algum momento no futuro, cada computador conectado a essa impressora terá que atualizar regularmente suas configurações para saber como entrar em contato com a impressora.
Esse tipo de configuração é desnecessário e pode ser evitado não usando DHCP para esses tipos de dispositivos e, em vez disso, atribuindo um endereço IP estático a eles.
A mesma ideia entra em ação se você precisar de acesso remoto permanente a um computador em uma rede doméstica. Se o DHCP estiver habilitado, esse computador obterá um novo endereço IP em algum ponto, o que significa que aquele que você gravou para aquele computador não será preciso por muito tempo. Se você usar um software de acesso remoto que dependa de um acesso baseado em endereço IP, use um endereço IP estático para esse dispositivo.
Mais informações
Um servidor DHCP define um escopo, ou intervalo, de endereços IP que ele usa para servir dispositivos com um endereço. Esse pool de endereços é a única maneira de um dispositivo obter uma conexão de rede válida.
Este é outro motivo pelo qual o DHCP é tão útil. O DHCP permite que vários dispositivos se conectem a uma rede durante um período de tempo sem a necessidade de um pool de endereços disponíveis. Por exemplo, se 20 endereços forem definidos pelo servidor DHCP, 30, 50, 200 ou mais dispositivos podem se conectar à rede, desde que no máximo 20 dispositivos usem um dos endereços IP disponíveis simultaneamente.
Como o DHCP atribui endereços IP por um período de tempo específico (denominado período de lease), o uso de comandos como ipconfig para encontrar o endereço IP de um computador produz resultados diferentes ao longo do tempo.
Embora o DHCP seja usado para fornecer endereços IP dinâmicos a seus clientes, isso não significa que endereços IP estáticos também não possam ser usados ao mesmo tempo. Uma mistura de dispositivos que obtêm endereços dinâmicos e dispositivos que têm seus endereços IP atribuídos manualmente a eles podem existir na mesma rede.
Os provedores de internet usam DHCP para atribuir endereços IP. Isso pode ser visto ao identificar seu endereço IP público. Provavelmente mudará com o tempo, a menos que sua rede doméstica tenha um endereço IP estático, o que normalmente é o caso apenas para empresas que possuem serviços da web acessíveis ao público.
No Windows, o APIPA atribui um endereço IP temporário especial quando o servidor DHCP não entrega um endereço funcional a um dispositivo e usa esse endereço até obter um que funcione.