Reading Time: 2 minutes
This post will be a short one, and mostly just comes from a discussion I had the other day with another engineer. It turns out that even among people who are comfortable with IPv6, and maybe even have experience deploying it, a lot of misinformation still persists. Hopefully I can correct a couple of those today. I also tossed in a hot-potato at the end just to see how many folks get hopped up. Discussion is welcome, and in addition to comments here I can be found on twitter hiding behind the handle: @someclown.
You must turn on IPv6 by using the IPv6 unicast-routing command.
Not true. This is one of the more persistent, yet wildly incorrect, pieces of information regarding IPv6. I have even seen many training centers and instructors at the CCIE level get this one wrong and it falls into the category of attention to detail. What this command actually does is enable unicast routing for IPv6, just as it says. To actually enable IPv6 you simply need to go to any interface and use the ipv6 enable command. And yes, you can enable IPv6 on the interface without enabling unicast routing. Of course, it would be helpful to have an address on the interface as well.
Yes, but if you don’t turn on unicast routing you can’t route IPv6 traffic.
Not strictly speaking true. You can still set up a default route for IPv6 traffic and get it off of your system. To the extent that you want to argue whether or not this is actually routing is fine, but you can move IPv6 traffic off of your local device using a default route, and never have enabled routing for IPv6.
Using a /127 address on point-to-point links is wrong, wrong, wrong.
This is an interesting one, and usually sparks a fair amount of debate. Up until very recently, the recommendation across the board (RFC 4291) was to use /64 addresses even on point-to-point links, ostensibly because the IPv6 space is so big anyhow, and because several protocols will break (notably subnet-router anycast, specified in RFC 3627). While I’m not disputing that this is what the current best-practices reflect, I will say that RFC 6164 which has a status of Proposed Standard makes a fairly compelling case for using /127 on point-to-point links. I’m sure this won’t be resolved anytime soon, standards or no, but I would say that if you have a compelling reason for using /127 and know what you’re doing it for, go for it. Just be aware that standards can change, and you don’t want to leave a steaming pile for the poor person who has to follow you.