我们正在运行带有LDAP后端的Samba 3域(Samba 3.5.6)。 最近,我们在虚拟机(称为schnellwienix )上安装了Windows 7,并将计算机join到域中,并遵循Samba Wiki Windows 7页面上的提示 。 Windows机器释放join成功消息,我们的域控制器(DC)创build了一个正确的机器帐户。 一切似乎都是按顺序的。
但是,当任何域用户尝试login时,Windowslogin屏幕会显示错误消息
目前没有可用的login服务器
Windows机器上的NETLOGON服务定期logging两个失败消息:上面的“无服务器可用”和“RPC调用失败”。 每次机器重新启动时都会出现问题,直到机器pipe理员转到“我的电脑” – >“pipe理” – >“本地用户和组”,然后尝试查找任何域帐户,导致问题消失直到机器重新启动。 重新启动schnellwienix ,在域控制器上重新启动smbd , nmbd和winbindd或重新join域没有帮助。
我们有两个正在运行的域控制器,可以被几十台Windows计算机成功用于login。 asterix是configuration的PDC
domain logons = Yes domain master = Yes local master = Yes preferred master = Yes
obelix是所有主设置为No的BDC,但domain logons = Yes 。 两个DC连接到相同的WINS服务器,根据请求给出PDC,DC和LM的正确地址(通过Samba的net lookup命令检查)。 每台计算机都在DNS中parsing为正确的名称,但DNS中没有configuration特殊的Windows域名。
我试图分析与域控制器交谈的networkingstream量转储:
schnellwienix通过DHCP获取IP地址,并在数据包中获取正确的DNS和WINS服务器地址。 schnellwienix通过DNS查询_ldap._tcp.dc._msdc.<ourdomain> , no such domain得到no such domain 。 schnellwienix通过NBNS注册自己的名字并查询PDC,获取asterix的IP。 schnellwienix发送SMB_NETLOGON协议的数据包与SAM LOGON request from client的邮件SAM LOGON request from client到邮筒\MAILSLOT\NET\NETLOGON与它的计算机名称和一个空的用户名。 首先它发送到广播地址,然后(可能名称parsing后)广播地址和asterix 。 它可靠并且快速地从asterix和obelix获得“SAM响应 – 用户未知”响应。 SMB_NETLOGON是由schnellwienix定期重新尝试,但总是失败。 asterix和obelix上的Samba日志文件在日志级别10上对事件没有任何显示。
networking拓扑结构很简单:除大学提供的WINS服务器和由DNS知道的地址之外,所有的计算机都在相同且唯一的子网中。 我们在另一台Windows 7机器上间歇性地出现了相同的问题,所有其他机器运行良好。 但是,这是我们的第一个虚拟 Windows机器,并且通过VirtualBox使用桥接networking接口进行虚拟化。
有没有人知道这里发生了什么? 我能做些什么来进一步debugging呢?
如果您在尝试parsingDNS名称时遇到错误,并且WINS服务器没有返回正确的响应(SMB_NETLOGON数据包是什么),这意味着您的Win7计算机将无法发现要与之通话的域控制器。 这是与您正在获取的错误消息内联。
为帮助您解决这些types的错误,请通过运行“nltest / dbflag:2000ffff”启用Netlogon日志logging,并在重现问题后查看%windir%\ debug \ netlogon.log。 你会看到机器试图find一个域控制器,并得到了什么错误。 一旦你解决这些,它应该工作正常。
既然你提到WINS服务器是由大学提供的,它是否真的可以从虚拟机访问? 可能你不能做NetBIOS名称parsing,因为你的WINS服务器不可访问,你的DNSconfiguration被中断(步骤2中的错误)。