公共 DNS 服务器如何知道专用网络上机器的主机名

网络工程 局域网 dns
2022-03-03 14:46:25

例子:

  • 家庭局域网
  • 一个简单的 SOHO 路由器(DHCP 和 DNS 服务器都在 192.168.1.1)
  • 2 台客户端计算机(192.168.1.2 和 192.168.1.3)

位于 8.8.8.8 的 Google 公共 DNS 服务器(或任何其他公共 DNS 服务器)是否有可能知道该 LAN 上这些机器的主机名?如果是,如果 Google DNS 服务器上的 zone.conf 文件中没有提到它们,怎么可能?

2个回答

您说的很对,没有其他组织可以神奇地查看您的网络并找到例如主机名,除非您有某种方法可以发布它们。

但特别是关于 192.168.0.0/16 类型的地址:由于私有 IP 地址不是唯一分配的,任何组织都可以使用它们并为其分配自己的名称。

某些组织的公共 DNS 服务器的机器可能会给你一个答案,但它的答案不是你的。

但是,有关私有地址的政策规定,此类地址不应从其组织中泄露出去。

RFC 1918 “私有互联网的地址分配”第 5 页:

由于私有地址没有全局意义,私有网络的路由信息​​不应在企业间链路上传播,具有私有源地址或目的地址的数据包不应通过此类链路转发。不使用私有地址空间的网络中的路由器,尤其是 Internet 服务提供商的路由器,应该被配置为拒绝(过滤掉)有关私有网络的路由信息​​。如果这样的路由器收到这样的信息,则拒绝不应被视为路由协议错误。

企业内部应包含对此类地址的间接引用。此类引用的突出示例是 DNS 资源记录和其他引用内部私有地址的信息。特别是,互联网服务提供商应采取措施防止此类泄漏。

从技术上讲,私有 IP 地址和公共 IP 地址之间没有区别。您的 DNS 提供商很可能不接受私有 IP DNS 条目。

如果您运行自己的权威 DNS 服务器(从外部指向),则很有可能将一些 A 记录解析为私有 IP 地址。如果您不喜欢这样,则需要小心,拆分 DNS 范围或在内部和外部查询之间使用过滤器。