Infamous android ipv6 problem
-
I bring this up because I have some android phones on my wlan (who doesn't), and I have IPv6 running. This has me experiencing the quite common android IPv6 issue (https://code.google.com/p/android/issues/detail?id=32662) where the symptoms are a few seconds delay every so often (every few minutes) on any IPv6 connection (most notably Facebook since this is a popular IPv6 enabled public service).
Even though Google has obsoleted the bug report, the bug is there. It is supposedly more of a wifi firmware problem than android os problem, though.
It appears someone has a workaround:
I have found that by forcing a neighbour discovery it all snaps back into life. Prior to that the router has aged the neighbour out and even though the Android device is transmitting valid packets (which are being forwarded) because there isn't a neighbour entry in the cache on the router it simply can't return any packets to the device. If you ping the device from the router it undergoes neighbour discovery and then it starts to work again until it is again aged out in the router cache.
I am using Cisco Catalyst 3560/3750 series switches running 15.0 IOS (in layer-3 mode - i.e. they are the gateway routers) and I have been playing around with the RA ND options and seem to have a workaround. The default ND advertised reachability time is 0 (ipv6 nd reachable-time 0) and I have changed this to 1-minute (60000 milliseconds) and this seems to be working.
It obviously needs more research as to why this seems to solve it, however I am now no longer plagued with Android users moaning about Facebook being slowMy next step is to set up pinging of android clients periodically to see if that helps.
To look into this npd would be useful. While npd (a tool to control/diagnose IPv6 neighbor discovery protocol - http://www.freebsd.org/cgi/man.cgi?format=html&query=ndp) is standard on FreeBSD, it is not included on pfSense (at least not on v2.2.4). How would I go about installing this?
Also, anyone else experiencing this and perhaps having found a solution? If we could solve this android (or rather, wifi-firmware, problem) with pfSense a lot of people would be grateful.
-
ndp is built in to all versions. You're typoing it as npd, maybe that's why you're not seeing it.
-
A workaround is to use SLAAC as IPv6 Configuration Type on the LAN. Works well.