我们是一个拥有 300 个席位的小型组织,具有混合 BYOD 和 Active Directory 环境(Windows Server 2012 Standard、Windows 7 Enterprise),我们遇到了一个非常奇怪的问题,涉及非常特定范围的故障,无法在我们的域上解析我们组织的域名-连接的,公司控制的机器。出于本次讨论的目的,我将使用company.com代替我们的域名。
背景:
- Active Directory 域控制器位于 172.16.1.3
- AD/DC 机器也在运行 DHCP、DNS 和 HTTP (IIS)
- 我们的组织网站company.com和subdomain.company.com由 AD/DC 机器上的 IIS 托管
- 我们有一个拆分 DNS 方案,其中 AD/DC 服务器用于内部 DNS 解析,但另一个异地服务器为公共查询提供 DNS 解析
- company.com和subdomain.company.com对应的IP地址是我们网络边缘的防火墙使用的公共IP地址(AD/DC DNS服务器和异地DNS服务器)
- 防火墙已正确配置为 NAT 以将其在其公共 IP 地址上接收到的 HTTP 和 HTTPS 请求传递到 AD/DC 服务器的内部 IP,并反映
场景一:
- 加入域的 Windows 7 Enterprise 计算机上的用户直接连接到我们的本地网络,本地地址为 172.16.6.100 /16,由 DHCP 服务器发出。
- DNS 服务器条目由 DHCP (172.16.1.3) 提供
- 该用户能够访问托管在 company.com 和 subdomain.company.com 上的网站
- 编辑: nslookup 已在此方案中运行,并从内部 DNS 服务器 (172.16.1.3) 正确返回正确的 DNS 记录
场景二:
- 同一台加入域的 Windows 7 Enterprise 计算机上的同一用户回家并使用其住宅 ISP 连接到 Internet
- 客户端机器的 IP 和 DNS 服务器条目由 DHCP 提供
- 此用户可以访问任何 Internet 资源,例如 google.com
- 此用户无法访问位于company.com或subdomain.company.com的网站(返回“主机未解析”错误)
- 当该用户在company.com上运行 nslookup 时,他们确实会收到 DNS 提供的正确公共 IP 地址
- 对IP地址的HTTP/HTTPS请求成功,服务器正常返回网页
- 此问题在所有 Web 浏览器中普遍存在
- 使用tracert company.com返回“无法解析目标系统名称”
- 使用ping company.com返回“找不到主机 company.com”
- 在请求失败之前/期间在客户端上运行 Wireshark 时,客户端计算机不会发送任何数据包(用于 DNS 解析或初始 HTTP/ping/tracert 请求)
- 重新启动 DNS 客户端服务不能解决问题
- 停止 DNS 客户端服务不能解决问题
- 使用ipconfig /flushdns不能解决此问题
- 使用route /f不能解决此问题
- 使用netsh int ip reset重置网络连接不能解决此问题
- 编辑: nslookup 已在此方案中运行,并从用户使用的网络的 DHCP 设置指定的 DNS 服务器正确返回正确的 DNS 记录
场景 3:
- 个人(未加入域)Windows 7 Professional 计算机上的同一用户在连接到我们的本地网络时能够访问company.com和subdomain.company.com上的网站
- 编辑: nslookup 已在此方案中运行,并从内部 DNS 服务器 (172.16.1.3) 正确返回正确的 DNS 记录
场景四:
- 个人(未加入域)Windows 7 Professional 计算机上的同一用户在连接其家庭网络时能够访问company.com和subdomain.company.com上的网站
- 编辑: nslookup 已在此方案中运行,并从用户使用的网络的 DHCP 设置指定的 DNS 服务器正确返回正确的 DNS 记录
最后说明:
这个问题似乎普遍影响到所有公司拥有的计算机。我们正在为所有公司拥有的计算机使用一个通用系统映像,该映像刚刚在 8 月加载。我一直在互联网上搜索可能的解决方案,但到目前为止空手而归——我非常感谢您提出的任何建议或建议。