It’s time to move to IPv6. Many ISPs have already rolled out IPv6 or are in the process of doing so. If you’re the typical consumer, you don’t have much to do. But my blog isn’t geared towards the typical consumer. Like me, you probably have enterprise-grade router sitting at your edge. I happen to have a Cisco 1921. My ISP, Spectrum (Legacy Time Warner Cable), has deployed IPv6 completely in the area I’m located in. Other parts of the Legacy Time Warner Cable network may not have IPv6 fully implemented yet and other areas such as Legacy Bright House Networks and parts of Legacy Charter have no IPv6 connectivity yet.
Some things to note:
- This assumes DHCPv6 from your ISP (in my case, Spectrum). If you have a static block or your own block from ARIN, this process won’t work.
- You have a cable modem capable of IPv6 (if it’s modern, it should)
- Your devices are IPv6 capable
- We’re going to focus on establishing IPv6 connectivity, not worry about ACLs
Configure your router
Get into global config mode
And go to your WAN interface. In my case GigabitEthernet0/0 is my WAN. Once there, add the following:
R1(config-if)#ipv6 address dhcp R1(config-if)#ipv6 enable R1(config-if)#ipv6 nd autoconfig default-route R1(config-if)#ipv6 nd other-confog-flag R1(config-if)#ipv6 dhcp client information refresh minimum 60 R1(config-if)#ipv6 dhcp client pd hint ::/64 R1(config-if)#ipv6 dhcp client pd SPECTRUM_PD rapid-commit R1(config-if)#ipv6 dhcp client request vendor R1(config-if)#exit
Before we continue, I want to talk about this line:
ipv6 dhcp client pd hint ::/64 What we’re doing is telling the router what prefix to request from TWC. In this case, a /64 or a single subnet. I’ve heard that you can attempt to request more, but I haven’t messed with this yet to find out. Since one subnet works for me at home, I’m sticking with this.
Now let’s head over to our LAN interface, mine is gig0/1. From there, enter the following:
R1(config-if)#ipv6 address SPECTRUM_PD ::1/64 R1(config-if)#ipv6 enable R1(config-if)#ipv6 nd other-config-flag R1(config-if)#ipv6 dhcp server SpectrumPool
End to global config.
We need to add the DHCP pool to our router and enable IPv6 goodness.
R1(config)#ipv6 unicast-routing R1(config)#ipv6 cef R1(config)#ipv6 dhcp pool SpectrumPool R1(config-dhcpv6)#prefix-delegation pool SPECTRUM_PD R1(config-dhcpv6)#dns-server 2606:4700:4700::1111 R1(config-dhcpv6)#dns-server 2606:4700:4700::1001
There you go! DHCP provided IPv6 from your ISP.
You can test IPv6 connectivity using Google’s IPv6 test.