Wednesday, December 16, 2015

Comcast IPv6 - Asus RT-N66U Troubles

We were a dual-stack household -- for a while.  Comcast is one of the leaders in the evolution of Internet services from the old IPv4 to the new IPv6 service.

The old IPv4 network has run out of easy-to-allocate IP addresses (the numerical kind, like 130.132.20.1, that are roughly equivalent to your telephone number).  Among other advantages, the new IPv6 allows for gazillions of new addresses.  It will be a key enabler of the new "Internet of Things" that you may have heard about.

As this transition occurs (slowly, as there are so many v4-only systems installed), many of us will need to operate "dual stack" systems that are capable of using both forms of addressing.  Any modern desktop PC (Windows 7 and onward, Linux, etc.) already knows how to do this.  The weak link for many users will be their Internet Service Provider (ISP) that will have to reorganize itself to provide IPv6 services.  So, the good news -- our Comcast system does offer IPv6.

We were able to run dual-stack pretty well with the gateway device that Comcast rents us, a Cisco DPC-3941T.  (We need their gateway, because we use their VOIP telephone service.  That's another story.)  Our Linux operating system (and probably Windows, too) will prefer to use IPv6 over IPv4, when a given Internet service offers both.  Google sites all seem to offer IPv6, for example.

But it wasn't going to be that simple for us, because the Cisco gateway is "crippled". Comcast seems to have decided that a downgraded gateway can offer more security with fewer support issues for the 99% of customers who have simple needs.  It does not support a moderately complicated home network, like ours, where you might want to use specific IP addresses, firewall setups, etc.  In this situation, Comcast recommends that you operate their gateway in a non-routing mode and that you attach your own WiFi router that will be more configurable to local needs.

Enter the Asus RT-N66U.  On paper, this looks like a fine choice for us, offering very good dual-band WiFi and lots of configuration control.  With its standard setup (IPv4), we've had no problems.  (The VOIP service stays with the Comcast gateway.)  When we enable IPv6, things worked well, too, despite the lack of documentation or help files from Asus.

Worked well, that is, for a number of hours.  After a time, the IPv6 service just stopped.   The good news is that Internet service continued with only minor delays using the old IPv4 protocol.  The bad news is that IPv6 isn't reliable using the RT-N66U.  It starts up again if you reboot the router, but it will eventually die with the same symptoms.

According to the router system log, the router starts encountering ICMPv6 checksum errors.  After some substantial number of such errors have been reported, the router decides to drop IPv6 entirely.  That's my interpretation, anyway.  Where the errors arise is not clear.  It could be the Asus router itself, or it could be an interaction with the Cisco device, or something even further upstream.

I have tried all variants of IPv6 setup that I could think of -- enabling/disabling DHCP, response to Internet pings, etc.  Sometimes IPv6 seemed stay up for longer, but eventually it always dropped out.

So despite the initial excitement of operating a cutting-edge dual-stack household, we are back to plain old IPv4 for now.  Maybe someone will suggest a better router configuration, or maybe we will get a firmware update that fixes things.  Meanwhile, we're coasting along on tried and true IPv4.

Note added: To keep things in perspective, there is no great reason to run IPv6 at the present time.  It's just a game, until a significant number of services begin to be offered exclusively on IPv6.  That will happen eventually as the address exhaustion begins to be felt, but for now essentially all IPv6 services are also available via IPv4.