很多人奇怪为什么修改了host文件就可以直接打开外网,这里不得不提禁止 访问的原理.Great FireWall 封锁中的两个原理是DNS 污染和IP 封锁.

为什么DNS污染可以实现禁止访问的目的?

我们访问网站的时候,输入的是域名,实际上DNS会进行IP解析,把域名对应IP进行访问,GFW 会干扰DNS 的解析过程,并且返回一个错误的 IP 地址给你,使你无法正确连接到你要的服务器上读取正确的信息。Host的级别比DNS要高,修改Host文件实际上相当于是直接访问IP.

比如:

172.217.6.127 google.com

 

在有些时候,即使修改了Host文件,有些网站还是打不开。这就是这个网站的IP被封锁了.就是说你即使改了Host,可以打开Google但是打不开FB,Twitter 也是正常现象,这个时候就必须要 翻墙了.


如何修改Host文件:

1.找到Host文件,并下载最新的Host文件进行替换

hosts所在文件夹:

  • Windows 系统hosts位于 C:\Windows\System32\drivers\etc\hosts
  • Android(安卓)系统hosts位于 /etc/hosts
  • Mac(苹果电脑)系统hosts位于 /etc/hosts
  • iPhone(iOS)系统hosts位于 /etc/hosts
  • Linux系统hosts位于 /etc/hosts
  • 绝大多数Unix系统都是在 /etc/hosts

2. 断网再联网使其生效即可

不过这种方法时灵时不灵,算是半个替代方案吧。