我们有一个小型网络,由 Sonicwall、Windows Server 2016 DC 和 Exchange Server 2016(托管在第二台 WS2016 机器上)以及多个 Windows 10 客户端组成。
由于与我们的某个供应商的兼容性,我们被迫在我们的网络上启用 IPv6(超出默认的链接本地寻址)。
这是我遇到的问题:如果我们的服务器启用了 IPv6,Windows 客户端会更倾向于使用 IPv6 进行通信,包括在域上进行身份验证。如果 DNS 记录设置不正确,包括身份验证和交换在内的所有内容都会停止工作。
- 我的域控制器必须具有静态 IPv6,因为它是 dhcp 服务器。
- 通过 GUI 设置静态 IP 不会禁用 DHCP 客户端,因此必须使用 powershell 命令禁用它:Set-NetIPInterface Ethernet -AddressFamily IPv6 -DHCP Disabled
- 如果我使用静态 IP,域控制器就不会在 DNS 中注册。
- 如果我在 DNS 中手动为域控制器添加 AAAA 记录,它将在下次刷新时被删除。
- 如果我重新启用 DHCP,正确的记录会添加到 DNS,但也会添加 DHCP 分配的 IP 的额外 AAAA 记录,这仍然会破坏系统。
- 如果我为 DC 创建与其静态 IP 相同的 DHCP 保留,则整个过程暂时有效,直到重新启动。重新启动后,GUI 再次显示“自动获取 IPv6 地址”,但不起作用,因为这是 DHCP 服务器,如果没有地址,它就无法访问自身。
似乎没有关于在 Windows Server 2016 中正确配置静态 IP 的 IPv6 的任何文档。如果有人可以提供帮助,我将不胜感激。
答案1
根据企业的规模,如果环境较小,则终止 DNS 清理。
如果数据量较大,那么解决方案可能会有点混乱,您可能需要偶尔运行一个脚本来清除异常。我前段时间在 PS 中写了一些东西,如果您需要的话,请告诉我。
答案2
在 Mark Morowczynski (MSFT) 的一篇文章中发现了这个片段 Windows 管理员的 IPv6 (档案)
对于 IPv4,我们通常只在 DNS 中为给定的机器注册一个 IP 地址。对于 IPv6,我们必须处理不同类型的地址(链接本地、全局等,正如 Mark 和 Ray 之前在其博客中讨论的那样)。http://blogs.technet.com/b/askpfeplat/archive/2013/06/24/ipv6-for-the-windows-administrator-ipv6-fundamentals.aspx)。(档案)
请注意,所有类型的 IPv6 地址均未在 DNS 中注册。例如,以 FE80 开头的链接本地地址:(仅在其本地子网中有效,而不是可路由地址)未在 DNS 中注册。全局地址在 DNS 中注册为 Quad A 记录。在处理过渡技术时,Teredo 地址未在 DNS 中注册。Microsoft Technet 文章Windows Vista 中的域名系统客户端行为详细解释了这种行为。