com*_*eak 12 networking dns hosts-file
我想在我的/etc/hosts文件中阻止一些主机。为此,我需要定义 DNS 查询解析为的虚假 IP 地址。
到目前为止,我看到的大多数教程都提到127.0.0.1了解决方案。但我想知道是否有更好的地址或其他地址,这可能已经提前丢弃了连接。
所以我想0.0.0.0在我的hosts-file中使用。你认为这会像127.0.0.1用来阻止某些主机一样工作吗?
kin*_*juf 10
在Windows上是一个区别:包发送到127.0.0.1最终会轰击您在计算机上运行的任何服务器(你可能不知道它运行的服务器),而要发送的数据包0.0.0.0将立即与错误代码返回1214(ERROR_INVALID_NETNAME)。
TL;DR:使用 0.0.0.0
它们(通常)是相同的,并且数据包最终是相同的:用请求和一些时间和流量(在本地接口上)轰炸您自己的主机,浪费一些少量的资源。(这同样适用于 127.0.0.0/8 中的任何地址,例如 127.2.3.4。)
顺便说一句,只有当您的主机不运行您想要阻止的服务时(例如,当您的主机有网络服务器时,使用它来阻止网络服务器),它才能正常工作,否则您将从自己的服务器获得回复。使用绝对不存在的地址(例如 192.168.255.254)可以防止这种情况发生,但会由于无法访问连接主机而导致延迟。
通过防火墙阻止通常效果更好。:-)