Ethernet icon indicating copy to clipboard operation
Ethernet copied to clipboard

DHCP client doesn't handle multiple DNS server addresses in DHCP response [imported]

Open agdl opened this issue 9 years ago • 2 comments

From @cmaglie on November 15, 2012 18:39

This is Issue 569 moved from a Google Code project. Added by 2011-07-07T20:57:41.000Z by [email protected]. Please review that bug for more context and additional comments, but update this bug.

Original labels: Type-Defect, Priority-Medium, Component-Core

Original description

With the new Arduino 1.0 Ethernet library with the DHCP client included, if your DHCP server returns more than one DNS server address for use it fails to parse the remainder of the DHCP response correctly.

This often results in the Ethernet chip not being configured correctly (which can sometimes be spotted if the netmask and/or gateway IP address are set to 0.0.0.0) and the Arduino won't be able to communicate over Ethernet

Copied from original issue: arduino/Arduino#569

agdl avatar Jul 12 '16 13:07 agdl

From @powtac on April 6, 2013 14:45

Very interesting! I research this problem since days. On Wireshark I see that the DHCP ACK goes back to 0.0.0.0 And I could not explain why. How can I check if my DHCP server returns more than one IP?

Any solutions @cmaglie ?

agdl avatar Jul 12 '16 13:07 agdl

I think, this issue is no longer actual as second and later DNS in DHCP response is discarded on line https://github.com/arduino-libraries/Ethernet/blob/993eea87da7f6716b0c2b2be848476670a2fab8c/src/Dhcp.cpp#L295

woytam avatar Feb 22 '22 14:02 woytam