Advertisement
colincogle

How to use 6rd on an Apple router

Aug 2nd, 2012
4,608
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.95 KB | None | 0 0
  1. HOW TO USE 6RD ON AN APPLE ROUTER (Time Capsule, AirPort Extreme, and friends)
  2. Version 1.0 (August 2, 2012)
  3. Questions, concerns? Tweet or DM @colincogle
  4.  
  5.  
  6. I. WHY?
  7. Why would you want to do this? There are plenty of routers out there from Cisco, Linksys, Buffalo, D-Link, and more that all support 6rd out of the box. Well, maybe you're happy with your shiny Time Capsule, your ISP is years away from enabling DHCPv6-PD (native IPv6) but has a 6rd border relay working, and/or you're bored and happen to have a fairly intimate knowledge of the IPv6 protocol, transition mechanisms, and the like. Plus, I knew that 6rd was just a customized version of 6to4, so I wanted to satisfy my curiosity.
  8.  
  9. Why not use native IPv6? That's supported. I'd love to, but my ISP is still figuring out its permanent dual-stack setup and, based on chats I've had with them over Web support and Twitter DM's, are probably light years away from turning on DHCPv6-PD.
  10.  
  11. Why not use 6to4? That's supported. Yeah, but sometimes, your ISP doesn't correctly advertise the anycast address 192.88.99.1, and your IPv6 packets travel from New York City all the way to Amsterdam and back. That actually happened at my old house with my old ISP.
  12.  
  13. Why not use a tunnel broker? That's supported, too. I like Hurricane Electric, but I really didn't feel like going through the tunnel setup procedure.
  14.  
  15. Why not just turn off IPv6? That's supported as well, but seriously now, did World IPv6 Launch mean anything to you? :-) You wouldn't be reading this article if you weren't a nerd.
  16.  
  17.  
  18. II. LEGAL STUFF
  19. Standard disclaimer applies: It should go without saying that this technique is COMPLETELY AND TOTALLY unsupported by Apple. Also, I don't guarantee this will work for you at all, and you should keep this far away from any production environments where breaking your Internet connectivity will result in very bad things.
  20.  
  21.  
  22. III. BEFORE YOU START
  23. Before we start, upgrade your softwares. Make sure you're using AirPort Utility 5.6 or 6.1, and that your router has the latest firmware available. IPv6 support proper didn't show up until firmware 7.4.2 or later, I believe. My AEBS is on 7.6.1, for what it's worth.
  24.  
  25. For this "hack," you will need to get your ISP's 6rd information, assuming they publish it on their support pages somewhere. For this example, I'll be using this obviously-fake border relay information. We'll only need the first three items.
  26.  
  27. 6rd Prefix = 2001:db8::/32
  28. Border Relay Address = 192.0.2.200
  29. 6rd prefix length = 32
  30. IPv4 mask length = 0
  31.  
  32. You'll also need to get the hex representation of your IPv4 address. Type printf "%02x%02x:%02x%02x\n" into a Terminal window, and then your public IPv4 address without dots: for example, 192 0 2 1. Press Return and write down what you get (for 192.0.2.1, I got c000:0201).
  33.  
  34.  
  35. IV. JUST GIVE ME THE STEPS!
  36. Sure.
  37.  
  38. 1. Go into the AirPort Utility.
  39.  
  40. 2. Click on your Apple router and choose Edit.
  41.  
  42. 3. On the Internet tab, click Internet Options.
  43.  
  44. 4. In the IPv6 configuration sheet, configure Manually and Tunnel.
  45.  
  46. 5. Let's make a prefix to announce to your LAN. Take your 6rd prefix (2001:db8::/32) and flesh it out with the hex version of your IPv4 address to create a /64 subnet. I came up with 2001:db8:c000:201::/64. Type that in under IPv6 Delegated Prefix.
  47.  
  48. 6. Give the router an IPv6 address of your choosing. To keep it simple, I used 2001:db8:c000:201::1. Type that in under IPv6 WAN Address and IPv6 LAN Address.
  49.  
  50. 7. Take the IPv4 address of your ISP's 6rd server, and type that under Remote IPv4 Address (e.g., 192.0.2.200). Note that this may be filled in for you, if your ISP is advertising 6rd over DHCPv4.
  51.  
  52. 8. Take the IPv4-compatible version of the above, and put that under IPv6 Default Route (e.g., ::192.0.2.200). Yes, IPv4-compatible addresses are deprecated, but we're going to use them anyway.
  53.  
  54. 9. Save the changes and reboot your router.
  55.  
  56.  
  57. V. TEST IT OUT!
  58. I'll assume you know how to verify all of this using your operating system of choice.
  59.  
  60. When your router comes back online, it'll immediately begin sending out RA's advertising that it is the default route, and announcing your new prefix to the LAN. It will also start up its DHCPv6 server in stateless mode, and add the O-flag to your RA's. Make sure your computer set itself up correctly!
  61.  
  62. Now, let's make sure you actually have connectivity! If you can access http://ipv6.google.com via HTTP or ping, then congratulations, you're one of a few people in the world to be using 6rd with an Apple router! If it just times out or your pings come back with ICMP errors, then play with your settings until it either works, or you give up and change everything back.
  63.  
  64. If you're feeling bold, temporarily disable IPv4 on your computer and go for a little surf. You'll find that most of Facebook, Netflix, Google, Bing, Xbox.com, and many more sites are reachable over IPv6. This will also verify that this "hack" actually works for more than just pings and Google's home page. :-)
  65.  
  66.  
  67. VI. THAT DAMNED LIGHT IS BLINKING
  68. Yeah, your router will likely be flashing a yellow light at you, likely IPv6 Relay Error or IPv6 Tunnel Error. In the first screen of AirPort Utility, click on your router, then on the status item. From that list, choose Ignore.
  69.  
  70.  
  71. VII. WHAT ABOUT DNS?
  72. This is cool, but not necessary. Optionally, you can type the IPv6 addresses of your ISP's DNS servers (or Google Public DNS, OpenDNS, OARC, etc.) under: your router, the Internet tab, and in the two IPv6 DNS server boxes.
  73.  
  74.  
  75. VIII. COPYRIGHT?
  76. Nope, this is just a list of instructions released to the public domain. Feel free to publish this on your own site, but please give credit where credit is due and link back to this post, my Twitter, or just leave my name on the directions. Don't be a dick.
  77.  
  78. I'm fairly sure that I'm the first person in the world to pull this off, but if Google failed me and someone beat me to this, kindly let me know and I'll quit bragging that I discovered something mildly useful.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement