diff --git a/src/net/udp/dhcp.c b/src/net/udp/dhcp.c index 0483e2f6..6435bf2e 100644 --- a/src/net/udp/dhcp.c +++ b/src/net/udp/dhcp.c @@ -528,6 +528,8 @@ static void dhcp_request_rx ( struct dhcp_session *dhcp, return; if ( server_id.s_addr != dhcp->server.s_addr ) return; + if ( ip.s_addr != dhcp->offer.s_addr ) + return; /* Record assigned address */ dhcp->local.sin_addr = ip;