RSS

打开emc报错:域不存在

20 Aug

当你打开Exchange Server 2010的emc或者ems时,是否会遇到下面的报错信息?

  1. Exception calling “get computer Site” with “0” argument(s); The specified domain either does not exist or could not be contacted.

然后你尝试在emc内手动添加一台直接连接的服务器,或者在emc中使用

  1. connect-exchangeserver -fqdn [fqdn/netbios]

却可以连接。

然后就会有一堆人告诉你
比如加入组织管理员组,手动修改powershell profile 强行指定,关闭防火墙 balabala的

嗯,作为一个正常的管理员,当然你要是就停留在这种解决故障的方式上,那多没有挑战?咱要问问why的。

所以tr开始啦。
step1 研究报错
emc中的报错实在是太简单了,你网上一搜一堆乱七八糟的问题和回复肯定会骚扰你的视线。那么必须ems嘛。
2.png
这个报错很有意思,没有服务器可操作。好吧,其实应该是没有主机可以联系到。然后下面一对巴拉巴拉,静心一下看看,嗯,有个明确的报错抛出的地方

  1. C:\Program Files\Microsoft\Exchange Server\V14\Bin\ConnectFunctions.ps1

step2 研究报错的报错点飘去看看此文件的164行。

$localSite=[System.DirectoryServices.ActiveDirectory.ActiveDirectorySite]::GetComputerSite()

这是个嘛意思?额,不就是查询adsite嘛,这个有啥奇怪的呢?nltest /dssgetsite 也没问题啊。别着急啊,你要记得哦,使用这种命令行打包好的exe文件,使用的调用方法可是会不一样的。别着急下结论。再试试。
step3 dig more
随便找台机器跑一下

  1. [System.DirectoryServices.ActiveDirectory.ActiveDirectorySite]::GetComputerSite()

1.png

哎呀妈呀,怎么dc上,exchange上就能正确返回,但是这台管理机上就不行呢?难道是rpwt?兄弟,计算机的返回基本都是有套路的,怎么可能是人品?
再研究一下报错,这个报错怎么和ems的报错一样呢?难道……? 卖个关子
step4 build lab 吧。
真实环境是父子域关系,父子域之间有防火墙,mgmt服务器在子域。lab环境也是父子域关系,mgmt服务器在父域和子域,没有防火墙。
结论是:lab内没有此问题。
step5 netmon
好吧, 这个是最笨的最有效办法:哒哒
3.png
结论是mgmt去连接根域的dc做389查询,但是防火墙挡住了。
step6 收工

  1. [System.DirectoryServices.ActiveDirectory.ActiveDirectorySite]::GetComputerSite()

这个命令行需要直接连接根域

可是这是为什么呢?我也不知道,不过参考msdn的文档,大约就是无法连接到dc,如果要再dig,似乎已经超出了itpro的能力了。你说呢?
http://msdn.microsoft.com/zh-cn/library/vstudio/system.directoryservices.activedirectory.activedirectorysite.getcomputersite(v=vs.90).aspx

update 1
开了防火墙:
135
389
49152-49407

报错变成了:
Exception calling “GetComputerSite” with “0” argument(s): “A local error has occurred.

发现另外一个地方有需要去连接88端口。我怀疑是需要添加此端口,再次去申请啦。
update 2
开了防火墙88端口,全部正确连接了。 good!

继续找微软问到底这是一个什么工作机制。

Advertisements
 
Leave a comment

Posted by on August 20, 2013 in others

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: