<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Vorformatiert Zchn";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.HTMLVorformatiertZchn
        {mso-style-name:"HTML Vorformatiert Zchn";
        mso-style-priority:99;
        mso-style-link:"HTML Vorformatiert";
        font-family:"Courier New";
        mso-fareast-language:DE;}
.MsoChpDefault
        {mso-style-type:export-only;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="DE" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hi all,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US">as Martin suggests, I here have my changes in a way like most Patches are in the mailing list…<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I did not push them to Git because I think I have no rights…The changes cause the multicast message now to be received by the Server. Still the answer seems to have no effect to the dhcpc6,
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">perhaps someone has an idea about that…<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">diff --git a/./org/networking/udhcp/common.h b/./new/networking/udhcp/common.h<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">index bba3d60..f6aeee8 100644<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">--- a/./org/networking/udhcp/common.h<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+++ b/./new/networking/udhcp/common.h<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">@@ -16,6 +16,7 @@<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> extern const uint8_t MAC_BCAST_ADDR[6] ALIGN2; /* six all-ones */<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+extern const uint8_t MAC_DHCP6MCAST_ADDR[6] ALIGN2; /* IPv6 has new multicast format */<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">--------------------------  <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">diff --git a/./org/networking/udhcp/common.c b/./new/networking/udhcp/common.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">index 62ad248..c19fb65 100644<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">--- a/./org/networking/udhcp/common.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+++ b/./new/networking/udhcp/common.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">@@ -14,6 +14,10 @@ const uint8_t MAC_BCAST_ADDR[6] ALIGN2 = {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">               0xff, 0xff, 0xff, 0xff, 0xff, 0xff<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">};<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+const uint8_t MAC_DHCP6MCAST_ADDR[6] ALIGN2= {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+             0x33, 0x33, 0x00, 0x01, 0x00, 0x02<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+}; /* IPv6 requires different multicast contents in Ethernet Frame (RFC 2464) */<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">-----------------------------  <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">diff --git a/./org/networking/udhcp/d6_dhcpc.c b/./new/networking/udhcp/d6_dhcpc.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">index 422b888..4e8adb4 100644<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">--- a/./org/networking/udhcp/d6_dhcpc.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+++ b/./new/networking/udhcp/d6_dhcpc.c<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">@@ -536,10 +536,10 @@ static int d6_mcast_from_client_data_ifindex(struct d6_packet *packet, uint8_t *<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                              0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">               };<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">-              return d6_send_raw_packet(<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">-                              packet, (end - (uint8_t*) packet),<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+             return d6_send_raw_packet( 
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+                             packet, (end - (uint8_t*) packet),
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                               /*src*/ &client6_data.ll_ip6, CLIENT_PORT6,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">-                              /*dst*/ (struct in6_addr*)FF02__1_2, SERVER_PORT6, MAC_BCAST_ADDR,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">+                             /*dst*/ (struct in6_addr*)FF02__1_2, SERVER_PORT6, MAC_DHCP6MCAST_ADDR,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">                              client_data.ifindex<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">               );<o:p></o:p></span></p>
<div style="mso-element:para-border-div;border:none;border-bottom:solid windowtext 1.0pt;padding:0cm 0cm 1.0pt 0cm">
<p class="MsoNormal" style="border:none;padding:0cm"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I will see if can summarize the problem with the DHCP server on Windows Server2012 and try to attach perhaps some Wireshark logs<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Uwe<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<pre><span lang="EN-US">>Hello,<o:p></o:p></span></pre>
<pre><span lang="EN-US">>I have a few notes.<o:p></o:p></span></pre>
<pre><span lang="EN-US">><o:p> </o:p></span></pre>
<pre><span lang="EN-US">>First of all, you should send the diff as a git patch. Not only will it<o:p></o:p></span></pre>
<pre><span lang="EN-US">>make the code much easier to read, but will also make it possible to commit<o:p></o:p></span></pre>
<pre><span lang="EN-US">>into the git repository.<o:p></o:p></span></pre>
<pre><span lang="EN-US">>Also you mentioned that the server still doesn't respond as expected,<o:p></o:p></span></pre>
<pre><span lang="EN-US">>perhaps you could address that too?<o:p></o:p></span></pre>
<pre><span lang="EN-US">><o:p> </o:p></span></pre>
<pre><span lang="EN-US">>Martin<o:p></o:p></span></pre>
<pre><span lang="EN-US">><o:p> </o:p></span></pre>
<pre><span lang="EN-US">>On Tue, 5 May 2020 at 12:29, Uwe Glaeser <</span><a href="http://lists.busybox.net/mailman/listinfo/busybox"><span lang="EN-US">uwe.glaeser at dormakaba.com</span></a><span lang="EN-US">> wrote:<o:p></o:p></span></pre>
<pre><span lang="EN-US">><o:p> </o:p></span></pre>
<pre><span lang="EN-US">>><i> Hi all,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> I try to get a IPv6 address via DHCP from a “Windows 2012 R2 Server with<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> DHCPv6 Server”.<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> With actual busybox 1.31.1 and enabled IPv6 and udhcpc6 feature I try to<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> make contact to the server.<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> My deivce is an embedded Linux 2.6<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> What is working perfectly well is busybox ping6 and I get an IPv6 address<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> when connecting my PC(Win 10) to the server.<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> I watched the network with Wireshark and found out, that the ping6 and the<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> dhcp-solicit from the PC are transmitted as ipv6-multicast.<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> But the udhcpc6 solicit message is sent as IPv4 broadcast (with<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> FF:FF:FF:FF:FF:FF as destination in the EthernetII frame) which is not<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> correct I think.<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> I have made some changes in the sources that way:<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> I defined the field in common.h/.c for the IPv6 multicast to a DHCPv6<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> (general address is FF02::1:2)<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> const uint8_t MAC_DHCPBCAST_ADDR[6] ALIGN2= {<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 0x33, 0x33, 0x00, 0x01, 0x00, 0x02<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> };<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> and used it in d6_dhcp.c  in the call of:<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> static int d6_mcast_from_client_data_ifindex(struct d6_packet *packet,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> uint8_t *end)<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> {<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 /* FF02::1:2 is "All_DHCP_Relay_Agents_and_Servers"<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> address */<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 static const uint8_t FF02__1_2[16] = {<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                                0xFF, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> 0x00,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                                0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> 0x02,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 };<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 return d6_send_raw_packet(  packet, (end - (uint8_t*)<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> packet),<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                                                                /*src*/<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> &client6_data.ll_ip6, CLIENT_PORT6,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> /*dst*/ (struct in6_addr*)FF02__1_2, SERVER_PORT6, MAC_DHCPBCAST_ADDR,<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> client_data.ifindex<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i>                 );<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> }<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> That works better now and I can see nearly the same contents in Wireshark<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> as in the PC-dhcpv6 request. Ther Server still does not answer but that may<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> have other reasons…<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> I’m not sure if there are other parts where it would make sense to change<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> the header…Please have a look!<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> Best regards!<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i><o:p> </o:p></i></span></pre>
<pre><span lang="EN-US">>><i> Uwe Glaeser<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> dormakaba EAD GmbH<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> _______________________________________________<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> busybox mailing list<o:p></o:p></i></span></pre>
<pre><span lang="EN-US">>><i> </i></span><i><a href="http://lists.busybox.net/mailman/listinfo/busybox"><span lang="EN-US">busybox at busybox.net</span></a></i><i><span lang="EN-US"><o:p></o:p></span></i></pre>
<pre><span lang="EN-US">>><i> </i></span><i><a href="http://lists.busybox.net/mailman/listinfo/busybox"><span lang="EN-US">http://lists.busybox.net/mailman/listinfo/busybox</span></a></i><i><span lang="EN-US"><o:p></o:p></span></i></pre>
<pre>>><o:p> </o:p></pre>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
</body>
</html>