[Kea-users] Problems trying to implement RFC 8925 (v6-only-preferred)

Brian Candler b.candler at pobox.com
Mon Jul 31 18:42:22 UTC 2023


On 31/07/2023 19:32, Dan Oachs wrote:
> I'm confused.  What is the issue with Kea offering v6 only clients an 
> ipv4 address?  The client will not accept the ipv4 address and kea 
> will not reserve that IP address for them.  The end result is a 
> drastic reduction in ipv4 pool usage.  At least, that's how it is 
> working for me.

This is a proof-of-concept IPv6-only network: no IPv4 addresses at all, 
and no NAT44 (only NAT64).

You are correct that RFC8925-aware clients refuse the IPv4 address 
offered. However if someone plugs in a non-RFC8925 client, and Kea 
offers them an IPv4 address, they will use it.

That's why I want to detect whether the client is announcing RFC8925 
capability, and I was hoping for something less ugly (and more robust) 
than this:

     "client-classes": [
         {
             "name": "rfc8925",
             "test": "substring(option[55].hex, 0, 1) == 0x6c or 
substring(option[55].hex, 1, 1) == 0x6c or substring(option[55].hex, 2, 
1) == 0x6c or substring(option[55].hex, 3, 1) == 0x6c or 
substring(option[55].hex, 4, 1) == 0x6c or substring(option[55].hex, 5, 
1) == 0x6c or substring(option[55].hex, 6, 1) == 0x6c or 
substring(option[55].hex, 7, 1) == 0x6c or substring(option[55].hex, 8, 
1) == 0x6c or substring(option[55].hex, 9, 1) == 0x6c or 
substring(option[55].hex, 10, 1) == 0x6c or substring(option[55].hex, 
11, 1) == 0x6c or substring(option[55].hex, 12, 1) == 0x6c"
         },
     ],



More information about the Kea-users mailing list