还有另一篇关于此的帖子nslookup 可以工作,但是 ping 不可以。我读过一些论坛帖子,但找不到与我的设置和问题相关的任何内容,在内部网络上解析外部域名。
我的实验室:
- VMWare Workstation 11
Windows 2012 R2 数据中心版服务器
- DC1.ad.example.com- AD 和 DNS、INT NIC
- DC2.ad.example.com- AD 和 DNS、INT NIC
- DNS1.ad.axample.com- 仅限 DNS,不是 AD 的成员。INT、EXT NIC。
该网络仅供 AD 成员内部使用。服务器DNS1 不是 AD 的成员包含两个 NIC,一个位于 AD 网络内部,另一个位于 Internet 外部。DNS1 仅用作 DNS 缓存服务器,目的是允许内部网络 (AD) 计算机能够解析外部 IP。与此问题相关的实验的目的是学习 AD 部署的最佳实践,包括网络设计和 DNS。
DNS 配置:
DC1 和 DC2 都设置了到 DNS1 的转发器。AD 之外的查询会转到那里,并在收到来自内部网络计算机的请求后进行缓存。Nslookup 确认,使用这两个名称服务器 DC1 和 DC2,我们可以解析外部域名(我可以看到它们在收到来自 DC1/2 的请求后被缓存在 DNS1 上)。
问题:
然而,当我ping 失败,不显示 IP。这是为什么?我预计至少会打印一个 IP 并且无法访问主机或类似错误。域名可见在 DC1/2 上的本地缓存中,但 ping 无法解析或显示它。
我最终为 DC2 添加了外部 NIC,并且能够 ping 通,没有任何问题。这也让我开始怀疑[我实际上为什么要尝试完成这个外部名称解析。] 我预计 ping 会出现“无路由”或其他错误,但我也预计它会解析(或显示解析的 IP),然后在尝试查找主机时出现故障。但是,它就是失败了。有人能解释一下原因吗?如果无法连接到网络,ping 会放弃吗?
下面是一系列演示所有这些的命令:
PS C:\Users\Administrator> ipconfig /flushdns Windows IP 配置 已成功刷新 DNS 解析器缓存。 PS C:\Users\Administrator> ipconfig /displaydns Windows IP 配置 dc1.ad.polishpaul.net ---------------------------------------- 记录名称....:dc1.ad.polishpaul.net 记录类型. . . . : 1 生存时间...:1197 数据长度...: 4 第 ...... 节:答案 A(主机)记录...:192.168.55.11 PS C:\Users\Administrator> ping google.com Ping 请求无法找到主机 google.com。请检查名称并重试。 PS C:\Users\Administrator> ipconfig /displaydns Windows IP 配置 dc1.ad.polishpaul.net ---------------------------------------- 记录名称....:dc1.ad.polishpaul.net 记录类型. . . . : 1 生存时间...:1186 数据长度...: 4 第 ...... 节:答案 A(主机)记录...:192.168.55.11 google.com ---------------------------------------- 记录名称.... : google.com 记录类型. . . . : 1 生存时间...:293 数据长度...: 4 第 ...... 节:答案 A(主机)记录...:216.58.217.142 PS C:\Users\Administrator> nslookup 默认服务器:dc1.ad.polishpaul.net 地址:192.168.55.11 > google.com 服务器:dc1.ad.polishpaul.net 地址:192.168.55.11 非权威答案: 名称:google.com 地址:2607:f8b0:4006:806::1005 216.58.217.142 PS C:\用户\管理员> PS C:\Users\Administrator># 外部网卡现已添加 PS C:\Users\Administrator> ping google.com 使用 32 字节数据对 google.com [74.125.226.14] 执行 Ping 操作: 来自 74.125.226.14 的回复:字节=32 时间=11ms TTL=128
谢谢,保罗
答案1
我发现,虽然名称解析与 nslookup 兼容,或者域名解析在本地缓存,如果没有到目的地的路由,ping将会失败,并且永远不会显示IP。
我在另一个没有多宿主的实验室中遇到了这个问题。删除默认网关会导致 ping 域名时失败,并显示“cauld not find host”,而 ping IP 时会显示“transmit failed”错误:
C:\Users\pawel>ping google.com
Ping request could not find host google.com. Please check the name and try again
C:\Users\pawel>ping 173.194.123.101
Pinging 173.194.123.101 with 32 bytes of data:
PING: transmit failed. General failure.