[Kea-users] 1.7.3 Option 43

Vulak . tmu811 at gmail.com
Thu Jan 2 12:41:26 UTC 2020


Hi,



I’m struggling with DHCP Option 43. We got request for locator service that
server ip-address should be included in Option 43 and I read the
documentation how it should be done and followed it, but no luck. It
doesn’t seem to work or is tcpdump showing the answer incorrectly.



Documentation says to configure option 43 like this:



    "client-classes": [



        {

            "name": "Quuppa LD",

            "test": "substring(option[60].hex,0,9) == 'Quuppa LD'",

            "option-data": [

                {

                    "name": "quuppa-server-ip",

                    "code": 1,

                    "space": "vendor-encapsulated-options-space",

                    "data": "10.18.205.36"

                }],

            "option-data": [



                {

                    "name": "vendor-encapsulated-options"

                }

            ]

        }

    ],



tcpdump result: (tcpdump port 67 or port 67 and reading with tcpdump -vvv
-r file.pcap)



          Vendor-rfc1048 Extensions

            Magic Cookie 0x63825363

            DHCP-Message Option 53, length 1: ACK

            Subnet-Mask Option 1, length 4: 255.255.255.224

            Default-Gateway Option 3, length 4: 10.18.205.33

            Domain-Name-Server Option 6, length 12: ns1.example.com

            *Vendor-Option Option 43, length 0*

            Lease-Time Option 51, length 4: 1800

            Server-ID Option 54, length 4: 0a3179-242.example.com

            END Option 255, length 0



tcpdump shows that value for option 43 is missing - is this correct?



I also tried with couple of other settings and only way I managed to push
data for option 43 was to configure it like this:



"option-data":[{"name":"vendor-encapsulated-options"},{"name":"quuppa","space":"vendor-encapsulated-options-space","code":43,"data":"10.18.205.36"}]}



tcpdump results:



          Vendor-rfc1048 Extensions

            Magic Cookie 0x63825363

            DHCP-Message Option 53, length 1: ACK

            Subnet-Mask Option 1, length 4: 255.255.255.224

            Default-Gateway Option 3, length 4: 10.18.205.33

            Domain-Name-Server Option 6, length 12: ns1.example.com

            *Vendor-Option Option 43, length 6: 43.4.10.18.205.36*

            Lease-Time Option 51, length 4: 1800

            Server-ID Option 54, length 4: 0a3179-242.example.com

            END Option 255, length 0



Here we get value in Option 43, but it’s getting added up the option (43)
and length(4) for it.





Other example related to option 43 is also missing something:



"Dhcp4": {

    "option-def": [

        {

            "name": "cookie",

            "code": 1,

            "type": "string",

            "space": "APC"

        },

        {

            "name": "mtftp-ip",

            "code": 1,

            "type": "ipv4-address",

            "space": "PXE"

        },

    ],

    "client-classes": [

        {

            "name": "APC",

            "test": "(option[vendor-class-identifier].text == 'APC'",

            "option-def": [

                {

                    "name": "vendor-encapsulated-options",

                    "type": "empty",

                    "encapsulate": "APC"

                }

            ],

            "option-data": [

                {

                    "name": "cookie",

                    "space": "APC",

                    "data": "1APC"

                },

                {

                    "name": "vendor-encapsulated-options"

                },

            ],

        },

        {

            "name": "PXE",

            "test": "(option[vendor-class-identifier].text == 'PXE'",

            "option-def": [

                {

                    "name": "vendor-encapsulated-options",

                    "type": "empty",

                    "encapsulate": "PXE"

                }

            ],

            "option-data": [

                {

                    "name": "mtftp-ip",

                    "space": "PXE",

                    "data": "0.0.0.0"

                },

                {

                    "name": "vendor-encapsulated-options"

                },

            ],

        },

    ],

}



With this running through syntax check you ll get this:



Syntax check failed with: missing parameter 'code' (kea-new.conf:39:17)
[option-def map between kea-new.conf:39:17 and kea-new.conf:43:17]



Kea version we are using is 1.7.3. Is our syntax correct or is there some
other way we should try to configure it? Or Does it work as intended?



/ Teemu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/kea-users/attachments/20200102/fad72f85/attachment.htm>


More information about the Kea-users mailing list