Thank you for all your help, I appreciate it. On Thu, May 25, 2023 at 10:30 AM Darren Ankney <darren.ank...@gmail.com> wrote:
> Hi Joshua, > > Looks like it might not be supported in 2.2.0. Here is a, now closed, > GL issue discussing PD hints: > https://gitlab.isc.org/isc-projects/kea/-/issues/1958 which was > milestoned for 2.3.4. > > Indeed, I just found it in the release notes for 2.3.4: > https://downloads.isc.org/isc/kea/2.3.4/Kea-2.3.4-ReleaseNotes.txt > > 4. **PD hints**: Kea now understands when a DHCPv6 client prefers a > prefix of a certain length. If Kea is configured to hand out /64, /60, > and /56 prefixes and the client requests /56, it will get it. > Previously, Kea ignored the hint and assigned prefixes in the order the > pools appeared in the config file [#1958]. > > 2.3.4 is part of the 2.3 development branch and is not recommended for > production use. The next stable (2.4.0) will include this > functionality and should be released this summer. > > Sorry to have misled you. > > Thank you, > > Darren Ankney > > On Thu, May 25, 2023 at 11:24 AM Joshua Pool <j...@mikrologic.com> wrote: > > > > DHCPv6 > > Message type: Solicit (1) > > Transaction ID: 0x05194c > > Client Identifier > > Option: Client Identifier (1) > > Length: 10 > > DUID: 000300010e2115700cf0 > > DUID Type: link-layer address (3) > > Hardware type: Ethernet (1) > > Link-layer address: 0e:21:15:70:0c:f0 > > Identity Association for Non-temporary Address > > Option: Identity Association for Non-temporary Address (3) > > Length: 12 > > IAID: 00000001 > > T1: 1800 > > T2: 2880 > > Elapsed time > > Option: Elapsed time (8) > > Length: 2 > > Elapsed time: 0ms > > Identity Association for Prefix Delegation > > Option: Identity Association for Prefix Delegation (25) > > Length: 41 > > IAID: 00000001 > > T1: 1800 > > T2: 2880 > > IA Prefix > > Option: IA Prefix (26) > > Length: 25 > > Preferred lifetime: 2880 > > Valid lifetime: 3600 > > Prefix length: 64 > > Prefix address: :: > > > > On Thu, May 25, 2023 at 3:37 AM Darren Ankney <darren.ank...@gmail.com> > wrote: > >> > >> Joshua, > >> > >> Assuming the logging is correct, it looks like the hint may not be > >> correct. It should be just an integer. It shouldn't have any other > >> data (such as :: or /) in the field: > >> > >> https://www.rfc-editor.org/rfc/rfc8415#section-18.2.1 > >> > >> The client MAY include values in IA Prefix options (see > >> Section 21.22) encapsulated within IA_PD options as hints for the > >> delegated prefix and/or prefix length for which the client has a > >> preference. See Section 18.2.4 for more on prefix-length hints. > >> > >> > >> https://www.rfc-editor.org/rfc/rfc8415#section-21.22 > >> > >> prefix-length Length for this prefix in bits. A 1-octet > >> unsigned integer. > >> > >> You could probably confirm the content of the field with a packet > capture. > >> > >> Thank you, > >> > >> Darren Ankney > >> > >> On Tue, May 23, 2023 at 5:09 PM Joshua Pool <j...@mikrologic.com> > wrote: > >> > > >> > Thanks for the response. I am using a Mikrotik router and I can get > the desired PD from Charter Spectrum just fine but when I try to do the > same with Kea it always assigns me the delegated-len value of /56 > regardless of what hint I include. > >> > > >> > In this example my Mikrotik is set with prefix hin ::/64 > >> > In Kea the DEBUG DHCP6 PACKET RECEIVED it shows the prefix=::/64 > >> > DEBUG DHCP6_PROCESS_IA_PD_REQUEST > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0x26e767: server is processing > IA_PD option with iaid=1 and hint=:: > >> > DHCP6_PD_LEASE_ADVERT duid=[00:03:00:01:0e:21:15:70:0c:f0], > tid=0xa0e83f: lease for prefix fd00:c40:20:600::/56 and iaid=1 will be > advertised > >> > > >> > Full Log: > >> > 20:47:11 DEBUG DHCP6_PACKET_RECEIVED > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: SOLICIT (type 1) > received from fe80::c21:15ff:fe70:cf0 to ff02::1:2 on interface eth1 > >> > <len=00012: iaid=1, t1=1800, t2=2880#012type=00008, len=00002: 0 > (uint16)#012type=00025(IA_PD), len=00041: iaid=1, t1=1800, > t2=2880,#012options:#012 type=00026(IAPREFIX), len=00025: prefix=::/64, > preferred-lft=2880, valid-lft=3600#012No relays traversed.#012 > >> > 20:47:11 DEBUG HOOKS_CALLOUTS_BEGIN begin all callouts for hook > pkt6_receive > >> > 20:47:11 DEBUG HOOKS_CALLOUT_CALLED hooks library with index 1 has > called a callout on hook pkt6_receive that has address 0x7fb78df0b710 > (callout duration: 0.036 ms) > >> > 20:47:11 DEBUG HOOKS_CALLOUTS_COMPLETE completed callouts for hook > pkt6_receive (total callouts duration: 0.036 ms) > >> > 20:47:11 DEBUG DHCPSRV_CFGMGR_SUBNET6_IFACE selected subnet > fd00:c40:10::/64 for packet received over interface eth1 > >> > 20:47:11 DEBUG DHCP6_SUBNET_SELECTED > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: the subnet with ID 1 > was selected for client assignments > >> > 20:47:11 DEBUG DHCP6_SUBNET_DATA > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: the selected subnet > details: fd00:c40:10::/64 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_IDENTIFIER get one host > with IPv6 reservation for subnet id 1, identified by > duid=000300010E2115700CF0 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with > reservations using identifier: duid=000300010E2115700CF0 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier > duid=000300010E2115700CF0, found 0 host(s) > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_IDENTIFIER_NULL host not > found using subnet id 1 and identifier duid=000300010E2115700CF0 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_IDENTIFIER get one host > with IPv6 reservation for subnet id 1, identified by hwaddr=0E2115700CF0 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_IDENTIFIER get all hosts with > reservations using identifier: hwaddr=0E2115700CF0 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_IDENTIFIER_COUNT using identifier > hwaddr=0E2115700CF0, found 0 host(s) > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_IDENTIFIER_NULL host not > found using subnet id 1 and identifier hwaddr=0E2115700CF0 > >> > 20:47:11 DEBUG DHCP6_CLASS_ASSIGNED > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: client packet has been > assigned to the following class(es): UNKNOWN > >> > 20:47:11 DEBUG DHCP6_PROCESS_IA_NA_REQUEST > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: server is processing > IA_NA option with iaid=1 and hint=(no hint) > >> > 20:47:11 DEBUG DHCPSRV_MEMFILE_GET_IAID_DUID obtaining IPv6 leases > for IAID 1 and DUID 00:03:00:01:0e:21:15:70:0c:f0 and lease type IA_NA > >> > 20:47:11 DEBUG ALLOC_ENGINE_V6_ALLOC_UNRESERVED no static > reservations available - trying to dynamically allocate leases for client > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS6 get one host with > reservation for subnet id 1 and having IPv6 address fd00:c40:10::206 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_SUBNET_ID_ADDRESS6 get all hosts > with reservations for subnet id 1 and IPv6 address fd00:c40:10::206 > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_SUBNET_ID_ADDRESS6_COUNT using > subnet id 1 and address fd00:c40:10::206, found 0 host(s) > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS6_NULL host not > found using subnet id 1 and address fd00:c40:10::206 > >> > 20:47:11 DEBUG DHCPSRV_MEMFILE_GET_ADDR6 obtaining IPv6 lease for > address fd00:c40:10::206 and lease type IA_NA > >> > 20:47:11 INFO DHCP6_LEASE_ADVERT > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: lease for address > fd00:c40:10::206 and iaid=1 will be advertised > >> > 20:47:11 DEBUG DHCP6_LEASE_DATA duid=[00:03:00:01:0e:21:15:70:0c:f0], > tid=0xa0e83f: detailed lease information for iaid=1: Type: > IA_NA(0)#012Address: fd00:c40:10::206#012Prefix length: 128#012IAID: > 1#012Pref life: 453600#012Valid life: 604800#012Cltt: > > >> > 20:47:11 DEBUG DHCP6_PROCESS_IA_PD_REQUEST > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: server is processing > IA_PD option with iaid=1 and hint=:: > >> > 20:47:11 DEBUG DHCPSRV_MEMFILE_GET_IAID_DUID obtaining IPv6 leases > for IAID 1 and DUID 00:03:00:01:0e:21:15:70:0c:f0 and lease type IA_PD > >> > 20:47:11 DEBUG ALLOC_ENGINE_V6_ALLOC_UNRESERVED no static > reservations available - trying to dynamically allocate leases for client > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS6 get one host with > reservation for subnet id 1 and having IPv6 address fd00:c40:20:600:: > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_SUBNET_ID_ADDRESS6 get all hosts > with reservations for subnet id 1 and IPv6 address fd00:c40:20:600:: > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ALL_SUBNET_ID_ADDRESS6_COUNT using > subnet id 1 and address fd00:c40:20:600::, found 0 host(s) > >> > 20:47:11 DEBUG HOSTS_CFG_GET_ONE_SUBNET_ID_ADDRESS6_NULL host not > found using subnet id 1 and address fd00:c40:20:600:: > >> > 20:47:11 DEBUG DHCPSRV_MEMFILE_GET_ADDR6 obtaining IPv6 lease for > address fd00:c40:20:600:: and lease type IA_PD > >> > 20:47:11 INFO DHCP6_PD_LEASE_ADVERT > duid=[00:03:00:01:0e:21:15:70:0c:f0], tid=0xa0e83f: lease for prefix > fd00:c40:20:600::/56 and iaid=1 will be advertised > >> > > >> > Any Thoughts? > >> > > >> > > >> > > >> > > >> > > >> > > >> > On Tue, May 23, 2023 at 2:46 AM Darren Ankney < > darren.ank...@gmail.com> wrote: > >> >> > >> >> Hello Joshua, > >> >> > >> >> It would appear it just happens. No need to configure anything. > There > >> >> is a debug message about the hint being processed: > >> >> > >> >> https://kea.readthedocs.io/en/kea-2.2.0/kea-messages.html > >> >> > >> >> DHCP6_PROCESS_IA_PD_REQUEST > >> >> > >> >> %1: server is processing IA_PD option with iaid=%2 and hint=%3 > >> >> > >> >> This is a debug message that indicates a processing of received IA_PD > >> >> option. The first argument contains the client and the transaction > >> >> identification information. The second argument holds the IAID of the > >> >> IA_PD option. The third argument may hold the hint for the server > >> >> about the prefix that the client would like to have allocated. If > >> >> there is no hint, the argument should provide the text indicating > that > >> >> the hint hasn't been sent. > >> >> > >> >> Thank you, > >> >> > >> >> Darren Ankney > >> >> > >> >> On Mon, May 22, 2023 at 8:39 PM Joshua Pool via Kea-users > >> >> <kea-users@lists.isc.org> wrote: > >> >> > > >> >> > With KEA 2.2 is there a way to assign a PD based on received PD > hints? > >> >> > > >> >> > > >> >> > -- > >> >> > ISC funds the development of this software with paid support > subscriptions. Contact us at https://www.isc.org/contact/ for more > information. > >> >> > > >> >> > To unsubscribe visit > https://lists.isc.org/mailman/listinfo/kea-users. > >> >> > > >> >> > Kea-users mailing list > >> >> > Kea-users@lists.isc.org > >> >> > https://lists.isc.org/mailman/listinfo/kea-users >
-- ISC funds the development of this software with paid support subscriptions. Contact us at https://www.isc.org/contact/ for more information. To unsubscribe visit https://lists.isc.org/mailman/listinfo/kea-users. Kea-users mailing list Kea-users@lists.isc.org https://lists.isc.org/mailman/listinfo/kea-users