Some OpenNIC DNS servers also listen on an alternative port (generally 5353) which is less likely to be tampered with by ISPs.
To test if an ISP is tampering with DNS traffic, you can use the dig command from the dnsutils package.
Select a server from the Tier2 page which supports an alternative port. In my example I have used 18.104.22.168.
First, try querying for the root zone (.) on the default port:
dig SOA . @22.214.171.124 ... . 58346 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2015080300 1800 900 604800 86400
You can see from the returned SOA above that the DNS request has been hijacked by the ISP as 'a.root-servers.net' is not an OpenNIC DNS server. If the SOA you get looks more like the one below, then your ISP is probably not hijacking your DNS requests.
Now try again on the alternative port:
dig SOA . @126.96.36.199 -p 5353 ... . 86319 IN SOA ns0.opennic.glue. hostmaster.opennic.glue. 2015080301 1800 900 604800 3600
You can see that the SOA returned is OpenNIC's, meaning no hijacking has taken place on the alternative port. If this result differs from the previous result, then your ISP is likely to be hijacking DNS.
this question to use iptables to reroute your DNS traffic to an alternative port on an OpenNIC server. Remember to change the server's IP address.
You could also contact your ISP to complain about their use of DNS hijacking.
|Belgium / Germany||belgacom||ISP routers require password to change DNS settings. Password is reset periodically and only available to ISP employees. Changing DNS setting on a per-device basis is necessary.|
|Europe||SKYLOGIC S.P.A.||Hijacks DNS requests on port 53 and returns results from their own server.|