当@Insyte说问题是DNS解析的问题时,我想说他/她是对的……这就意味着问题是数据包重写(再读@Insyte的帖子来解释)。
假设你有以下设置。
1.公网IP:201.206.x.y
2. 私有IP:192.168.0.50
3. IP 201.206.x.y
→ 192.168.0.50
然后,当你在内部网络中时,在浏览器中输入以下内容。
http://www.yourwebsite.com
然后就会出现错误。所以,解决方法:黑掉你的hosts文件。
在Windows上,进入C:\windows\system32\drivers\etc\hosts
(注意,该文件上没有扩展名)。在Linux上,该文件位于/etc/hosts
。
如果你用记事本打开那个文件,你就可以看到任何用于覆盖DNS的条目。如果你想更新该文件,你需要用管理员权限打开记事本(或任何你用来编辑该文件的程序)–否则你无法保存该文件。
将此文件添加到你的hosts文件中。
192.168.0.50 www.yourwebsite.com
然后重新启动浏览器,输入网址,然后就可以了!它的工作。所以这意味着,你的浏览器并不依赖你的DNS来解析你的域名到IP。相反,我们覆盖了这一点,并说。Browser, just go to my internal IP for that domain name, instead of asking DNS for the IP address. Browser, just go to my internal IP for that domain name, instead of asking DNS for the IP address.
如果你是在办公室,那么你可以让所有需要访问这个内部网站的人,黑掉他们的hosts文件,或者如果你有一个内部的DNS,那么你可以在里面添加一个条目。
另一个想法是有一个内部的代理服务器(用于所有的网上冲浪等),然后黑掉代理服务器上的hosts文件。这意味着你的浏览器会说:代理,请你给我资源http://www.mywebsite.com
,代理说:当然可以,因为我被告知忽略该域名的DNS,所以我只给我的hosts文件中已经硬编码的IP。