Skip to main content

DHCP and SLAAC

I already setup dnsmasq for IPv4 and so there is very little that needs to be done to add IPv6 support.

I just needed to add dhcp-range lines for each subnet. I am tagging them the same as before and using the ::,constructor:<interface> syntax to tell dnsmasq to determine the the prefix the DHCPv6 range should be valid over from the GUAs (Global Unicast Addresse) (publically routable IPs) on each interface. These were assigned in the previous section (Prefix Delegation) by wide-dhcpv6-client. Declaring ra-stateless configures dnsmasq to use SLAAC to automatically configure clients in this prefix.

# /etc/dnsmasq.d/dhcp.conf
+ dhcp-range=set:lan,::,constructor:eth1,ra-stateless,12h
+ dhcp-range=set:dmz,::,constructor:eth1.8,ra-stateless,12h
+ dhcp-range=set:warp,::,constructor:eth1.9,ra-stateless,5m

Then I enabled router advertisements so dnsmasq will broadcast information to any potential clients on the subnet.

# /etc/dnsmasq.d/router-advertisements.conf
+ enable-ra