Utilize OpenDNS IPv6 external servers instead of the current IPv4 servers
I recently changed my DNS Servers to use OpenDNS's IPv6 servers. This works, even though I'm running a dual-stack network and it allows me to pass all of the tests at http://www.test-ipv6.com
Since there are parts of the world (and even providers in the United States) who are handing out native IPv6 addresses, I would recommend that we change the external DNS servers from the 220.127.116.11 and 18.104.22.168 that OpenDNS provides to their IPv6 addresses (2620:0:ccc::2 and 2620:0:ccd::2).
This will do two things for sure: Enable address resolution for those people who are running dual-stack networks (or IPv6 only networks), and future-proof Amahi for when IPv6 becomes the more commonly used protocol. I realize that the IPv4 servers will resolve both addresses, but as time goes on and IPv6 is adopted more, OpenDNS may stop resolving addresses with them.
There are only about four or five lines in two of the control scripts that would need to change for this.
hda-ctl:270: return ("22.214.171.124", "126.96.36.199");
hda-ctl:274: return ("188.8.131.52", "184.108.40.206");
hda-ctl:768: printf $dhcpd "\toption domain-name-servers %s, %s;\n", $dns1, "220.127.116.11";
hda-install:1005: dns1 = '18.104.22.168'
hda-install:1006: dns2 = '22.214.171.124'
A possible patch would look something like this (without the header information)
- return ("126.96.36.199", "188.8.131.52");
+ return ("2620:0:ccc::2", "2620:0:ccd::2");
- printf $dhcpd "\toption domain-name-servers %s, %s;\n", $dns1, "184.108.40.206";
+ printf $dhcpd "\toption domain-name-servers %s, %s;\n", $dns1, "2620:0:ccc::2";
-dns1 = '220.127.116.11'
-dns2 = '18.104.22.168'
+dns1 = '2620:0:ccc::2'
+dns2 = '2620:0:ccd::2'
#3 Updated by cpg almost 7 years ago
i did a quick test and it looks like dnsmasq took it well
Oct 6 13:16:52 rome dnsmasq: using nameserver 2620:0:ccd::2#53 Oct 6 13:16:52 rome dnsmasq: using nameserver 2620:0:ccc::2#53
but resolving did not work.
fyi the validation of the format is done in
and restarting the platform is done with
sudo touch /var/hda/platform/html/tmp/restart.txt
#4 Updated by PatrickDickey almost 7 years ago
you can input these settings under setup > network > settings as a custom configuration
what happens when you do that?
you may need to remove so called validations for these fields in the platform code and restart the platform, tho
I wasn't aware of this until after I did it through the amahi-change-dns script. When I went to the network settings page, I noticed that it had changed to "Custom DNS" and had mine set up. I made this feature request because it would be easier to do this by default--especially with IPv6 coming up as the default setup in some countries at least.
When you say (in your other reply) that resolving did not work, did it work after you restarted the platform? And are you using a dual-stack or IPv4 only network? I'm able to surf normally (both IPv4 and IPv6 addresses), but it might be because I'm running a dual-stack network.
Would it be possible to detect whether the network has been configured for IPv6, and if so, automatically set up the DNS entries for IPv6, when the install script is ran? That way an IPv4 only network has just the IPv4 addresses (and the user can configure the IPv6 ones later, if necessary) and an IPv4/6 or IPv6 only network has the IPv6 addresses.
#5 Updated by cpg almost 7 years ago
We have done literally zero to deal with ipv6 networks.
There would be several phases to get this going, in my view:
- understanding what the heck ipv6 is and what subset of it is in use
- understanding of that subset what makes sense for amahi to support
- understanding how to detect what is set up, or how amahi fits in
- should amahi have an "ipv6 release" that makes a network all ipv6?
- what about tunnelling
- what (myriad?) of programs will break? how many are critical
- what phases should any changes be done in?
- doing the changes one by one
without the above, doing a simple dns change seems like trying to boil the ocean ...
Also available in: Atom