写在前面:
这是一直想写但一直在犹豫的系列,由于系列准备介绍的没有那种包治百病,灵丹妙药式的工具,只有平常维护和排错过程当中经常使用工具。这些工具都包含在MS Support Tools或Resource Tools中,微软网站或工具自带的使用帮助中已有相应的使用说明,网络中也有许多相似的文章能够参考。从这点来讲,再整理这样的系列,未免有多此一举之嫌。但另外一方面,MS Support Tools和Resource Tools包含的工具如此之多,多数又缺乏工具功能和使用范围介绍,在实际环境中遇到故障时,有时没法肯定该使用哪一种适当工具进行故障定位和排错。且对于部分人而言,阅读英文说明文档是一件痛苦的事情,以致于对这些经典工具望而却步,在论坛中也常常能够看到“某某AD工具如何使用”诸如此类的求助帖子。
整理这个系列,一方面是帮助本身梳理经常使用的这些工具使用文档,方便平常的工做和管理。另外一方面也但愿能对刚接触活动目录管理的新手如何使用这些工具起指导入门的做用。
至于文章中工具功能和参数的解释,大部分是经过查看工具自带帮助翻译理解而成,因为英文水平和理解能力有限,确定存在理解误差或彻底错误的地方,欢迎你们指正,毕竟良好的交流和沟通氛围,是学习技术重要的途径!
工具名称:DcDiag
工具出处:MS Support Tools
工具类型:命令行工具
当前环境:Win2003 SP1 + R2,DC
主要功能:
DcDiag是域控制器诊断工具,经过各类诊断测试,用来分析当前林或域中域控制器状态,生成相应的检测报告。DcDiag能够说是域控制器诊断全能工具,当DC出现问题却没法判断具体故障缘由时,首选使用DcDiag工具对DC进行一次全面诊断,查看检测报告,从而缩小问题范围以及定位问题!
DcDiag工具由对系统的一系列测试和校验构成,能够根据用户的选择,针对不一样的范围(林,域)对域控制器进行不一样项目的诊断测试,主要测试项目有:
1:连通性
2:复制
3:拓朴完整性
4:检查NC Head安全描述符
5:检查登陆权
6:获取DC位置
7:验证安全边界
8:验证FSMO角色
9:验证信任关系
10:DNS
一:DcDiag工具语法格式
DcDiag.exe /s:<Domain Controller> [/u:<Domain>\<Username> /p:*|<Password>|""]
[/hqv] [/n:<Naming Context>] [/f:<Log>] [/ferr:<Errlog>]
[/skip:<Test>] [/test:<Test>]
二:主要参数说明:
/s:Domain Controller - 指定测试的DC,默认测试本机。
/n:Naming Context - 指定测试时关联的名称上下文。彷佛只能使用域名称上下文,没法测试Schema,Configration等名称上下文。
域名称上下文可使用域的DNS名称,NetBios名称或DN名称。
/u:Domain\Username /p: - 用指定的账号密码链接DC,此时该账号的密码为显示密码。
如:DcDiag /u:superlan.vmtest.com\administrator /p:1qa2ws3ed
/a - 测试当前站点全部DC
/e - 测试整个企业(整个林)中全部DC的情况
/q - 只显示错误信息
/v - 显示详细检测报告
/i - 忽略多余的错误信息
/fix - 仅对 MachineAccount 测试有影响。此参数会使测试过程对目录服务器的计算机账户对象上的服务主体名称 (SPN) 进行修复
/f - 将信息报告输出到指定的文件
/ferr - 将致命错误输出重定向指定的文件
/c - 诊断除 DcPromo 和 RegisterInDNS 以外的全部测试项目,包括非默认的测试。
非默认测试项包括:拓扑,对方服务器是否关闭,安全通道输出范围以及DNS动态注册等。
/skip:Test - 指定不进行诊断的测试项,必须与/c配合使用。
/test:Test - 只运行单一测试项,但连通测试不跳过
具体测试项有:
Connectivity - 连通性。测试DC是否在DNS中登记注册,Ping测试以及LDAP/RPC的可用性。
Replications - 检测DC之间的复制状况
Topology - 检查KCC是否为全部DC生成完整的连接拓扑
CutoffServers - 检查因复制伙伴不可用而没有接受到的复制的DC
NCSecDesc - 检查在名称上下文头中的安全描述符是否有适当的复制权限
NetLogon - 检查是否有进行复制的适当登陆权限
Advertising - 检查每一个DC是否已公告它本身可以执行的角色。若是 Net Logon 服务中止或未能启动,则此测试将失败。
KnowsOfRoleHolders - 检查DC是否能够与FSMO操做主机正常联系
Intersite - 检查会阻止或暂时停止站点间复制的故障,并尝试预测 KCC 可以恢复以前须要的时间。
FSMOCheck - 检查DC是否能联系密钥发行中心 (KDC)、时间服务器、首选时间服务器、主目录服务器(主域控制器 (PDC))和全局编录服务器。
RidManager - 检查是否可访问 RID 主机,以及 RID 主机是否包含正确的信息。
MachineAccount - 检查机器的账户是否包含正确信息。
若是本地计算机账号丢失,使用/RecreateMachineAccount进行尝试修复
若是本地计算机账号标志不正确,使用/FixMachineAccount进行尝试修复
Services - 检查DC服务是否在运行正常
OutboundSecureChannels 检查当前域中全部DC的安全通道。
ObjectsReplicated - 检查 Machine Account 和 DSA 对象是否已复制
frssysvol - 检查SYSVOL文件夹共享状态。
frsevent - 检查FRS是否存在错误记录
kccevent - 检查 KCC是否存在错误记录。
systemlog - 检查系统是否无错误运行。
DCPromo - 检查DC上的DNS记录是否正常
RegisterInDNS - 检查DC是否在DNS中注册
Cro***efValidation - 检查交叉引用是否有效
CheckSDRefDom - 检查目录分区的安全
VerifyReplicas - 检查复制服务器上目录分区的安全性
VerifyReference - 检查对于 FRS 和“复制”基础结构系统参数的正确与完整性
VerifyEnterpriseReferences - 检查整个企业范围内的全部DC上系统参数是否正确与完整
(Win2003 SP1新增功能)
CheckSecurityError - 检测可能会形成AD复制失败的安全配置
DNS - 检查整个企业内的DNS健康性。
DNS测试子项有:
/DnsBasic - 基本DNS测试,包括网络链接性、DNS客户端配置、服务可用性和区域存在性。
/DnsForwarders - /DnsBasic 测试,还检查转发器的配置
/DnsDelegation - /DnsBasic 测试,还检查委派配置
/DnsDynamicUpdate - /DnsBasic测试,还检查是否配置动态更新
/DnsRecordRegistration - /DnsBasic测试,检查是否已注册A、CNAME和已知的SRV记录。此外,还根据结果建立清单报告
/DnsResolveExtName - /DnsBasic测试,还尝试解析指定的域名名称.
/DnsInternetName - /DnsBasic测试,还尝试解析指定域名
/DnsAll - 除了/DnsResolveExtName外的全部DNS测试项
三:使用示例
DcDiag参数众多,且能够组合使用,下面只给出基本的使用示例,对用法作一简单描述。
1:最简单的用法,诊断当前DC情况
>DcDiag
2:测试当前DC的连通性
>dcdiag /s:vmtest /test:connetivity
3:测试整个林拓扑结构
>dcdiag /e /test:Topology
4:DCPromo参数用法。
注:DcPromo主要是当使用AD安装向导或经过DCPromo命令安装AD出错时使用
测试是否能够在当前服务器上新建一个林
>dcdiag /test:dcpromo /dnsdomain:vmtest.com /newforest
测试是否能够在当前服务器上新建树 >dcdiag /test:DCpromo /dnsdomain:vmtest.com /newtree /forestRoot:vmtest.com
测试是否能够在当前服务器上新建子域
>dcdiag /test:dcpromo /dnsdomain:vmtest.com /childDomain
测试是否能够在当前服务器上安装辅助DC
>dcdiag /test:dcpromo /dnsdomain:vmtest.com /ReplicaDC
5:测试DC是否在DNS中注册
>Dcdiag /v /test:RegisterInDns /Dnsdomain:vmtest.com
6:DNS诊断
最简单用法,测试除/DnsResolveExtName以外的六项子测试
>dcdiag /test:dns
基本测试:执行基本 DNS 测试,包括网络链接性、DNS 客户端配置、服务可用性和区域存在性
>dcdiag /test:dns /DnsBasic
测试DnsBasic和转发器
>dcdiag /v /test:dns /dnsForwarders
测试DnsBasic和解析指定的域名
>Dcdiag /v /test:dns /dnsinternetname:[url]www.baidu.com[/url]