如何阻止主机文件中的特定域?


13

我知道用阻止单个tumblr博客很热

127.0.1.1 something.tumblr.com

但我想阻止整个tumblr。我试过了,127.0.1.1 tumblr.com但是没有用。

有没有办法做到这一点?

Answers:


21

安装dnsmasq

$ sudo apt-get install dnsmasq

然后在/etc/dnsmasq.conf(可能需要创建)中添加以下行:

address=/tumblr.com/127.0.0.1

通过将tumblr.com其重定向到localhost(127.0.0.1),将阻止它及其所有子域。


注意:

对于Ubuntu Trusty和其他已经具有NetworkManager的其他应用程序,默认情况下,您无需安装dnsmasq。

只需创建一个文件/etc/NetworkManager/dnsmasq.d/local

address=/tumblr.com/127.0.0.1

并重新启动或重新启动NetworkManager

$ sudo service network-manager restart

聪明简单的方法。
路易斯·阿尔瓦拉多

2
请注意,除非您也将连接设置为使用localhost / dnsmasq进行名称解析,否则此操作将无效。
ish 2012年

以及如何设置连接以使用dnsmasq?你有什么联系吗?
user1079002 2012年

1
@ user1079002连接设置可在此链接中找到help.ubuntu.com/community/Dnsmasq
RAM

3

/etc/hosts文件不支持通配符子域。也就是说,您不能说127.0.0.1 *.tumblr.com并且阻止它阻止所有形式为something.tumblr.com的 URL 。

如果要在浏览器级别阻止它们,则可以使用插件,也可以使用更好的过滤代理,例如Privoxy。

如果要在网络级别上阻止这些,以便该计算机上没有人可以访问这些站点,则需要一个简单的防火墙规则来阻止something.tumblr.com的IP范围,乍一看似乎是50.97.143.0/24,即50.97.143.0-50.97.143.255。


-1

查看并以您输入的IP地址作为原义,您输入的是错误的。而不是127.0.1.1它应该是127.0.0.1


2
127.xxx内的所有地址均为回送地址。
Skylar Ittner '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.