Wednesday, November 7, 2018

Prefix Delegation with ISC DHCPv6

I'm trying to lab up an environment where my ISC DHCP server is handing out a /64 prefix to each router that connects to it. What I'm experiencing is really odd though. My Vlan100 works as I would expect. The end router grabs an address for its WAN port, and I see a /64 assigned to the LAN side. The static route is created on my cisco gear in this process, and traffic flows as I would expect.

However, on my other two - Vlan 101 and 102 - I can't get the same model of router with the same config to grab a prefix or WAN IP. I see the reply from the DHCP server, I see the static route entry created on the cisco equipment (relay), but the end device never accepts the IP or prefix.

I can take the same working router, move it to one of my problematic Vlans, and it will experience the same problem. I've tried multiple routers on my working Vlan with no issues except for Vlan 101 and 102.

Also to note, if I issue show ipv6 interface Vlan 101 will show something like this.

Global unicast address(es): fc00:aaaa:500::, subnet is fc00:aaaa:500::/64 [DUP] 

The odd thing is I can remove that prefix and assign it to a different interface, and it will not show [DUP]. If I assign a different prefix to that interface [DUP] will go away for a while, but eventually return on the new prefix. I can remove those prefixes completely, and have no route in the routing table for that prefix.

I've been trying to figure out what is causing my grief for the past two days, and I can't seem to come to a resolution. IPv4 DHCP works just fine on those Vlans. Any guidance is greatly appreciated.

Here is my ISC config. -- Changed addresses for obvious reasons.

default-lease-time 2592000; preferred-lifetime 604800; option dhcp-renewal-time 3600; option dhcp-rebinding-time 7200; allow leasequery; option dhcp6.name-servers 2001:4860:4860::8888, 2001:4860:4860::8844; option dhcp6.domain-search "my.lab"; option dhcp6.preference 255; option dhcp6.rapid-commit; option dhcp6.info-refresh-time 21600; dhcpv6-lease-file-name "/var/lib/dhcpd/dhcpd6.leases"; subnet6 fc00:aaaa:0:1::/126 { } subnet6 fc00:aaaa:100:1000::/64 { range6 fc00:aaaa:100:1000::1 fc00:aaaa:100:1000:ffff:ffff:ffff:ffff; } shared-network vlan100 { subnet6 fc00:aaaa:100:1001::/64 { range6 fc00:aaaa:100:1001::1 fc00:aaaa:100:1001:ffff:ffff:ffff:ffff; prefix6 fc00:aaaa:101:: fc00:aaaa:101:7f:: /64; default-lease-time 1209600; max-lease-time 1209600; min-lease-time 172800; } } shared-network vlan101 { subnet6 fc00:aaaa:100::/64 { range6 fc00:aaaa:100::1 fc00:aaaa:100::ffff:ffff:ffff:ffff; prefix6 fc00:aaaa:101:10:: fc00:aaaa:100:1f:: /64; default-lease-time 129600; max-lease-time 129600; min-lease-time 86400; } } shared-network vlan102 { subnet6 fc00:aaaa:500::/64 { range6 fc00:aaaa:500::1 fc00:aaaa:500::ffff:ffff:ffff:ffff; prefix6 fc00:aaaa:501:: fc00:aaaa:501:: /64; default-lease-time 129600; max-lease-time 129600; min-lease-time 86400; } } 

And here is my interface configuration.

interface Vlan100 ipv6 address fc00:aaaa:100:1001::/64 ipv6 enable ipv6 nd prefix fc00:aaaa:100:1001::/64 ipv6 nd managed-config-flag ipv6 nd other-config-flag ipv6 dhcp relay destination fc00:aaaa:0:1::2 ipv6 eigrp 1 interface Vlan101 ipv6 address fc00:aaaa:100::/64 ipv6 enable ipv6 nd prefix fc00:aaaa:100::/64 ipv6 nd managed-config-flag ipv6 nd other-config-flag ipv6 dhcp relay destination fc00:aaaa:0:1::2 ipv6 eigrp 1 interface Vlan102 ipv6 address fc00:aaaa:500::/64 ipv6 nd prefix fc00:aaaa:500::/64 ipv6 nd managed-config-flag ipv6 nd other-config-flag ipv6 dhcp relay destination fc00:aaaa:0:1::2 ipv6 eigrp 1 



No comments:

Post a Comment