[Kea-users] 1.7.3 Option 43

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[Kea-users] 1.7.3 Option 43

Vulak .

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


_______________________________________________
Kea-users mailing list
[hidden email]
https://lists.isc.org/mailman/listinfo/kea-users