Saa*_*kke 6 hosts-file osx-mountain-lion macos
我已经使用我的主机文件(位于 /private/etc/hosts 中)几个月来在工作日阻止分散注意力的网站。直到现在,这一切都很好。今天它突然停止工作。
主机文件中的一些示例行:
127.0.0.1 facebook.com
127.0.0.1 www.facebook.com
我通过以下步骤将该文本放入主机文件中:
sudo nano /etc/hosts
写了上面几行,然后 ^O 写入文件, Enter 确认文件名, ^X 退出编辑器。
在本地主机 IP 和域名之间我有一个选项卡。行尾是 Unix 风格 (LF),奇怪的是,当我使用该ping命令时,它似乎可以正常工作:
ping facebook.com
PING facebook.com (127.0.0.1):56 个数据字节
127.0.0.1 中的 64 个字节:icmp_seq=0 ttl=64 时间=0.137 ms
127.0.0.1 中的 64 个字节:icmp_seq=1 ttl=122 MS
从127.0.0.1 64个字节:icmp_seq = 2 TTL = 64时间= 0.118毫秒
从127.0.0.1 64个字节:icmp_seq = 3 TTL = 64时间= 0.110毫秒
^ C
--- facebook.com ping统计---
4包传输,收到 4 个数据包,0.0% 数据包丢失
往返 min/avg/max/stddev = 0.110/0.122/0.137/0.010 ms
但是当我尝试在 Safari 或 Firefox 中访问 facebook.com 时,我仍然能够访问该网站。对于我以类似方式阻止的其他网站,情况也是如此。我已经清空了两个浏览器的缓存,但这并没有解决问题。
我能做些什么来解决这个问题?
更新 1: 我现在正在检查我以这种方式阻止的所有网站,发现不同域的行为不一致。这些是我在 /private/etc/hosts 中阻止的“浪费时间”:
#阻止时间杀手
127.0.0.1 9gag.com
127.0.0.1 flabber.nl
127.0.0.1 geenstijl.nl
127.0.0.1 dumpert.nl
127.0.0.1 facebook.com的
127.0.0.1 www.9gag.com
127.0.0.1 www.flabber。 nl
127.0.0.1 www.geenstijl.nl
127.0.0.1 www.dumpert.nl
127.0.0.1 www.facebook.com
##
从这个名单平到所有站点127.0.0.1,但是9gag.com和flabber.nl所有浏览器无法访问,不过geenstijl.nl,dumpert.nl和facebook.com 是可达的。
我试过重新启动,这并没有解决问题。在出现此问题之前,我没有通过某种更新来更改系统配置。
更新 2:
三个小时前我可以facebook.com通过 Safari 和 Firefox访问,现在我不能了。geenstijl.nl并且dumpert.nl仍然可以访问。在过去的三个小时里我没有改变任何东西,只是用 Word 和用 Safari 浏览网页。
更新 3: 现在,在第二次更新四小时后,hosts 文件再次正常工作。在摸索主机文件的过程中,我删除了非工作条目并一一重新添加它们,在添加后对每个条目进行测试。我不知道发生了什么并且不能再在流量上运行wireshark,因为我没有观察到任何错误行为。
更新 4: 问题又回来了。与更新 1 相同的站点显示了错误行为。
更新 5:
一切都再次正常工作。当我再次遇到错误时,我会记住这里发布的解决方案。
小智 4
OS X 中的 DNS 解析在从 Snow Leopard 到 Lion 的更新中变得混乱。全新安装后,一切都应该正常工作,但如果您选择了更新路线,事情可能会变得混乱。
选项 1:IPv6 寻址
如果 IPv4 无法访问,许多网站和 ISP 都支持 IPv6。将定义放在你的开头,/etc/hosts如下所示:
# Block Facebook IPv4
127.0.0.1 www.facebook.com
127.0.0.1 facebook.com
# Block Facebook IPv6
fe80::1%lo0 www.facebook.com
fe80::1%lo0 facebook.com
Run Code Online (Sandbox Code Playgroud)
选项 2:使用 DNSMasq
如果前面的建议失败,您可以安装 DNSMasq。
| 归档时间: |
|
| 查看次数: |
3762 次 |
| 最近记录: |