I live in a country which is under many sanctions. Both internal sanctions (government on people) and external sanctions (US on our people).
In our country, YouTube, Twitter, Facebook and many other sites are blocked by default and we can only access them through VPN.
But there is one thing that should work: DNS. If I set my DNS to
184.108.40.206, theoretically it should return the right IP address for
www.youtube.com and that IP address should get blocked by the ISP.
But it is not. It looks like our government is manipulating the DNS servers, even the public ones.
I have Ubuntu 18.04 (Bionic Beaver), and I have disabled Network Manager DNS. I have disabled
systemd-resolve, by which I mean that no entity in my own system can change the file
I changed the content of
and only this name server. So now every application uses this server by default, and they should query this server for the IP address of websites, but unfortunately they are not doing so!
kasra@ubuntu:~$ nslookup google.com Server: 220.127.116.11 Address: 18.104.22.168#53 Non-authoritative answer: Name: google.com Address: 22.214.171.124 Name: google.com Address: 2a00:1450:4001:812::200e kasra@ubuntu:~$ nslookup youtube.com Server: 126.96.36.199 Address: 188.8.131.52#53 Non-authoritative answer: Name: youtube.com Address: 10.10.34.35 Name: youtube.com Address: 10.10.34.35 kasra@ubuntu:~$ nslookup twitter.com Server: 184.108.40.206 Address: 220.127.116.11#53 Non-authoritative answer: Name: twitter.com Address: 10.10.34.35 Name: twitter.com Address: 10.10.34.35 kasra@ubuntu:~$ █
10.10.34.35 is the intranet IP address for the filtering authority.
How can I get around this without a VPN?