在我的计算机实验室中,我有一个Active Directory域,其中包含一个域控制器和一些成员服务器,所有服务器均运行Windows Server 2012 R2。该实验室通过电缆调制解调器/网关连接到Internet,该电缆/网关也可用作DHCP服务器和DNS代理。所有服务器均具有静态TCP / IPv4设置,并使用默认设置启用了IPv6。DC还是DNS服务器,并托管AD域的AD集成区域。所有服务器都配置有DC的IPv4地址作为其首选DNS服务器。
直到最近,一切都运转良好,包括DNS解析。最近,电缆调制解调器/网关的固件已更新,设备开始支持IPv6。结果,它现在自动为服务器分配公用IPv6地址,并使它们使用自己的公用IPv6地址作为DNS服务器地址。当我运行ipconfig / all时,该IPv6地址出现在DNS服务器列表中,位于DC的IPv4地址之前。因此,所有服务器开始使用前者代替后者,并且AD域停止运行。
为了解决此问题,我更改了每台服务器的TCP / IPv6配置。具体来说,我不是手动让他们从网关自动获取DNS服务器的IPv6地址,而是手动输入了DC的IPv6地址。但是,此解决方案的伸缩性非常差,因为IPv6地址往往很笨拙。因此,在多个服务器上手动输入IPv6地址并不是一种有效的方法。
我不想禁用IPv6。我想要的是我的服务器首先使用DC的IPv4地址作为其DNS服务器,或者忽略网关的IPv6地址,或者仅将其用作辅助DNS服务器。我试图根据Microsoft的建议将一台服务器配置为首选IPv4而不是IPv6 。但是,它并没有改变DNS的情况。此外,当我在重新启动服务器后尝试打开“网络和共享中心”时,窗口无法正确打开(它实际上已挂起)。
因此,我的问题是,在使用DNS服务器的IPv6地址之前,谁能提出一种使双堆栈Windows计算机使用DNS服务器的IPv4地址的方法吗?另外,是否可以对所有DNS服务器地址进行优先级排序,而不管它们的IP版本如何,又不管它们是手动分配还是自动分配?例如,是否可以将IPv4地址设为第一个DNS服务器地址,使IPv6地址成为第二个DNS服务器地址,使另一个IPv4地址成为第三个DNS服务器地址,依此类推?