Por que meu endereço IP muda toda vez que eu atualizo um novo rootfs?

Por que meu endereço IP muda toda vez que eu atualizo um novo rootfs?

Estou trabalhando em um sistema Raspberry Pi 3 e construindo meus próprios rootfs usando Buildroot. No início, eu estava usando o BusyBox como sistema de inicialização e ao configurar a placa wifi on-board usando wpa_supplicant, o roteador sempre atribuía o mesmo endereço IP à placa, mesmo que eu reconstruísse/reflashasse o cartão SD com um novo rootfs. Então mudei para usar o systemd. Agora, sempre que eu reconstruo/flash o cartão SD, o roteador parece pensar que o dispositivo é diferente e atribui a ele um endereço IP diferente toda vez que eu reflash o rootfs, mesmo que o endereço MAC tenha permanecido o mesmo. O que poderia estar causando esse problema?

Responder1

É mais provável que você encontre sua resposta revisando seu roteador do que revisando o sistema. Ao revisar a interface da web do seu roteador, você poderá descobrir:

  • Como é o tempo de concessão do DHCP. Você pode confirmar se suas concessões de DHCP estão expirando, contribuindo para a atribuição de novos IPs.
  • Veja o endereço MAC do seu Raspberry Pi conforme o roteador o vê. Você pode confirmar se há apenas um único endereço MAC aparecendo para o seu Pi ou se o roteador vê um endereço MAC diferente a cada vez eisso épor que um novo endereço IP está sendo atribuído.

Responder2

É improvável que o roteador se lembre da associação entre um endereço MAC e um endereço IP por muito tempo. Existem muito mais endereços MAC do que endereços IP, portanto, um servidor DHCP deve estar preparado para fornecer o mesmo endereço IP a diferentes clientes sucessivamente. Um servidor típico esqueceria a associação MAC-IP assim que o aluguel expirasse.

O cliente, entretanto, pode muito bem se lembrar da associação por mais tempo. Um cliente DHCP pode solicitar um endereço IP específico. O servidor está livre para ignorar esta solicitação; normalmente, ele honraria a solicitação quando o endereço IP estivesse no intervalo correto e não atribuído no momento. Suspeito que seu cliente esteja salvando as informações de locação em algum lugar ( /var/lib/dhcpseria um bom lugar para procurar) e que seu roteador normalmente atende à solicitação. Quando você atualiza um novo rootfs, ele não tem essa concessão salva, então o roteador escolhe o endereço IP de sua preferência neste minuto.

informação relacionada