Addreses DHCP reproduzíveis

0

Eu tenho um dispositivo baseado em microcontrolador com um gerenciador de inicialização e um aplicativo. O dispositivo possui um adaptador Ethernet. O bootloader usa IP / UDP para fazer o flash da imagem do aplicativo. O aplicativo tem uma pilha TCP / IP completa.

Ambos os componentes usam o DHCP para obter um endereço IP. O estranho é que ambos obtêm resultados diferentes no processo DHCP. Ambos os clientes DHCP estão configurados para usar uma mensagem DHCPDISCOVER com o mesmo endereço MAC.

O que um servidor DHCP deve enviar em DHCPOFFER? Deve oferecer o mesmo endereço IP para o mesmo endereço MAC quando o endereço IP não está atribuído em outro lugar? Editar : a última atribuição de endereço é de 10 segundos atrás.

O servidor DHCP está sendo executado em um host Linux. Como posso configurar um veículo desse tipo para poder monitorar e entender esse comportamento?

Editar : Eu não tenho controle sobre a configuração do servidor DHCP. O administrador quer manter o controle total.

Existem outras configurações de DHCP que podem estar no carregador de inicialização ou no aplicativo que poderiam afetar o resultado do DHCP?

    
por harper 03.12.2013 / 19:11

2 respostas

1

Depende da configuração do seu tempo de aluguel. Se for longo o suficiente, seu aplicativo receberá o mesmo endereço.

Mas se você quer garantia, então declare um endereço fixo para o seu mac no servidor.

Se você estiver usando o dhcpd, então algo assim:

host foo {
  hardware ethernet 00:11:22:33:44:55;
  fixed-address 1.2.3.4;
}

Na verdade sim, há uma maneira de sugerir IP em DHCPDISCOVERY configurando a opção (50) requested IP address . Mas eu não sei se os servidores sabem disso.

Existe também a opção (51) IP address lease time , que pode ser usada no boot loader para sugerir um período mais longo, mas também não tenho certeza sobre a resposta do servidor.

Mais informações rfc2131

    
por 03.12.2013 / 19:21
0

Quando um cliente DHCP envia um DHCPDISCOVER, o servidor deve descartar o registro do DHCP. Existem servidores que receberão o mesmo endereço IP. Isso não é errado, mas nem mesmo é necessário.

Para manter o endereço DHCP, o cliente deve enviar um DHCPACQUIRE com a configuração de IP em cache. O servidor DHCP irá confirmar ou negar. Enviar DHCPDISCOVER é apenas uma má ideia nesta situação.

    
por 23.02.2015 / 09:26