Quando o servidor DHCP (Dynamic Host Configuration Protocol) é executado, alguns aluguéis aparecem como indisponíveis. Há vários motivos, quase sempre observados claramente nos registros DHCP:
Faça ping antes que a oferta seja ativada.
O servidor DHCP recebeu uma mensagem DHCPDECLINE de um cliente DHCP ao qual alugou o que considerava ser um bom endereço IP.
O servidor DHCP do Cisco Network Registrar (CNR) vê uma mensagem direcionada para outro servidor DHCP.
A rápida correção é para forçar as concessões a se tornarem disponíveis. Isso não é recomendado, pois é necessário investigar por que os contratos foram marcados como indisponíveis. Vá para o diretório de registros CNR e procure os registros DHCP. O servidor deixa claro por que o endereço IP está marcado como indisponível.
Os leitores deste documento devem estar cientes destes tópicos:
Como funciona o DHCP
Interface de linha de comando de CNR (nrcmd)
Interface de usuário CNR GUI
As informações neste documento são baseadas nestas versões de software e hardware:
Cisco Network Registrar 5.0.X
Windows 2000 e Solaris 7
Todas as versões e plataformas CNR
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
Antes de atribuir um endereço IP a um cliente, é possível optar por fazer o servidor de DHCP usar a capacidade de mensagem de eco (o utilitário de ping) do protocolo de controle de mensagem de Internet (ICMP) para determinar se há uma resposta para tal endereço. Se o servidor CNR receber uma resposta do ping, o servidor DHCP marca o endereço como não disponível e oferece um endereço IP diferente ao cliente. O uso do ping pode ajudar a impedir que dois clientes usem o mesmo endereço IP. Para habilitar o ping antes da oferta no servidor CNR, consulte a seção "Fazer ping em um host antes de oferecer um endereço" de Configuração de escopos e concessões de DHCP.
Uma resposta a um comando ping pode ocorrer por causa de um IP configurado estatisticamente em um cliente ou por dispositivos intermediários (roteadores, Switches) que estejam respondendo de forma inadequada aos pings para endereços da rede pelos quais são responsáveis.
Para disponibilizar esses aluguéis, consulte Forçando a Disponibilidade de Leasing.
Um endereço IP pode ser marcado como indisponível se o servidor DHCP receber uma mensagem DHCPDECLINE de um cliente ao qual alugou o que considerava ser um bom endereço IP.
Isso acontece porque alguns clientes enviam uma requisição de protocolo de resolução de endereço (ARP) para o endereço IP no segmento de LAN local. Se houver uma resposta, o cliente DHCP retorna o endereço IP ao servidor DHCP com um DHCPDECLINE e executa outra operação DHCPDISCOVER para obter um novo endereço IP. Nesse caso, como o caso ping before offer, o cliente indica que há um cliente ativo usando o endereço IP, talvez configurado estaticamente. O servidor DHCP marca então o endereço IP como indisponível.
Isso é frequentemente causado por clientes que configuraram identificadores de cliente não exclusivos. Já que o servidor de DHCP utiliza esse campo para distinguir clientes, pode ocorrer alocação de endereço duplicado. A solução é atribuir apenas endereço MAC como identificador de cliente.
O CNR é capaz de configurar qualquer uma destas maneiras para distinguir o cliente:
Por identificação de cliente. O ID do cliente, em geral, é fornecido pelo cliente. No entanto, se uma ID de cliente não for fornecida pelo cliente, o servidor DHCP criará uma ID exclusiva usando uma reformatação do endereço MAC exclusivo com um tipo de hardware predefinido = 1. (Esta é a configuração padrão conforme especificado por RFC.)
Apenas por endereço MAC. Esse recurso está desabilitado por padrão no servidor. (a soma de verificação do endereço MAC é acrescentada para distinguir este objeto do endereço MAC real). Você pode ativá-lo usando o comando:
nrcmd> dhcp enable Mac-address-only
Essa configuração faz com que o servidor DHCP use o endereço MAC do cliente como o único identificador de cliente e ignore o ID de cliente fornecido pelo cliente. Você pode usar esse argumento para ter uma maneira única e consistente de identificar todos os clientes que usam seu servidor DHCP.
Observação: você deve configurar esse recurso antes que qualquer cliente seja considerado configurado no servidor, já que esse novo ID de cliente com endereço Mac somente é diferente do ID de cliente sintetizado padrão. Se essa opção estiver habilitada em uma rede de produção, nenhum cliente existente será considerado como ele mesmo durante o processo de renovação, ele não será reconhecido (NAK) e será forçado a um novo leasing. Isso vincula os arrendamentos atualmente considerados Leased (em uso) até que eles expirem. Portanto, são necessários o dobro de endereços em uma rede durante o ciclo de ativação desse recurso.
Para disponibilizar essas concessões, siga as instruções em Forçando a disponibilidade das concessões.
O servidor DHCP marca um endereço IP indisponível se notar que outro servidor DHCP distribui essa concessão.
Todas as mensagens DHCPREQUEST são transmitidas como parte do ciclo inicial DISCOVER/OFFER/REQUEST/ACK. O servidor DHCP pode ver mensagens direcionadas a outros servidores DHCP e identificar que uma mensagem foi direcionada para ele pelo conteúdo da opção server-id do pacote.
Se o servidor DHCP CNR vir uma mensagem que é direcionada para outro servidor DHCP, mas o endereço IP ao qual essa mensagem se refere é controlado por esse servidor DHCP, ele marca esse endereço IP como indisponível. Este servidor DHCP está configurado para controlar o espaço de endereço, mas como ele observa outro DHCP gerenciando o mesmo espaço de endereço, o outro servidor deve estar configurado incorretamente.
Esse comportamento é visto quando da migração de um servidor DHCP de controle para outro com um endereço IP diferente (e não configurado como parceiro de failover de DHCP conhecido e autorizado nesses endereços). No CNR 5.0.x e posterior, você pode desativar esse comportamento para permitir a migração do espaço de endereço para outro servidor DHCP de controle com o comando:
nrcmd> dhcp set ignore-requests-for-other-servers=true
Para disponibilizar essas concessões, siga as instruções em Forçando a disponibilidade das concessões.
Você pode forçar a disponibilidade de uma concessão mantida no momento por um host. Solicite que o usuário libere o leasing ou permita que você faça isso, antes de forçar sua disponibilidade. Não será necessário recarregar o servidor de DHCP para que a alteração seja implementada.
Siga estes passos:
Na guia Usos da caixa de diálogo Propriedades do Escopo, selecione o leasing que deseja forçar.
Clique duas vezes no endereço para abrir a caixa de diálogo Propriedades do Leasing.
Clique em Force available (Forçar disponível).
Click OK.
Use o comando lease <ip address> force-available para forçar a locação disponível atualmente.
nrcmd> lease 192.168.1.21 force-available
Você também pode disponibilizar todas as concessões não disponíveis em um escopo usando o comando scope <nome do escopo> clearUnavailable.
nrcmd> scope scope1 clearUnavailable
Observação: o comando scope <scope name> clearUnavailable só está disponível nas versões 5.x e posteriores do CNR.
Vá para DHCP > Escopos
Para o escopo que contém o aluguel, clique no ícone aluguel (os óculos).
Na lista de concessões, clique no leasing que deseja disponibilizar.
Quando a janela exibir as propriedades do leasing, clique em Forçar Disponível.
Determine quando o leasing ficou indisponível:
Use este comando para determinar quando o aluguel foi indisponibilizado.
nrcmd> lease ip-address get start-time-of-state
Desativar um leasing:
Para mover um cliente de um leasing, você pode optar por desativar o leasing. Se o leasing estiver disponível, desative-o para impedir que o CNR o entregue a um cliente. Se o leasing estiver ativo (mantido por um cliente), desative o leasing. Isso impede que o cliente possa renovar o leasing e liberá-lo para outro cliente. Você só pode desativar um leasing quando o servidor operar. CNR desativa o leasing imediatamente; você não precisa recarregar o servidor de DHCP. Se a locação estiver disponível, quando você desativar a locação, ela se tornará indisponível; se ele estiver ativo, ficará indisponível para renovação ou qualquer aluguel inicial.
Número total de endereços disponíveis:
O número total de endereços dentro do intervalo de escopo é igual à soma dos seguintes: livre + dinamicamente arrendado + reservado + indisponível + desativado + outros disponíveis.