<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;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0cm;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:36.0pt;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";
mso-fareast-language:SV;}
.MsoChpDefault
{mso-style-type:export-only;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:1555896538;
mso-list-type:hybrid;
mso-list-template-ids:668079318 69009423 69009433 69009435 69009423 69009433 69009435 69009423 69009433 69009435;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
--></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="SV" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hello users and developers of KEA-dhcp!<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">I am looking for suggestions on the possibility to change the behavior of the kea-dhcpv6-server in a way that it facilitate the needs as an operator that provides internet to customers in other operators fiber-optic MAN-networks.
(The is the standard model for how Fiber Optic ISP-business is done in Sweden). Operators like our self, have not yet deployed IPv6 to customers yet because the technology in the network has not been mature enough and it has been hard to coordinate the implementation
with the MAN-network owners, but as of year 2017 and the works of the ISC, we seem to have a stable product that is very soon capable of meeting the requirements we as an operator have to be able to deploy it and also set the limits of what can be achieved
with ISC DHCPv6 in Sweden. As I see it, we are closer than ever on achieving a great community goal.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><br>
<b><span style="color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%">The requirements we need to meet to finalize IPv6 deployment:</span><o:p></o:p></b></span></p>
<p class="MsoNormal"><span lang="EN-US">One /64 subnet per access-loop in the FTTx-providers network. Behind one access-loop, there may be endless amounts of clients, but normally it would be a residential home or a facility owned by an organization or company
connected to a fiber-optic MAN-network.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The only way we can make the DHCP-server provide a /64 based on the access-loop is to match based on the circuit-id, and from what I can tell that would be option 18.<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">For example if we look at Junipers DHCP-relay option in dual-stack networks they have the option to make their relay-agents include the DHCPv4 option 82 value into the DHCPv6 option 18 value.<br>
<br>
This option 18 gives the DHCPv6 server the ability to allow the customer to connect to one giant ipv6 network and have all its endpoints connected to the same network.<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">And for example, if a IPV6-router is connected to this access-loop network it is able to receive its own prefix through prefix delegation to extend the network even further.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><![if !supportLists]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%"><span style="mso-list:Ignore">1.<span style="font:7.0pt "Times New Roman"">
</span></span></span></b><![endif]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%">We need to reserve an IPv6 address-pool based on the interface-id and the relay-agent
ip-address set in the forward-relay: solicit package.<o:p></o:p></span></b></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><![if !supportLists]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%"><span style="mso-list:Ignore">2.<span style="font:7.0pt "Times New Roman"">
</span></span></span></b><![endif]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%">The available pools and it’s prefix size should be specified in the configuration, and
based on the available pools, they should be dynamically assigned and it should dynamically assign ipv6 host-addresses accordingly with the servers default behavior.<o:p></o:p></span></b></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><![if !supportLists]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%"><span style="mso-list:Ignore">3.<span style="font:7.0pt "Times New Roman"">
</span></span></span></b><![endif]><b><span lang="EN-US" style="font-size:12.0pt;color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%">When there is no requesting/active lease for the pool, the pool is made available to be
reserved by another client identified by the interface-id (option 18) value in conjunction with the IP-address of the relay.<o:p></o:p></span></b></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The easy way to obtain this is not with the logic from the old age – to define 1 million pools and also define the expected option 18 value for each one, that is not remotely possibly to expect us to do.<br>
It is by the logic used in ISC DHCP, the “spawn with subscriber.id” that was phenomenally good when using the (customer -> relay -> dhcp-server) model with option82 identifying the circuit.id that served us well.<br>
>From what I can tell the same logic should be applied when using KEA dhcpv6 for serving ipv6 networks to one access-loop and dynamically serving the users end nodes ipv6 addresses.<br>
<br>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">This solution is to facilitate the recommendations of section 4.2.2 in the document TR-177, which is used as a guideline for the biggest FTTx MAN-network provider in Sweden. (<a href="https://www.broadband-forum.org/technical/download/TR-177.pdf">https://www.broadband-forum.org/technical/download/TR-177.pdf</a>)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><br>
<b><span style="color:#2E75B6;mso-style-textfill-fill-color:#2E75B6;mso-style-textfill-fill-alpha:100.0%">Final statement</span><o:p></o:p></b></span></p>
<p class="MsoNormal"><span lang="EN-US">I may be wrong and there may be better ways of solving this issue, there may also be known issues that address what is needing to be done, I really hope a senior developer/technician at KEA, can help me address these
issues, so that we can solve the problems of ipv4 exhaustion and implement ipv6 in the manners desired for the evolution of the Internet.<br>
<br>
Big thanks to everyone involved! I am very much excited to see the response to this big issue.<br>
<br>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="color:#ED7D31">Best of regards,<br>
<br>
<o:p></o:p></span></b></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:9.0pt">Michael Marshall<o:p></o:p></span></b></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.0pt">Fiber Optic Network Engineer<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.0pt">Internetport Sweden AB<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.0pt">+46 (0) 650 - 40 20 00</span><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" style="font-size:9.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
</body>
</html>