<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
My expectation is when dhcp6 packet received from fd01 subnet , reply should include Option value 5 to be 10.5.152.181, and for fd02 it should be 10.5.152.18 . But the behavior is not same with Kea2.1.1 . it sends whichever the one first received meaning if
I receive fd01 then it keeps sending 10.5.152.181 for subsequent packets irrespective of subnet. I tried with Client-class option and also require-client-classes (deferred eval). I cannot use option in subnet level as it is dynamically added
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
Is this approach wrong from my side ? if so can you help what should I be using ? I am following the document
<a href="https://kb.isc.org/docs/understanding-client-classification"><span style="color:#0563C1">https://kb.isc.org/docs/understanding-client-classification</span></a>.
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"Dhcp6": {<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"client-classes": [ <o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"name": "Client_fd01",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"always-send": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"code": 5,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"csv-format": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"data": "10.5.152.181",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"name": "est-addr",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"space": "vendor-26484"<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<span style="background:yellow;mso-highlight:yellow">"test": "substring(addrtotext(relay6[-1].linkaddr), 0, 4) == 'fd01'" // Indicates one HES instance that requires option 5 value to be 10.5.152.181</span><o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
},<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"name": "Client_fd02",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"always-send": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"code": 5,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"csv-format": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"data": "10.5.152.18",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"name": "est-addr",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"space": "vendor-26484"<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"test": "substring(addrtotext(relay6[-1].linkaddr), 0, 4) == 'fd02'" <span style="background:yellow;mso-highlight:yellow">
// Indicates one HES instance that requires option 5 value to be 10.5.152.18</span><o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"subnet6": [<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"calculate-tee-times": false,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"id": 1,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pd-pools": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pools": [<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pool": "fd01::/112"<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<span style="background:yellow;mso-highlight:yellow">"require-client-classes": ["Client_fd01"],</span><o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"preferred-lifetime": 4294967295,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"rapid-commit": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"rebind-timer": 2000,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"relay": {<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"ip-addresses": [ ]<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
},<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"renew-timer": 1000,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"reservations": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"store-extended-info": false,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"subnet": "fd01::/64",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"t1-percent": 0.8,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"t2-percent": 0.9,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"valid-lifetime": 4294967295<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
},<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"calculate-tee-times": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"id": 3,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pd-pools": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pools": [<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
{<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"option-data": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"pool": "fd02::/112"<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"preferred-lifetime": 4294967295,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"rapid-commit": true,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"rebind-timer": 4294967295,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"relay": {<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"ip-addresses": [ ]<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
},<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
<span style="background:yellow;mso-highlight:yellow">"require-client-classes": ["Client_fd02"],</span><o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"renew-timer": 4294967295,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"reservations": [ ],<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"store-extended-info": false,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"subnet": "fd02::/64",<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"t1-percent": 0.8,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"t2-percent": 0.9,<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
"valid-lifetime": 0<o:p> </o:p></p>
<p class="MsoNormal" style="margin:0in;font-size:11pt;font-family:Calibri, sans-serif">
}<o:p> </o:p></p>
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
pls find the attached pcap files that should show issue between 2 subnets (packets sent from perfdhcp)</div>
</body>
</html>