<div dir="ltr"><div><div>Hi Marcin, thank you for clarifying.</div><div><br></div><div>On the other hand, a scenario that I have observed in many deployments with DHCPv4, is the existence of multiple networks configured in the same relay/CMTS that are eligible for leasing to the same type of device. This is: there is no difference between networks A, B and C but any of these networks can be use to assign addresses, for example, to CPEs.</div><div><br></div><div>From your comments, I understand that this is now not possible with Kea: Do you plan to include this type of functionality?</div></div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr">
<div><font face="'courier new', monospace"><font color="#333399"><font size="2">Guido Marelli</font><br><font size="2">Intraway Corp.</font><br><font size="2">Project Leader</font><br></font></font><span style="font-size:13px;color:rgb(51,51,153);font-family:'courier new',monospace">AR Office: </span><font face="'courier new', monospace" style="font-size:13px"><font color="#333399"><a value="+541160404000" style="color:rgb(17,85,204)">+54 (11) 6040 4000 x4033</a></font></font></div><div style="font-size:13px"><span style="color:rgb(51,51,153);font-family:'courier new',monospace">US Office: </span><font face="'courier new', monospace"><font color="#333399"><a value="+15166203890" style="color:rgb(17,85,204)">+1 (516) 620 3890 X4033</a> </font></font><span style="color:rgb(51,51,153);font-family:'courier new',monospace"> </span></div><p><span style="font-size:10pt;font-family:"Courier New";color:rgb(31,73,125)" lang="EN-US"></span></p><div style="font-size:13px"><span style="color:rgb(51,51,153);font-family:'courier new',monospace">Mobile: </span><font face="'courier new', monospace"><font color="#333399"><a value="+5491151111111" style="color:rgb(17,85,204)">+54 (911) 5424 9574</a> <br>Email:</font> <a href="mailto:guido.marelli@intraway.com" style="color:rgb(17,85,204)" target="_blank">guido.marelli@intraway.com</a></font><div><br><div><br></div><div><span style="border-collapse:collapse"><font color="#333399"><span lang="EN-US" style="font-size:10pt;font-family:'Courier New'">Visit our website at </span><a href="http://www.intraway.com/" style="color:rgb(17,85,204)" target="_blank"><span lang="EN-US" style="font-size:10pt;font-family:'Courier New'">http://www.intraway.com</span></a><span lang="EN-US" style="font-size:10pt;font-family:'Courier New'"><br>Proud to be an ISO 9001:2008 certified company</span></font></span></div></div></div><p></p></div></div></div>
<br><div class="gmail_quote">On Thu, Nov 12, 2015 at 6:25 AM, Marcin Siodelski <span dir="ltr"><<a href="mailto:marcin@isc.org" target="_blank">marcin@isc.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
On 10.11.2015 17:00, Guido Marelli wrote:<br>
> Hi,<br>
><br>
> I'm analyzing the feasibility of using Kea in DOCSIS networks. However,<br>
> I didn't managed to configure Kea to use more than one IPv4 subnet with<br>
> the same relay/giaddr.<br>
><br>
> What I observed is that Kea depletes leases from the first subnet and<br>
> that the other subnets, which were configured with the same relay, are<br>
> ignored. I think this behavior is due to the method "CfgSubnets4 ::<br>
> selectSubnet" which iterates subnets until it finds the first subnet<br>
> that matches the giaddr, but it doesn't check lease availability.<br>
><br>
> Any thoughts on this?<br>
><br>
><br>
> Regards,<br>
> Guido<br>
><br>
><br>
> Guido Marelli<br>
> Intraway Corp.<br>
> Project Leader<br>
> AR Office: +54 (11) 6040 4000 x4033<br>
> US Office: +1 (516) 620 3890 X4033<br>
><br>
> Mobile: +54 (911) 5424 9574<br>
</span>> Email: <a href="mailto:guido.marelli@intraway.com">guido.marelli@intraway.com</a> <mailto:<a href="mailto:guido.marelli@intraway.com">guido.marelli@intraway.com</a>><br>
><br>
><br>
> Visit our website at <a href="http://www.intraway.com" rel="noreferrer" target="_blank">http://www.intraway.com</a> <<a href="http://www.intraway.com/" rel="noreferrer" target="_blank">http://www.intraway.com/</a>><br>
<span class="">> Proud to be an ISO 9001:2008 certified company<br>
><br>
><br>
><br>
<br>
</span>Hi Guido,<br>
<br>
Thanks for your email and your interest in Kea.<br>
<br>
We have implemented "limited" support for DOCSIS in 2013 and<br>
successfully tested it with one cable network. This limited support<br>
facilitates the case when devices connected to the same link obtain<br>
addresses from different subnets. The devices are differentiated by the<br>
contents of the Vendor Class Identifier. It is assumed that that a<br>
device is a CM if the identifier is "docsis3.0". It is assumed that the<br>
device is a router if the identifier is "eRouter1.0".<br>
<br>
As per the Kea User's Guide:<br>
<a href="http://kea.isc.org/docs/kea-guide.html#dhcp4-client-classifier" rel="noreferrer" target="_blank">http://kea.isc.org/docs/kea-guide.html#dhcp4-client-classifier</a><br>
<br>
you can create a subnet with address pools dedicated exclusively for CMs<br>
with a configuration similar to this:<br>
<br>
"Dhcp4": {<br>
"subnet4": [<br>
{<br>
"subnet": "<a href="http://192.0.2.0/24" rel="noreferrer" target="_blank">192.0.2.0/24</a>",<br>
"pools": [ { "pool": "192.0.2.10 - 192.0.2.20" } ],<br>
"relay": {<br>
"ip-address": "10.0.0.1"<br>
},<br>
"client-class": "VENDOR_CLASS_docsis3.0"<br>
}<br>
],<br>
...<br>
}<br>
<br>
Note that the "docsis3.0" is an identifier sent in the Vendor Class<br>
Identifier option by CM. If your CMs send different identifier, the<br>
class name is "VENDOR_CLASS_<your-cm-identifier>".<br>
<br>
One final note. The "proper" implementation of DOCSIS requires full<br>
support for client classification, i.e. the server must be able to<br>
extract arbitrary expressions from various DHCP options and use them to<br>
assign a client to a particular class or set of classes. Then, classes<br>
are used to assign subnets, options etc according to the configuration.<br>
The first part of this generic client classification will be available<br>
with the Kea1.0 release (December 2015). The next release (Kea1.1) is<br>
fully devoted to finish up client classification. So, if the current<br>
"limited" support for DOCSIS is not sufficient for your deployment, you<br>
may wish to monitor the progress on client classification for 1.0 and<br>
1.1 releases to make sure it would address your needs.<br>
<br>
I should also note that Kea has a built-in mechanism of "hooks" which<br>
allows for customizing packet processing at various stages. The server<br>
calls out to custom/user-defined C++ library to perform common tasks<br>
like subnet selection, options assignment etc. It is possible for you to<br>
create a simple C++ library which replaces standard subnet selection<br>
mechanism with customized one, required in your deployment.<br>
<br>
More about writing your own hooks can be found in Kea Developer's Guide:<br>
<a href="http://git.kea.isc.org/~tester/kea/doxygen/df/d46/hooksdgDevelopersGuide.html" rel="noreferrer" target="_blank">http://git.kea.isc.org/~tester/kea/doxygen/df/d46/hooksdgDevelopersGuide.html</a><br>
<span class="HOEnZb"><font color="#888888"><br>
Marcin Siodelski<br>
DHCP Software Engineer<br>
ISC<br>
<br>
<br>
</font></span></blockquote></div><br></div>