[prev in list] [next in list] [prev in thread] [next in thread] 

List:       busybox
Subject:    =?UTF-8?B?REhDUCBDbGllbnQ6IERIQ1BOQUsgYmVoYXZpb3Ig?=
From:       Vitaliy Orazov <viordash () mail ! ru>
Date:       2021-12-15 8:28:17
Message-ID: 1639556897.456297749 () f511 ! i ! mail ! ru
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]

[Attachment #4 (text/plain)]


Hi!
 
Faced with the issue of not responding to DHCPNAK  from another server , I then \
compared the behavior between busybox  udhcp client and  isc dhclient when receiving \
DHCPNAK. And behaviors are different. Your client checks for server_id matching, this \
check was introduced for the fix,  Bug 4267 . But in  isc dhclient there is no check \
for server_id and it seems to me correct, because in  rfc2131 I did not find \
requirements for matching server_id in the request for the client, but I found the \
following text: RFC 2131   [Page 17]
If the client receives a DHCPNAK message, the client restarts the
     configuration process.
 
Here is another piece of text from  rfc2131 , which I believe points to the key \
moment of using server_id in the client: RFC 2131   [Page 23]
DHCP clients MUST
   use the IP address provided in the 'server identifier' option for any
   unicast requests to the DHCP server.
 
this is also consistent with  rfc2132 :
RFC 2132   [Page 27]
DHCP clients use the
   contents of the 'server identifier' field as the destination address
   for any DHCP messages unicast to the DHCP server.
 
 
PS.  Bug 14456
 
Best Regards
Vitaliy Orazov


[Attachment #5 (text/html)]


<HTML><BODY><div><div><div id="style_16394956970625122705_BODY"><div><div><span \
style="max-width: 2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;">Hi!</span></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">&nbsp;</span></div><div><div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">Faced with the issue of not responding to DHCPNAK <span \
lang="en"><span><span>from another server</span></span></span>, I then compared the \
behavior between busybox <a \
href="https://github.com/mirror/busybox/blob/cb91a818c8f7730d8f3b30b5b4e75fd21496609f/networking/udhcp/dhcpc.c#L1818">udhcp</a> \
client and <a href="https://github.com/isc-projects/dhcp/blob/31e68e5e3b863a4859562e0bb808888d74af7497/client/dhclient.c#L2267">isc \
dhclient</a> when receiving DHCPNAK. And behaviors are different. Your client checks \
for server_id matching, this check was introduced for the fix, <strong><a \
href="https://bugs.busybox.net/show_bug.cgi?id=4267">Bug \
4267</a></strong>.</span></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">But in <a href="https://github.com/isc-projects/dhcp/blob/31e68e5e3b863a4859562e0bb808888d74af7497/client/dhclient.c#L2267">isc \
dhclient</a> there is no check for server_id and it seems to me correct, because in \
<strong><a href="https://datatracker.ietf.org/doc/html/rfc2131">rfc2131</a></strong> \
I did not find requirements for matching server_id in the request for the client, but \
I found the following text:</span></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;"><span style="font-family:'Andale Mono','Lucida \
Console',Monaco,monospace;"><span style="font-size:14px;line-height:20px;">RFC \
2131&nbsp;&nbsp; [Page 17]</span></span></span></div><div><span style="max-width: \
2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;"><span style="font-family:'Andale Mono','Lucida \
Console',Monaco,monospace;"><span style="font-size:14px;line-height:20px;">If the \
client receives a DHCPNAK message, the client restarts \
the</span></span></span></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;"><span style="font-family:'Andale Mono','Lucida \
Console',Monaco,monospace;"><span \
style="font-size:14px;line-height:20px;">&nbsp;&nbsp;&nbsp;&nbsp; configuration \
process.</span></span></span></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">&nbsp;</span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;">Here is another \
piece of text from <a \
href="https://datatracker.ietf.org/doc/html/rfc2131">rfc2131</a>, which I believe \
points to the key moment of using server_id in the client:</span></div><div><span \
style="max-width: 2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;"><span style="font-family:'Andale Mono','Lucida \
Console',Monaco,monospace;">RFC 2131&nbsp;&nbsp; [Page \
23]</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">DHCP clients \
MUST</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">&nbsp;&nbsp; use \
the IP address provided in the 'server identifier' option for \
any</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">&nbsp;&nbsp; \
unicast requests to the DHCP server.</span></span></div><div><span style="max-width: \
2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;">&nbsp;</span></div><div><span style="max-width: \
2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;">this is also consistent with <strong><a \
href="https://datatracker.ietf.org/doc/html/rfc2132">rfc2132</a></strong>:</span></div><div><span \
style="max-width: 2150px; --left-column-width: 232px; --right-column-width: 252px; \
--sidebar-column-width: 320px;"><span style="font-family:'Andale Mono','Lucida \
Console',Monaco,monospace;">RFC 2132&nbsp;&nbsp; [Page \
27]</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">DHCP clients use \
the</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">&nbsp;&nbsp; \
contents of the 'server identifier' field as the destination \
address</span></span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: 320px;"><span \
style="font-family:'Andale Mono','Lucida Console',Monaco,monospace;">&nbsp;&nbsp; for \
any DHCP messages unicast to the DHCP \
server.</span></span></div></div></div><div><span style="max-width: 2150px; \
--left-column-width: 232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">&nbsp;</span></div><div><span style="max-width: 2150px; --left-column-width: \
232px; --right-column-width: 252px; --sidebar-column-width: \
320px;">&nbsp;</span></div><div data-signature-widget="container"><div \
data-signature-widget="content"><div>PS. <a \
href="https://bugs.busybox.net/show_bug.cgi?id=14456"><b>Bug&nbsp;14456</b></a> <span \
id="summary_container"> \
</span></div></div></div></div></div></div></div><div>&nbsp;</div><div \
data-signature-widget="container"><div data-signature-widget="content"><div>Best \
Regards<br>Vitaliy Orazov</div></div></div></BODY></HTML>



_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic