<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, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
Reading <a href="https://kea.readthedocs.io/en/kea-2.2.0/arm/dhcp4-srv.html#dhcpv4-vendor-specific-options" title="https://kea.readthedocs.io/en/kea-2.2.0/arm/dhcp4-srv.html#dhcpv4-vendor-specific-options" id="LPlnk269433">https://kea.readthedocs.io/en/kea-2.2.0/arm/dhcp4-srv.html#dhcpv4-vendor-specific-options</a> I
 see that it says:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
"<span style="color:rgb(64, 64, 64);font-family:Lato, proxima-nova, "Helvetica Neue", Arial, sans-serif;background-color:rgb(252, 252, 252);display:inline !important" class="ContentPasted0">In this example, we also include the Vendor-Specific Information option,
 which conveys our sub-option<span class="ContentPasted0"> </span></span><code class="docutils literal notranslate" style="box-sizing:border-box;font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace;font-size:12px;max-width:100%;background:rgb(255, 255, 255);border:1px solid rgb(225, 228, 229);padding:2px 5px;color:black;overflow-x:auto"><span class="pre ContentPasted0" style="box-sizing:border-box">foo</span></code><span style="color:rgb(64, 64, 64);font-family:Lato, proxima-nova, "Helvetica Neue", Arial, sans-serif;background-color:rgb(252, 252, 252);display:inline !important" class="ContentPasted0">.
 This is required; otherwise, the option will not be included in messages sent to the client."</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="elementToProof">
<span style="color:rgb(64, 64, 64);font-family:Lato, proxima-nova, "Helvetica Neue", Arial, sans-serif;background-color:rgb(252, 252, 252);display:inline !important" class="ContentPasted0"><br>
</span></div>
<div style="font-size: 12pt;" class="elementToProof"><font color="#404040" face="Lato, proxima-nova, Helvetica Neue, Arial, sans-serif"><span style="background-color: rgb(252, 252, 252);">--> maybe you need to add that (</span></font><span class="s2 ContentPasted1 ContentPasted2" style="font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace; font-size: 12px; background-color: rgb(252, 252, 252); color: rgb(186, 33, 33); box-sizing: border-box;">"name"</span><span class="p ContentPasted1 ContentPasted2" style="font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace; font-size: 12px; background-color: rgb(252, 252, 252); box-sizing: border-box;">:</span><span style="font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace; font-size: 12px; background-color: rgb(252, 252, 252);"> </span><span class="s2 ContentPasted1 ContentPasted2" style="font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace; font-size: 12px; background-color: rgb(252, 252, 252); color: rgb(186, 33, 33); box-sizing: border-box;">"vendor-encapsulated-options"</span><span style="font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace; font-size: 12px; background-color: rgb(252, 252, 252);">)
 in option-data as well ? like in the doc example:</span></div>
<div style="font-size: 12pt;" class="elementToProof"><font color="#404040" face="Lato, proxima-nova, Helvetica Neue, Arial, sans-serif"><span style="background-color: rgb(252, 252, 252);"><br>
</span></font></div>
<div style="font-size: 12pt;" class="elementToProof"><font color="#404040" face="Lato, proxima-nova, Helvetica Neue, Arial, sans-serif"><span style="background-color: rgb(252, 252, 252);">
<pre style="box-sizing:border-box;line-height:1.4;font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", Courier, monospace;font-size:12px;margin:0px;padding:12px;display:block;overflow:auto" class="ContentPasted1"><span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"option-data"</span><span class="p ContentPasted1" style="box-sizing:border-box">:</span> <span class="p ContentPasted1" style="box-sizing:border-box">[</span>
                <span class="p ContentPasted1" style="box-sizing:border-box">{</span>
                    <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"name"</span><span class="p ContentPasted1" style="box-sizing:border-box">:</span> <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"cookie"</span><span class="p ContentPasted1" style="box-sizing:border-box">,</span>
                    <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"space"</span><span class="p ContentPasted1" style="box-sizing:border-box">:</span> <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"APC"</span><span class="p ContentPasted1" style="box-sizing:border-box">,</span>
                    <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"data"</span><span class="p ContentPasted1" style="box-sizing:border-box">:</span> <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"1APC"</span>
                <span class="p ContentPasted1" style="box-sizing:border-box">},</span>
                <span class="p ContentPasted1" style="box-sizing:border-box">{</span>
                    <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"name"</span><span class="p ContentPasted1" style="box-sizing:border-box">:</span> <span class="s2 ContentPasted1" style="box-sizing:border-box;color:rgb(186, 33, 33)">"vendor-encapsulated-options"</span>
                <span class="p ContentPasted1" style="box-sizing:border-box">},</span>
                <span class="o ContentPasted1" style="box-sizing:border-box;color:rgb(102, 102, 102)">...</span>
            <span class="p ContentPasted1" style="box-sizing:border-box">],</span></pre>
<br>
</span></font></div>
<div style="font-size: 12pt;" class="elementToProof"><font color="#404040" face="Lato, proxima-nova, Helvetica Neue, Arial, sans-serif"><span style="background-color: rgb(252, 252, 252);"><br>
</span></font></div>
<div id="appendonsend"></div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)" class="elementToProof">
Cheers,
<div>Veronique</div>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Kea-users <kea-users-bounces@lists.isc.org> on behalf of Michael Schwartzkopff via Kea-users <kea-users@lists.isc.org><br>
<b>Sent:</b> Sunday, February 5, 2023 3:21 PM<br>
<b>To:</b> kea-users <kea-users@lists.isc.org><br>
<b>Subject:</b> [Kea-users] Option 43 problems</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt">
<div class="PlainText">Hi,<br>
<br>
<br>
I want to implement an option 43 string in the answer of the dhcp <br>
server. especially wand to implement Cisco openpnp as defined here: <br>
<a href="https://developer.cisco.com/site/open-plug-n-play/learn/learn-open-pnp-protocol/" data-auth="NotApplicable">https://developer.cisco.com/site/open-plug-n-play/learn/learn-open-pnp-protocol/</a>
<br>
<br>
<br>
<br>
The dhcp server should return the string "5A1N;K4;B3;I192.168.100.10".<br>
<br>
<br>
In ISC dhcpd the following config works:<br>
<br>
option space CISCOPNP;<br>
option CISCOPNP.pnpserver code 43 = string;<br>
class "ciscopnp" {<br>
   match if option vendor-class-identifier = "ciscopnp";<br>
   option vendor-class-identifier "ciscopnp";<br>
   vendor-option-space CISCOPNP;<br>
   option CISCOPNP.pnpserver = "5A1D;K4;B2;I192.168.100.10";<br>
}<br>
<br>
<br>
In kea I read a lot of doc, but I was not able to configure the server <br>
correctly.<br>
<br>
<br>
"Dhcp4": {<br>
   "option-def": [<br>
     {<br>
       "name": "openpnp",<br>
       "code": 5,<br>
       "space": "vendor-encapsulated-options-space",<br>
       "type": "string",<br>
       "array": false,<br>
       "record-types": "",<br>
       "encapsulate": ""<br>
     }<br>
<br>
]<br>
<br>
(...)<br>
<br>
subnet {<br>
<br>
(...)<br>
<br>
         "reservations": [<br>
           {<br>
             "hw-address": "00:b8:b3:6b:69:c0",<br>
             "ip-address": "192.168.100.24",<br>
             "hostname":   "staging01",<br>
             "option-data": [<br>
               {<br>
                 "name": "openpnp",<br>
                 "space": "vendor-encapsulated-options-space",<br>
                 "code": 5,<br>
                 "data": "5A1D;K4;B2;I192.168.100.10"<br>
               }<br>
             ]<br>
(...)<br>
<br>
<br>
But the server does not return the option at all:<br>
<br>
DEBUG DHCP4_RESPONSE_DATA [hwtype=1 00:b8:b3:6b:69:c0], <br>
cid=[00:63:69:73:63:6f:2d:30:30:62:38:2e:62:33:36:62:2e:36:39:63:30:2d:56:6c:31],
<br>
tid=0x1e47: responding with packet DHCPACK (type 5), packet details: <br>
local_address=192.168.100.10:67, remote_address=255.255.255.255:68, <br>
msg_type=DHCPACK (5), transid=0x1e47,<br>
options:<br>
   type=001, len=004: 4294967040 (uint32)<br>
   type=006, len=008: 192.0.2.1 192.0.2.2<br>
   type=012, len=009: "staging01" (string)<br>
   type=015, len=011: "example.org" (string)<br>
   type=051, len=004: 3600 (uint32)<br>
   type=053, len=001: 5 (uint8)<br>
   type=054, len=004: 192.168.100.10<br>
   type=058, len=004: 900 (uint32)<br>
   type=059, len=004: 1800 (uint32)<br>
   type=061, len=025: <br>
00:63:69:73:63:6f:2d:30:30:62:38:2e:62:33:36:62:2e:36:39:63:30:2d:56:6c:31<br>
<br>
<br>
Any idea what I am missing?<br>
<br>
<br>
Michael Schwartzkopff<br>
<br>
-- <br>
ISC funds the development of this software with paid support subscriptions. Contact us at
<a href="https://www.isc.org/contact/" data-auth="NotApplicable">https://www.isc.org/contact/</a> for more information.<br>
<br>
To unsubscribe visit <a href="https://lists.isc.org/mailman/listinfo/kea-users" data-auth="NotApplicable">
https://lists.isc.org/mailman/listinfo/kea-users</a>.<br>
<br>
Kea-users mailing list<br>
Kea-users@lists.isc.org<br>
<a href="https://lists.isc.org/mailman/listinfo/kea-users" data-auth="NotApplicable">https://lists.isc.org/mailman/listinfo/kea-users</a><br>
</div>
</span></font></div>
</body>
</html>