https://bugzilla.novell.com/show_bug.cgi?id=657402
https://bugzilla.novell.com/show_bug.cgi?id=657402#c18
--- Comment #18 from Martin Konold
You write in your initial (and further) comment(s):
* If the DHCP server is within the same LAN this unicast message is sent to the MAC address of the DHCP server on the ethernet layer. * If the DHCP server is in another network the unicast message is sent to the responsible gateway MAC address
Perhaps I miss something, but it seems it has to be sent directly to the server -- gateway is not involved:
Just for clarification. DHCP renewal is always an unicast. Case 1: DHCP server is on the same ethernet segment. In this case the layer II ethernet destination address of the renewal request is the MAC address of the ethernet card of the DHCP server. The unicast destination ip address in the renewal request is the ip address of the DHCP server. Case 2: DHCP server is on a different ethernet segment. In this case the layer II ethernet destination address of the renewal request is the MAC address of the gateway. The unicast destination IP address in the renewal request is the IP address of the DHCP server. This is plain and standard IP. The gateway in this description has nothing to do with a DHCP relay. A DHCP relay does more than a plain IP gateway/router as it acts more like a proxy than a plain IP router. dhcpcd-3.2.3 incorrectly sends the DHCP renewal to the HW broadcast address ff:ff:ff:ff:ff:ff (not to be confused with the IP broadcast address) instead to the _unicast_ _HW_ address of the 1. DHCP server if it resides on the same segment or 2. gateway/router if the DHCP server lives in a different segment. In this case it is the job of the IP gateway to determine the This description has nothing to do with DHCP relay agents as these are according to the relevant RFCs NOT involved in DHCP renewal activities.
http://tools.ietf.org/html/rfc2131#section-4.3.2 "4.3.2 DHCPREQUEST message [...]
configured, and is trying to extend its lease. This message will be unicast, so no relay agents will be involved in its ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ transmission. Because 'giaddr' is therefore not filled in, the DHCP server will trust the value in 'ciaddr', and use it when replying to the client.
Please note that in the Internet documentation (RFC) generally, and in this bug report specifically, a gateway is a plain IP-level router not a DHCP proxy or similar. This is different from giaddr which refers to a "Relay agent IP address, used in booting via a relay agent" as defined in RFC 2131. If required I can create a documentation on the byte level of a currently observed IP package during DHCP renewal and a correct package. Please tell me if this would be of some help. Yours, -- martin -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.