如何绕过内部DNS?

这是关于Ubuntu的,但在所有的Linux版本上都应该几乎相同。 比方说,我添加一个条目到我的/etc/hosts

 127.0.1.12 facebook.com 

和一个Apache虚拟主机,如

 <VirtualHost 127.0.1.12> ServerName facebook.com DocumentRoot /var/www </VirtualHost> 

当我打开浏览器并向Facebook.com发送GET请求时,Firefox将浏览我的/ var / www文件夹。

问题:我如何获取(即在bash中使用wget)真正的facebook.com域 – 不删除/ etc / hosts中的条目,也不删除我的Apache VirtualHost – IOW如何绕过内部DNS?

通常情况下,最好的设置是相反的 – 为您想要欺骗的站点设置一个带有区域的DNS服务器,并将客户端指向您的DNS服务器。 然后,您可以在Web服务器的/etc/resolv.conf中设置一组外部服务器,或添加一个指向真实站点的主机项。

/etc/nsswitch.conf ,replace为:

 hosts: files dns 

有了这个:

 hosts: dns