DHCPDISCOVER / DHCPOFFER, mas não DHCPACK

13

Eu tenho uma máquina cliente remota que está enviando DHCPDISCOVER. O servidor está respondendo com um DHCPOFFER, mas não há DHCPACK.

Isso se repete a cada 30 segundos a partir do mesmo host. Existe algo que eu possa fazer remotamente ou preciso que alguém o reinicie? Está em um data center, então eu posso ter que viajar até lá para fazer isso!

Obrigado pelas sugestões. Todas as máquinas foram reiniciadas, mas ainda tenho problemas. Eu acho que há um problema com minha configuração. Isso parece correto?

#
# /etc/dhcpd.conf for primary DHCP server
#

authoritative;
ddns-update-style none;
deny duplicates;
default-lease-time 600;
max-lease-time 3600;

# Our fixed hosts
host host2  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.202; }
host host3  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.203; }
host host4  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.204; }
host host5  { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address x.x.x.205; }

subnet x.x.x.128 netmask 255.255.255.128 {
  option subnet-mask 255.255.255.128;
  option broadcast-address x.x.x.255;
  option routers x.x.x.129;
  option domain-name-servers 8.8.8.8, 8.8.4.4;

  # Testing pool.
  pool {
    max-lease-time 300; # 5 minutes
    range x.x.x.250 x.x.x.254;
    deny known-clients;
  }

  # Our hosts - I didn't have this pool declaration before, do I need it if I want
  # the hosts to be running dhcp but always get the same address?
  pool {
    max-lease-time 1800;
    range x.x.x.200 x.x.x.220;
    deny unknown-clients;
  }
}
    
por Matt 26.01.2013 / 19:09

5 respostas

11

Vai:

CLIENT -> DHCPDISCOVER
SERVER -> DHCPOFFER
CLIENT -> DHCPREQUEST
SERVER -> DHCPACK

Você está sentindo falta do DHCPREQUEST antes do DHCPACK na sua descrição.

Se o cliente estiver em uma sub-rede diferente do servidor DHCP, o DHCPOFFER será enviado unicast para o DHCP-relay na porta 67 UDP. O agente de transmissão DHCP transmite o DHCPOFFER para a sub-rede na porta UDP 68.

Eu investigaria problemas de conectividade relacionados ao DHCPOFFER. Acompanhe-o e veja se ele encontra o caminho de volta para o cliente e, se isso acontecer, por que o cliente não está DHCPREQUEST: inserindo o endereço.

Um agente de retransmissão dhcp comum é a opção "ip helper-address" em switches cisco sob uma interface específica.

    
por 30.05.2013 / 00:56
6

Supondo que seu servidor DHCP e cliente DHCP estejam conectados ao mesmo segmento de ethernet, e supondo que esse segmento de ethernet abranja vários switches L2 interconectados com vários "trunk" ( 802.1q , encontrei problemas semelhantes quando havia uma incompatibilidade entre a configuração de pelo menos um link de tronco.

Em detalhe, o ciclo interminável de DHCP-DISCOVER / DHCP-OFFER (visto do lado do servidor DHCP), deixe-me pensar que o cliente DHCP é NOT recebendo a DHCP-OFFER e, portanto, colocando novamente a mensagem DHCP-DISCOVER. Tal DHCP-DISCOVER (visto do lado do cliente DHCP) é corretamente recebido do DHCP-SERVER.

Considerando o seguinte cenário: aconfiguraçãoincorreta/incorretadasduasportasdetroncosignificaque:

  • OtráfegodaVLANXenviadopeloSWAparaoSWBaolongodotronco(oudoservidorDHCPparaoclienteDHCP)éUNTAGGED;
  • OtráfegodeVLANXenviadopeloSWBparaoSWAaolongodotronco(oudoDHCP-ClientparaoservidorDHCP),éTAGGED.
  • devidoàconfiguraçãodeVLANnativadaportadetroncodoSWB,oclienteDHCPnãoreceberápacotesdoservidorDHCP.

Issoémuitofácildesolucionar,sevocê"controla" o host DHCP-Client. Nesse caso, supondo eth0 é a interface de rede usada pelo host do cliente DHCP, um simples:

tcpdump -n -i eth0 ether-host <dhcp-server-mac-address>

mostrará se o cliente receber ou não a DHCP-OFFER do DHCP-SERVER.

As coisas são mais difíceis de solucionar se você puder não controlar o lado do cliente.

PS: Obviamente, os problemas acima, assim como outros argumentos relacionados, podem ser facilmente evitados usando tecnologias apropriadas (como GVRP , VTP ou outra abordagem que não seja estritamente manual-config), mas ... isto está fora do escopo desta resposta

    
por 28.01.2015 / 21:49
5

Tive o mesmo problema. Não vendo nenhum DHCPACKs. Problema aqui foi:

disk full

O dhcpd não pôde gravar em /var/lib/dhcp/dhcpd.leases .

    
por 28.01.2015 / 19:27
3

Eu já vi isso algumas vezes e até agora só vi duas razões:

  • O endereço IP que o servidor DHCP forneceu já está sendo usado por outro dispositivo. Normalmente você veria um DHCPNAK.
  • Seu firewall está aceitando o tráfego para o servidor dhcp, mas não o tráfego de volta
Felizmente, ambos devem ser fáceis de testar. Faça o ping do endereço IP e verifique os firewalls relevantes.

    
por 26.01.2013 / 19:13
0

Eu tenho aprendido sobre firewalls usando caixa virtual e eu tive um problema semelhante de não obter o DHCPACK no servidor e descobriu-se que estava usando as configurações erradas da rede de caixa virtual para a rede verde (interna) de teste para um ubuntu firewall vm e um teste ubuntu client vm. Se você usar a rede NAT em vez de rede interna vb, o cliente vm obtém seu ip de vb em vez do servidor DHCP vm. Os logs mostram o servidor obtendo a solicitação do cliente, mas o cliente obtém seu ip de vb, para que você nunca receba um ACK enviado de volta ao servidor.

    
por 11.12.2016 / 18:37