odhcpd: add support for dhcpv6_pd_min_len parameter
authorJohn Kohl <jtk.git@bostonpog.org>
Sat, 24 Jun 2023 14:18:03 +0000 (10:18 -0400)
committerChristian Marangi <ansuelsmth@gmail.com>
Sat, 24 Jun 2023 16:48:29 +0000 (18:48 +0200)
commit52112643308bb02a3b4fa2894dd7d4340ba4a237
tree6a5d354cd023395746c0e0774ebf8ec88b890153
parentc6bff6f1c0fbb37a21a7f54e393615bad22a72d9
odhcpd: add support for dhcpv6_pd_min_len parameter

The dhcpv6_pd_min_len configuration clamps the requested prefix
delegation to be at least as big as the option.  This allows a
router to manage the size of each downstream router's prefix
delegation length independently from the delegating interface's
prefix length.

This behavior is an implementation choice permitted by the RFCs.
The delegating router (us) is not required to honor the hint
(RFC3633, section 11.2, we MAY choose to use the information in the
option; RFC8168, section 3.2 has several SHOULDs about desired
choices for selecting a prefix to delegate).

This configuration allows us to conserve prefix space so that any
single router can't grab too much of it.  Consider if we have an
interface with a /56 prefix.  A requesting router could ask for a
/58 and take 1/4 of our total address space.  But if we set a
minimum of /60, we can limit each requesting router to get only 1/16
of our total address space.

sample config:

config dhcp 'pd'
    ...
    option dhcpv6_pd_min_len '60'

Signed-off-by: John Kohl <jtk.git@bostonpog.org>
[ use different comment style and fix commit description ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
README
src/config.c
src/dhcpv6-ia.c
src/odhcpd.h