![为什么我可以 ping “任何东西”并得到响应,而不是得到“未知主机”](https://linux22.com/image/605032/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E5%8F%AF%E4%BB%A5%20ping%20%E2%80%9C%E4%BB%BB%E4%BD%95%E4%B8%9C%E8%A5%BF%E2%80%9D%E5%B9%B6%E5%BE%97%E5%88%B0%E5%93%8D%E5%BA%94%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E5%BE%97%E5%88%B0%E2%80%9C%E6%9C%AA%E7%9F%A5%E4%B8%BB%E6%9C%BA%E2%80%9D.png)
我可以在 CentOS 6 中 ping 任何单词或域,并且如果被 ping 的域在现实世界中不存在,我会从相同的 IP 得到响应。
e.g. ping xxxxxx
我该如何修复这个问题?我希望正常报告“未知主机”。
答案1
在您的 DNS 服务器中,为您的域名设置了一个通配符条目 - 例如*.domain.com
。除此之外,如果您设置了搜索域/etc/resolv.conf
- 您 ping 的任何内容都会附加搜索域。要进行快速测试,只需注释掉 /etc/resolv.conf 文件中的所有条目并将其替换为以下 google dns 服务器 -
名称服务器 8.8.8.8
看看这是否能解决问题。否则,您将不得不更改主 DNS 服务器中的 DNS 区域条目,除非您能控制它,否则这种情况不太可能发生。
答案2
一般来说,ping 的输出取决于两件事:
- 您正在使用哪种 ping:不同操作系统上的 ping 命令的响应略有不同,因此您可能会看到在 CentOS 中不起作用的东西。
- 当您向 DNS 服务器询问虚假信息时,该服务器的确切响应。有些 DNS 系统会告诉客户端无法解析主机,而有些系统会说无法找到域,因为客户端必须先解析域,然后才能向该域询问有关主机的信息。这也取决于 DNS 系统的配置方式。
这里的变量太多,无法给您更详细的答案。