After several days of having trouble casting Midsomer Murders from Netflix on my phone, I realized that something might be going wrong. A few Google searches, a look at my phone’s and WiFi router’s status pages, and a prayer to Saint Isidore later, I realized that I was probably encountering a known issue with IPv6-enabled home networks.
I still wanted my computers to have IPv6 when possible, so I didn’t want to disable IPv6 on my home network. What’s the point of running custom firmware on my router if I were just going to do that?
sysctlcommands until I found the right one
/etc/sysctl.d/local.conf with the one that worked:
# local sysctl settings can be stored in this directory net.ipv6.conf.wlan0-1.disable_ipv6 = 1
This solved my problem; a device on my existing network can get both IPv4 and IPv6 addresses, but when it looks for a Chromecast it will find it at an IPv4 address, only, and be happy.
And it only took 20 minutes and two years to figure out; twenty minutes last Saturday night, and two years working on Google Fiber WiFi before.
This was the first thing that worked, and I haven’t tried to refine it. I have a feeling that if I moved this configuration from a network to a VLAN I might be able to keep everything on the same SSID, but I’d have to learn how to do that first, and I wanted to get back to watching Netflix…