Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I currently have an Airport Extreme as my home office firewall. In addition to handling IPv4 NAT, my ISP (Comcast) delegates an IPv6 prefix to the Airport, which in turn assigns the delegated prefix to my LAN interface and sends the appropriate route advertisements.

I'd like to replace the Airport with a small Linux firewall - the NUC with a second ethernet interface is looking quite intriguing - but I'm having trouble determining whether the IPv6 behavior can be replicated. My basic questions are:

  • Can ISC's DHCPv6 client accept a prefix delegation, or only host IPv6 addresses?
  • If the above is true, can the DHCPv6 client assign the received prefix to a different interface? Does the client support "on commit", or is that only supported on the DHCP server?
share|improve this question

2 Answers 2

ISC DHCP certainly will request a prefix delegation from your ISP if you ask it to, but it won't actually do anything with it beyond logging it somewhere. Nor will any other DHCP client.

If you really intend to build your own router, you'll have to write your own scripts to determine the prefix that was delegated, set up static routes, and configure your router advertisement daemon and/or DHCPv6 server on your LAN.

If you want an example, OpenWrt beginning with Barrier Breaker has already done this and you may be able to reuse some of their work.

For a home office I wouldn't really bother with this, and just use something off the shelf that has proper IPv6 support...like your Airport Extreme.

share|improve this answer
    
"Nor will any other DHCP client" -- not true. WIDE's DHCP6 client will automatically assign addresses from the delegated prefix to interfaces you ask it to. –  womble Nov 15 at 19:58
    
@womble That's good to know. I can only say that this was the best information I had at the time I wrote it. :) –  Michael Hampton Nov 15 at 20:03

dhcpcd after 6.4.0 (or fetch the trunk from the repository) will request and disposition a ia-pd prefix.

for instance the nominal config

interface eth1

ia-pd 1/::/60 eth2/2/64 eth3/3/64

will request a prefix with a length of 60 (so four bits, a.k.a. eight networks) and assign the resulting networks to the listed interfaces, with the prefix length of 64 and the lowest four bits of the prefix set to the number between the slashes. (and the root local address of 1.

So xxxx:xxxx:xxxx:xxx0::/60 will be requested, and if received xxxx:xxxx:xxxx:xxx2::1/64 will be assigned to eth2, and xxxx:xxxx:xxxx:xxx3::1 will be assigned to eth3. etc.

Be warned that it won't work correctly with Comcast because comcast requires you to request and receive an ia_pd and an ia_na, and they issue them as separate responses from separate servers, which is a no-no (more or less).

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.