![不同的主机名到 ip 的解析结果(nslookup)](https://linux22.com/image/713194/%E4%B8%8D%E5%90%8C%E7%9A%84%E4%B8%BB%E6%9C%BA%E5%90%8D%E5%88%B0%20ip%20%E7%9A%84%E8%A7%A3%E6%9E%90%E7%BB%93%E6%9E%9C%EF%BC%88nslookup%EF%BC%89.png)
大家好。
假设我有以下设置:
- Windows 7 作为主机,DNS 192.168.0.100、8.8.8.8、8.8.4.4
- Ubuntu 16.04 作为 VirtualBox 上的客户机,DNS 192.168.0.100(主机?)
Ubuntu 通过 VirtualBox 的 NAT 连接到 Windows 的网络。
当我执行时nslookup google.com
,结果完全不同。
在 Windows 上,我看到 6 x 172.xxx.xxx.xxx,而在 Ubuntu 上,我看到 6 x 62.xxx.xxx.xxx
因此,我猜想,即使我google.com
在网络上的“路由器”计算机上进行本地解析以阻止用户访问,如果用户的计算机上有自定义 DNS 服务器,他们也会解析其他 IP 地址?除了强制他们使用我的 DNS 服务器外,还有其他解决方案吗?
答案1
许多 DNS 提供商正在使用任播根据互联网上的查询来源来提供“最佳”结果。
因此,在位于世界各地的多个 DNS 服务器上执行相同的查询通常会产生不同的结果。这是正常的,它有助于将流量路由到最近的缓存服务器等。
答案2
我猜想谷歌正在使用循环方法进行负载平衡。因此,在不同的 DNS 查询中,您对 google.com 的查询将获得不同的结果。由于响应缓存在本地计算机上,因此您在多次尝试时将获得相同的 IP。
如果您不希望用户访问主机,则必须在 IP 级别进行阻止。即使您通过防火墙规则强制他们使用您的 DNS,他们仍然可以在本地 /etc/hosts 文件中输入这些详细信息,以直接获取 google.com 的 IP 地址并连接到它。