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/dhcp
seria 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.