diff --git a/lib/ipv4.c b/lib/ipv4.c
index 5fdc73b70584b15b28fed1562039c713206dea01..827de59b0d867731e8b9c220ff8e2a7a007f3f38 100644
--- a/lib/ipv4.c
+++ b/lib/ipv4.c
@@ -40,6 +40,9 @@ unsigned int ipv4_checksum(unsigned short *buf, int shorts)
 void ipv4_init(const char *if_name)
 {
 	wr_sockaddr_t saddr;
+	
+	/* Reset => need a fresh IP */
+	needIP = 1;
 
 	/* Configure socket filter */
 	memset(&saddr, 0, sizeof(saddr));