您的位置:首页 > 大数据 > 人工智能

记一次AD域共享访问错误(There are Currently No Logon Servers Available)的解决过程

2016-07-09 22:20 656 查看
内容摘要:本文描述了一次典型的域问题故障处理过程,现记录如下以供同僚们参考

背景
起因

失败状态

解决思路
Google搜索引擎

协议分析
域认证流程

抓包分析

解决

结论

背景

起因

公司内有两个独立的域分别为:domA.contoso.com domB.contoso.com

现有文件服务器filesvr.domB.contoso.com提供文件服务,因为业务需要,domA域内用户计算机需要访问这台filesvr

按照常规思路,即需要在两个域之间建立信任

失败状态

在查看两个域的信任关系时,状态显示一切正常。在domA的域信任配置页中,外向信任和内部信任都有domB;在domB的域信任配置页亦同。

然后按照一般的黑匣子处理方法,将两边信任去掉,再重建信任,亦并未出现错误。

但无论如何,domA不能访问domB内的任何客户机上的文件共享服务,但domB访问domA的却一切正常



解决思路

Google(搜索引擎)

Google无疑是遇到任何技术问题的首要解决方式,So let it be!

一番大海捞针得出有用的搜索结果如下:

https://support.microsoft.com/en-us/kb/139410

https://msdn.microsoft.com/en-us/library/ms838310.aspx?f=255&MSPPError=-2147217396

https://community.spiceworks.com/topic/247959-there-are-currently-no-logon-servers-available-to-service-the-logon-request

当然以上只是一部分,但总结起来最大的可能性应该在于名称解析失败,至于”not have permission”纯粹误导而已。

协议分析

域认证流程

微软域认证用的是Netlogon协议,具体协议约定怎么样的呢,其实我也没细究。但总体流程图如下:

https://msdn.microsoft.com/en-us/library/cc237016.aspx



不管怎么看,这应该说明其中某台域控出了问题

PS:聪明的读者可能会发现,本来分析到这里应该告一段落,因为肯定是某台域控不能访问,或者名称解析服务挂掉——而事实的确如此。但为什么还会有更多的分析工作,因为这两个域是从windows 2000一直升级到windows 2008而来的,中间经历了数个维护人员,在我查看的时候里面有大量以前遗留下来的域控信息,以及数个DNS区域同步失败错误。而到我手上时,已经被告知重启过其中三台域控。所以我一时间并不能确定是哪台域控 or DNS问题。

抓包分析

这是在filesvr上抓的包,可以看到,当本机通过SMB接收到客户端认证信息(NTLMSSP_AUTH)后,会调用DRPC(MS-NRPC)联络域控:



访问端发送了三次认证请求到被访问端,而被访问端则三次都联系同一台域控:172.30.128.100。

事实上该域有3台域控,3个DNS服务器,而且都通过DHCP分配给了客户端。但从抓包及客户机网络信息来看,workstation只会联系主DNS所在那台域控

解决

查看172.30.128.100,的确域服务挂了,但并不清楚原因,重启后正常。

结论

如果不影响生产,解决问题的最快速有效办法就是重启——将所有能重启的都重启了,也许问题就解决了。

大多数突发问题本质上都是年久积疾,但中国现状如此,大家都懂的。

一般会认为多台域控多个保障,但通过这次案例可以发现事实并不完全如此。如果只是某部分服务挂了,排查起来反而更困难。

底层分析能更好地理解系统工作原理以及问题产生原因,但同时也需要花费一定时间和学习成本(本案例花了整整一天工作时),如果公司本身并不注重IT技术,还不如想想怎么编藉口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息