새 rootfs를 플러시할 때마다 내 IP 주소가 변경되는 이유는 무엇입니까?

새 rootfs를 플러시할 때마다 내 IP 주소가 변경되는 이유는 무엇입니까?

저는 Raspberry Pi 3 시스템을 개발하고 있으며 Buildroot를 사용하여 자체 rootfs를 구축하고 있습니다. 처음에는 BusyBox를 초기화 시스템으로 사용했고 wpa_supplicant를 사용하여 온보드 Wi-Fi 카드를 구성할 때 SD 카드를 새 rootfs로 재구축/재플래시하더라도 라우터는 항상 보드에 동일한 IP 주소를 할당했습니다. 그런 다음 systemd 사용으로 전환했습니다. 이제 SD 카드를 재구축/새로 고칠 때마다 라우터는 장치가 다르다고 생각하고 MAC 주소가 동일하게 유지되더라도 rootfs가 새로 고쳐질 때마다 다른 IP 주소를 할당하는 것 같습니다. 이 문제의 원인은 무엇입니까?

답변1

시스템보다 라우터를 확인하면 답을 찾을 가능성이 더 높습니다. 라우터의 웹 인터페이스를 살펴보면 다음을 확인할 수 있습니다.

  • DHCP 임대 시간은 어떻습니까? DHCP 임대가 곧 만료되어 새 IP가 할당되는지 확인할 수 있습니다.
  • 라우터에 표시된 Raspberry Pi의 MAC 주소를 확인하세요. Pi가 하나의 MAC 주소만 표시하는지, 아니면 라우터가 매번 다른 MAC 주소를 표시하는지 확인할 수 있습니다.그건새로운 IP 주소를 할당해야 하는 이유

답변2

라우터는 시간이 지남에 따라 MAC 주소와 IP 주소 간의 연관성을 기억하지 못할 가능성이 높습니다. IP 주소보다 MAC 주소가 더 많기 때문에 DHCP 서버는 동일한 IP 주소를 다른 클라이언트에 지속적으로 할당할 수 있도록 준비해야 합니다. 임대가 만료되면 일반 서버는 MAC-IP 연결을 잊어버립니다.

그러나 고객은 이 연관성을 더 오래 기억할 수 있습니다. DHCP 클라이언트는 특정 IP 주소를 요청할 수 있습니다. 서버는 이 요청을 자유롭게 무시할 수 있습니다. 일반적으로 IP 주소가 올바른 범위에 있고 현재 할당되지 않은 경우 요청을 수락합니다. 나는 귀하의 클라이언트가 임대 정보를 어딘가( /var/lib/dhcp보기 좋은 곳)에 저장하고 있다고 생각하며 귀하의 라우터는 일반적으로 요청을 받아들입니다. 새 rootfs를 플러시하면 임대가 저장되지 않으므로 라우터는 그 당시 원하는 IP 주소를 선택합니다.

관련 정보