Exchange DSAccess 事件分析

Posted Albert Dongjie Tech Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Exchange DSAccess 事件分析相关的知识,希望对你有一定的参考价值。

本文介绍了如何使用事件 ID 2080 来帮助诊断 Exchange DSAccess 问题中所包含的信息。

许多朋友经常遇到Active Directory 域和Exchange 服务器通信问题。那如何排查呢。常用最简单方法,在事件查看器中查看 相关报错日志。今天我了解事件 ID 2080 事件来帮助诊断 Exchange DSAccess 问题。启动邮件服务器 Microsoft Exchange Active Directory拓扑服务启动时,通过DNS解析,SRV记录,在本地和远程Active Directory站点中创建可用和可访问的域控制器列表。

如以下

clip_image001

在早期Exchange 版本(在 Exchange 2000 或 Exchange 2003),要查看该事件,必须增加诊断日志记录在 MSExchangeDSAccess 类别,并重启相关服务;

应用程序日志中的事件 ID2080 :

Event Type: Information

Event Source: MSExchangeDSAccess

Event Category: Topology

Event ID: 2080

Computer: MyComputer

Description:

Process MAD.EXE (PID=1808). DSAccess has discovered the following servers with the following characteristics:

(Server name | Roles | Reachability | Synchronized | GC capable | PDC | SACL right | Critical Data | Netlogon | OS Version)

In-site:

domaincontroller1.company.com CDG 7 7 1 0 0 1 7 1

domaincontroller2.company.com CDG 7 7 1 0 1 1 7 1

domaincontroller3.company.com CDG 7 7 1 0 1 1 7 1

Out-of-site:

下面我们一起了解事件 ID 2080 和其内容的列︰

  • 服务器名称(Server Name)︰ 第一列指示行中数据列出域控制器的名称。
  • 角色(Roles)︰ 是否该特定服务器可作为配置域控制器 (列C值)、(列值为D) 的域控制器或全局编录服务器 (列G值) 为此特定的 Exchange 服务器的第二列显示。在本文前面描述的示例中,角色列包含值CDG以显示该服务可以使用的所有三个功能的服务器。
  • 可访问性(Reachability)︰ 第三列显示是否到达传输控制协议 (TCP) 连接的服务器。这些位标志由 OR 值连接。0x1 表示服务器可访问全局编录服务器 (端口 3268)、 0x2 表示服务器是作为域控制器 (端口 389),可到达 0x4 表示服务器为配置域控制器 (端口 389) 可以访问。换句话说,如果服务器是可到达的作为全局编录服务器和域控制器而不是作为配置域控制器,则值为3。在本文前面描述的示例中,第三列中的值7意味着服务器可访问,作为全局编录服务器、 域控制器和配置域控制器 (0x1 | 0x2 | 0x4 = 0x7)。
  • 已同步(Synchronized )︰ 第四列显示是否 rootDSE 的域控制器上的"isSynchronized"标志设置为 TRUE。这些值使用相同连接的 OR 值为到达列中使用的标志的位标志。
  • GC ︰ 第五列是布尔表达式,指出域控制器是否为全局编录服务器。
  • PDC︰ 第六列是布尔表达式,说明是其域的主域控制器的域控制器。值(0)表示不正确。
  • SACL 权限︰ 第七列是布尔表达式,指出 DSAccess 是否具有正确的权限来读取该目录服务的 SACL 。
  • 关键数据︰ 第八个栏是布尔表达式,指出 DSAccess 是否在服务器名称列中列出的域控制器的配置容器中找到该 Exchange 服务器。
  • Netlogon 复选: 第九个栏说明 DSAccess 是否已成功连接到域控制器的网络登录服务。这需要使用的远程过程调用 (RPC),并已关闭的服务器以外的其他原因,此调用可能会失败。例如,防火墙可能会阻止此调用。因此,如果在第九个列有 7,这意味着 Net Logon 服务检查每个角色 (域控制器、 配置域控制器和全局编录) 成功。
  • 操作系统版本: 第十个栏规定列出的域控制器的操作系统是否至少运行 Microsoft Windows 2000 Service Pack 3 (SP3)。 Exchange 2003 将仅使用域控制器或全局编录服务器正在运行 Windows 2000 SP3 或更高版本。 布尔表达式为 1,则表示域控制器满足 DSAccess 使用的操作系统的要求。

如何使用事件 ID 2080 中的信息来诊断 DSAccess 问题

1.确认当前环境中服务器角色及类型

当您查看事件 ID 2080 消息时,看一看角色列。应该有至少一台服务器,可以提供服务的 C 角色、 至少一台服务器,可以提供服务的 D 角色和至少一台服务器,可以提供服务的 G 角色。如果有一个连字符,而不是在任何这些空格号,查看您的拓扑结构。请确认您有至少一个域控制器和一个全局编录服务器在您的 Exchange 服务器是成本最低的站点链接或连接的站点中的站点。

2.接下来我判断一下Exchange 与AD域活动目录连接性

查看列中的可访问性。通常情况下,您还会看到此列中的几个可能的数字之一。如果域控制器是域控制器,但不是全局编录服务器(角色列显示光盘),这个数字是 6 (0x2 | 0x4) 以表示该服务器的域控制器端口 (389) 是可到达的 TCP 连接。如果域控制器是全局编录服务器 (角色列显示"CDG"),这个数字是 7 (0x1 | 0x2 | 0x4),这表示该服务器的域控制器端口 (389) 和全局编录服务器端口 (3268) 被到达的 TCP 连接。如果您看到这里的其他数字 (特别是 0),可能有来自 Exchange 服务器的目录服务的连接有问题。

3.确认Exchange 服务器域准备条件

下一步,看一看SACL右栏。DSAccess 不使用任何域控制器都没有权限读取nTSecurityDescriptor属性在域控制器上的 SACL。必须有至少一台服务器,满足每个角色 (C、 D 或 G)(适当的位标志连接中的可访问性列或值),该角色可以访问和SACL 右侧列中显示1 。如果您没有这些服务器,确认已显示0 SACL 右侧列中的域控制器的域准备,并确认您的收件人更新服务已正确配置。

通过这些参数让我们清楚判断邮件此能够与Active Directory进行通信。如果环境中没有可用域控服务器,常见症状包括:

1.Exchange Server 服务启动异常;

2.无法打开Exchange 管理控制台和Exchange Powershel 命令;

3.输入正确账号密码,用户无法登陆OWA ;

4.在事件查看器可以发现AD 域错误log日志;

如果发现Exchange 和域控无法通信,首先去检查一下防火墙设置,取消防病毒扫描。确认一下组策略是否做对应限制。

实例:

clip_image002

从以上参数可以判断,我们看到在站点中已经检测到一台Active Directory服务器。与DJ-AD01.djclouds.com 这台服务器连接状态是正常的;

以上是关于Exchange DSAccess 事件分析的主要内容,如果未能解决你的问题,请参考以下文章

ios中的奇怪崩溃Signal和EXC_BAD_ACCESS错误分析

Microsoft Exchange本地和Exchange Online可以与第三方服务共享

Azure AD 中没有 Office 365 Exchange 应用

如何显示在Exchange2010/2016中被禁用掉的邮箱账户?

如何将 PC 桌面邮件客户端同步到 Exchange Activesync 服务器?

Exchange Server 2016安装部署系列二: 邮箱服务器角色安装