终端服务器客户端已因无法续订其许可证而断开连接

Microsoft.Windows.Server.2008.TerminalServicesRole.Service.TerminalServer.EventCollection.1028 (Rule)

Knowledge Base article:

解决方法

若要解决此问题,请确保终端服务器可以发现(联系)具有足够数量的适当类型的终端服务客户端访问许可证 (TS CAL) 的终端服务许可证服务器。若要终端服务器能够从许可证服务器接收用于其客户端的 TS CAL,必须满足以下条件:

许可证服务器上安装的 TS CAL 的数目必须足以支持要与终端服务器建立远程连接的连接数。

终端服务器的授权模式必须与许可证服务器上安装的 TS CAL 的类型匹配。

终端服务器和许可证服务器之间必须已建立网络连接。

确定终端服务器是否能够发现许可证服务器

若要执行此过程,您必须拥有本地 Administrators 组成员身份,或者您必须被委派了适当的权限。

若要使用“终端服务配置”中的“授权诊断”,请执行以下操作:

在终端服务器上,打开“终端服务配置”。若要打开“终端服务配置”,请单击“开始”,指向“管理工具”,再指向“终端服务”,然后单击“终端服务配置”。

如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”。

在左窗格中,单击“授权诊断”。

查看“授权诊断”中的下列信息可帮助您确定问题的根本原因:

在“终端服务器配置详细信息”下,确保“客户端可用的 TS CAL 数量”的值大于 0。

在“终端服务许可证服务器信息”下,确保至少已列出一台已发现的许可证服务器。

确保任何列出的已发现的许可证服务器安装了足够数量的适当类型的 TS CAL,可以支持要与终端服务器建立远程连接的连接数。有关许可证服务器上安装的 TS CAL 的类型和数量的信息将在“许可证服务器配置详细信息”下列出,当您单击“终端服务许可证服务器信息”下列出的某个已发现的许可证服务器时将会出现这部分信息。

确保任何列出的已发现的许可证服务器安装了适当类型的 TS CAL。终端服务器上配置的终端服务授权模式必须与许可证服务器上可用的 TS CAL 的类型匹配。终端服务器的授权模式将在“终端服务器配置详细信息”下列出。

使用以下过程可解决已由“授权诊断”标识的所有问题。

许可证服务器安装的 TS CAL 的数量不足,无法支持要与终端服务器建立的远程连接的数目

若要解决此问题,请使用 TS 授权管理器在许可证服务器上安装 TS CAL。有关在许可证服务器上安装 TS CAL 的详细信息,请参阅 Windows Server 2008 技术库中的 TS 授权管理器帮助文档中的“安装终端服务客户端访问许可证”( http://go.microsoft.com/fwlink/?LinkId=101643,页面可能为英文)。确保终端服务器上指定的终端服务授权模式与许可证服务器上安装的 TS CAL 的类型匹配。

终端服务器的授权模式与许可证服务器上安装的 TS CAL 的类型不匹配

若要解决此问题,请确保终端服务器上指定的终端服务授权模式与许可证服务器上安装的 TS CAL 的类型匹配。终端服务授权模式决定了终端服务器代表与之连接的客户端从许可证服务器请求的终端服务客户端访问许可证 TS CAL 的类型。因此,终端服务器上指定的终端服务授权模式必须与许可证服务器上可用的 TS CAL 的类型匹配。

若要执行此过程,您必须拥有本地 Administrators 组成员身份,或者您必须被委派了适当的权限。

若要指定终端服务授权模式,请执行以下操作:

在终端服务器上,打开“终端服务配置”。若要打开“终端服务配置”,请单击“开始”,指向“管理工具”,再指向“终端服务”,然后单击“终端服务配置”。

如果出现“用户帐户控制”对话框,请确认它显示的是所需操作,然后单击“继续”。

在“授权”下,双击“终端服务授权模式”。

根据环境选择“每设备”或“每用户”。有关这两个选项的详细信息,请参阅 Windows Server 2008 技术库中的终端服务配置帮助文档中的“指定终端服务授权模式”( http://go.microsoft.com/fwlink/?LinkId=101638,页面可能为英文)。

单击“确定”,然后再次单击“确定”。

注意:也可以通过使用组策略来指定终端服务器的终端服务授权模式。

若要通过使用组策略来指定终端服务器的终端服务授权模式,请启用“设置终端服务授权模式”组策略设置。此组策略设置位于 Computer Configuration\Administrative Templates\Windows Components\Terminal Services\Terminal Server\Licensing 中。请注意,组策略设置将优先于“终端服务配置”中配置的设置。

若要在 Active Directory 域服务 (AD DS) 中配置组策略设置,请使用组策略管理控制台 (GPMC)。若要在终端服务器本地配置组策略设置,请使用本地组策略编辑器。有关配置组策略设置的详细信息,请参阅 Windows Server 2008 技术库中的本地组策略编辑器帮助文档( http://go.microsoft.com/fwlink/?LinkId=101633,页面可能为英文)或 GPMC 帮助文档( http://go.microsoft.com/fwlink/?LinkId=101634,页面可能为英文)。

终端服务器和许可证服务器之间存在网络连接问题

若要解决此问题,请通过执行以下操作来确定并修复终端服务器和许可证服务器之间存在的任何网络连接问题:

通过使用 ping 命令来确定是否存在网络连接问题。

如有必要,可执行其他故障排除步骤以帮助确定问题的原因。

若要执行这些任务,请参阅以下各节。

注意:下列过程包含有关使用 ping 命令进行故障排除的步骤。因此,在执行这些步骤之前,请先检查网络上的防火墙或 Internet 协议安全 (IPsec) 设置是否允许使用 Internet 控制消息协议 (ICMP) 进行通信。ICMP 是由 ping 命令使用的 TCP/IP 协议。

若要执行这些过程,您必须拥有本地 Administrators 组成员身份,或者您必须被委派了适当的权限。

确定是否存在网络连接问题

若要确定终端服务器和许可证服务器之间是否存在网络连接问题,请执行以下操作:

在终端服务器上,单击“开始”,再单击“运行”,键入 cmd,然后单击“确定”。

在命令提示符下,键入 ping server_FQDN,其中 server_FQDN 是许可证服务器的完全限定的域名 (FQDN)(例如,server1.contoso.com),然后按 Enter。确认 ping 操作成功。

在命令提示符下,键入 ping IP_address(其中 IP_address 是许可证服务器的 IP 地址),然后按 Enter。

如果可以通过 IP 地址对许可证服务器成功进行 ping 操作,但无法通过 FQDN 对许可证服务器成功进行 ping 操作,则表明 DNS 主机名解析可能出现问题。

如果无法通过 IP 地址对许可证服务器成功进行 ping 操作,则表明网络连接、防火墙配置或 IPsec 配置可能存在问题。

执行其他故障排除步骤

以下是一些额外的故障排除步骤,通过执行这些步骤可帮助您确定问题的根本原因:

对网络中的其他计算机进行 ping 操作,以帮助确定网络连接问题的范围。

如果您可以对其他服务器成功进行 ping 操作,但不能对许可证服务器成功进行 ping 操作,请尝试从另一台计算机对许可证服务器进行 ping 操作。如果您无法从另一台计算机对许可证服务器成功进行 ping 操作,请首先确保许可证服务器正在运行。如果许可证服务器正在运行,请检查许可证服务器上的网络设置。

通过执行以下操作,检查本地计算机上的 TCP/IP 设置:

单击“开始”,再单击“运行”,键入 cmd,然后单击“确定”。

在命令提示符下,键入 ipconfig /all,然后按 Enter。确保列出的信息准确。

键入 ping localhost 以验证本地计算机上是否已安装并正确配置 TCP/IP。如果此 ping 操作失败,则可能表明 TCP/IP 堆栈已损坏或网络适配器出现问题。

键入 ping IP_address,其中 IP_address 是分配给计算机的 IP 地址。如果可以对本地主机地址成功进行 ping 操作,但不能对本地地址成功进行 ping 操作,则表明路由表或网络适配器驱动程序可能存在问题。

键入 ping DNS_server,其中 DNS_server 是分配给 DNS 服务器的 IP 地址。如果网络中有多台 DNS 服务器,则应对每台 DNS 服务器进行 ping 操作。如果不能对 DNS 服务器成功进行 ping 操作,则表明 DNS 服务器可能出现问题或者计算机和 DNS 服务器之间的网络可能出现问题。

如果许可证服务器位于其他子网中,请尝试对默认网关进行 ping 操作。如果无法对默认网关成功进行 ping 操作,则表明网络适配器、路由器或网关设备、电缆或其他连接硬件可能存在问题。

在设备管理器中,检查网络适配器的状态。若要打开设备管理器,请单击“开始”,再单击“运行”,键入 devmgmt.msc,然后单击“确定”。

检查计算机和集线器或路由器上的网络连接指示灯。检查网络电缆。

使用“高级安全 Windows 防火墙”管理单元检查防火墙设置。

使用“IP 安全策略管理”管理单元检查 IPsec 设置。

Element properties:

TargetMicrosoft.Windows.Server.2008.TerminalServicesRole.Service.TerminalServer
CategoryEventCollection
EnabledFalse
Event_ID1028
Event SourceMicrosoft-Windows-TerminalServices-RemoteConnectionManager
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
终端服务器客户端已因无法续订其许可证而断开连接
{0}
Event LogSystem

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
Alert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.Windows.Server.2008.TerminalServicesRole.Service.TerminalServer.EventCollection.1028" Enabled="false" Target="Microsoft.Windows.Server.2008.TerminalServicesRole.Service.TerminalServer" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>System</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1028</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-TerminalServices-RemoteConnectionManager</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.2008.TerminalServicesRole.Service.TerminalServer.EventCollection.1028.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/Params/Param[1]$</SuppressionValue>
</Suppression>
<Custom1/>
<Custom2/>
<Custom3/>
<Custom4/>
<Custom5/>
<Custom6/>
<Custom7/>
<Custom8/>
<Custom9/>
<Custom10/>
</WriteAction>
</WriteActions>
</Rule>