我正在使用特殊绑定帐户将 Linux 主机 (CentOS 6) 加入 Active Directory。我已向此用户授予委托权限,当我加入默认的计算机 OU 时,会创建一个计算机对象并更新 DNS。
现在,我已将同一用户委派权限授予不同的 OU。但是,当我尝试使用以下命令加入不同的 OU 时:
net ads join -k createcomputer="Custom/Location"
已创建计算机对象,但 DNS 更新失败,并出现以下错误消息:
hostname.example.local 的 DNS 更新失败:ERROR_DNS_INVALID_MESSAGE DNS 更新失败!
我希望让它正常工作,这样我就不必手动将新创建的计算机对象移动到正确的 OU,因为我已经自动化了其余过程。
答案1
我弄清楚了为什么会发生这种情况。在我的环境中,我有一个辅助 Linux DNS 服务器,它不允许动态 DNS 更新,除非来自 Windows 主 DNS 服务器(也是域控制器)。net ads join
使用该命令时,它会对域的名称服务器进行 DNS 查找,有时它会将 Linux DNS 服务器作为第一个答案返回,从而导致更新失败。您可以使用 -S 开关强制它使用域控制器/主 DNS 服务器:
net ads join -k -S ns1.example.local createcomputer="Custom/Location"
。
解决了这个问题。再次感谢Wireshark帮助我解决问题。