IPv6CP+DHCPv6+SLAAC+RA = IPCP

Last week I got an interesting tweet: “Hey @ioshints can you tell me what is the radius parameter to send ipv6 dns servers at pppoe negotiation?” It turned out that the writer wanted to propagate IPv6 DNS server address with IPv6CP, which doesn’t work. Contrary to IPCP, IPv6CP provides just the bare acknowledgement that the two nodes are willing to use IPv6. All other parameters have to be negotiated with DHCPv6 or ICMPv6 (RA/SLAAC).

The following table compares the capabilities of IPCP with those offered by a combination of DHCPv6, SLAAC and RA (IPv6CP is totally useless as a host parameter negotiation tool):

Parameter IPCP DHCPv6 SLAAC1 RA2
Host address Yes Yes3 Yes
Default router No No Yes
DNS server Yes Yes Yes4
DNS search list No Yes Yes4
Delegated prefix No Yes (IA_PD) No

Notes:

  1. SLAAC (RFC 2462) uses RA to get IPv6 prefix information for the local subnet.
  2. Router Advertisements (RA) are part of ICMPv6 (RFC 4443).
  3. You will probably want to use auto-negotiated IPv6 addresses on PPP connections.
  4. IPv6 RA options for DNS configuration (RFC 6106) is not yet widely implemented in desktop operating systems.

To deploy IPv6 in a dialup environment with Cisco IOS you have to:

  • Deploy DHCPv6 servers on the routers. If you just need to pass DNS information to end hosts, don’t configure IPv6 address pools. If you have to support IA_PD prefix delegation, associate local IPv6 address pool with the DHCP pool (unless you do prefix delegation via Radius).
  • Enable RA on all virtual template interfaces. While it’s not exactly mandatory to run RA on a point-to-point link (it’s pretty obvious who the router is), RA simplifies automatic default route generation of on the CPE device.
  • Use SLAAC. RA is enabled, so SLAAC works. However, SLAAC requires a globally-routable IPv6 prefix on every virtual access interface. Use IPv6 address pools with dynamic prefix allocation.

More information

Various IPv6 access interface configurations are described in my Building IPv6 Service Provider Core webinar (buy the recording or register for an online session); if you’re an enterprise engineers running a decently large network, you’ll find it useful despite its title.

Entry-level information for enterprise engineers considering IPv6 deployment in their networks is summarized in my Enterprise IPv6 – the first steps webinar (buy the recording or register for an online session).

Both webinars are also available as part of the yearly subscription package.

2 comments:

  1. Chris.young@HP.com01 March, 2011 13:20

    Hi Ivan,

    What would you recommend for a simple Lab environment with enough complexities to learn IPv6? Any design or topology guidance?

    ReplyDelete
  2. Ivan Pepelnjak01 March, 2011 13:54

    Enterprise or SP focus? For enterprise, a few routers and switches, a server (web, DNS, DHCP) or two and a few clients (Windows, OSX, Linux, iPad) should be more than enough. IPv6 connectivity to the global Internet is a definite plus.

    ReplyDelete

You don't have to log in to post a comment, but please do provide your real name/URL. Anonymous comments might get deleted.

Ivan Pepelnjak, CCIE#1354, is the chief technology advisor for NIL Data Communications. He has been designing and implementing large-scale data communications networks as well as teaching and writing books about advanced technologies since 1990. See his full profile, contact him or follow @ioshints on Twitter.