WINS 错误事件 ID 4102、4243、4242 和 4286 消息疑难解答

本文介绍如何排查 Windows Internet 名称服务 (WINS) 与复制相关的错误消息。

适用于: Window Server 2003
原始 KB 数: 321208

注意

你可能会收到不同的 WINS 事件日志消息,具体取决于 Microsoft Windows 的版本和已安装在计算机上的 Service Pack。 Microsoft 知识库包含有关事件日志消息的所有更改的信息。 请始终记下错误消息和事件 ID。 仅事件 ID 可能会误导你。

更多信息

在对 WINS 复制相关的错误消息进行故障排除之前,请确保网络使用真正的中心辐射型复制拓扑。 请确保将每个服务器配置为指向自身。 在网络上安装的每个 WINS 服务器必须在 WINS 中注册自己的一组唯一名称和组 NetBIOS 名称。 如果不同的 WINS 服务器拥有特定 WINS 服务器注册的名称,则可能会出现 WINS 服务问题。 若要防止这些问题,请将每个 WINS 服务器配置为其自己的主 WINS 服务器和辅助 WINS 服务器。

必须正确配置 WINS 复制才能拥有支持 WINS 的高效网络。 Windows 2000 服务器资源工具包中 TCP/IP 核心网络指南 的“配置复制”一章介绍了正确 WINS 配置的最重要功能。 此信息也包含在 Windows 2000 服务器资源工具包的“WINS 复制最佳做法”一章和 Windows 2000 Server 联机帮助文件中的“最佳做法”主题中。

注意

必须避免循环中的推送-拉取复制。 Microsoft 建议使用真正的中心辐射型 WINS 模型。

Windows 2000 服务器资源工具包中的“WINS 故障排除”部分介绍了常见问题的一些基本故障排除步骤。

如果服务器位于路由器之间,请验证中间链路上是否存在网络连接丢失或路由器故障。 此外,请确保在干预网络设备(如路由器或防火墙)上未阻止 TCP 端口 42。

WINS 事件 ID 4243 事件消息

以下事件 ID 消息是事件 ID 4243 消息的示例。 数据部分包含故障排除的重要信息:错误代码 4243 的转换WINS_EVT_RPLPULL_PUSH_NTF_EXC。

WINS Server 事件日志消息包含可用于确定错误原因的数据。 将事件数据部分的视图从字节更改为单词。 数据部分中的第二个数据字与记录的错误类型相关联。 记录的错误类型是解决此问题的关键。 示例中数据部分中第二个数据字 (e0000008) 的翻译为“WINS_COMM_FAIL - 发生通信失败。 检查系统是否断开连接或无法访问。”

若要排查此问题,请搜索断开连接或无法访问的计算机。 由于此错误与网络相关,因此可以执行网络跟踪来确定哪个 WINS 服务器出现故障。

注意

事件发生后,可以使用事件监视器工具停止网络监视器。

WINS 4243 事件消息的可能原因

如果满足以下任何条件,可能会收到此事件消息:

  • 未正确配置复制合作关系。
  • WINS 服务未在复制伙伴上运行。
  • WINS 服务器具有拉取伙伴,但 WINS 服务未安装在拉取伙伴上。 在这种情况下,目标服务器使用“TCP 重置”数据包进行答复。
  • WINS 服务器具有拉取伙伴,但出于任何原因都无法访问拉取伙伴。 在这种情况下,将发送“TCP 同步”数据包,但不会收到任何 (不会) 返回“TCP Syn-Ack”数据包。

WINS 4243 事件消息的解决方法

若要解决 WINS 4243 事件消息,请执行网络监视器跟踪以查找所有过时的复制伙伴,然后删除所有过时的复制伙伴。

注意

若要识别 WINS 推送或拉取复制流量,请检查 TCP 端口 42 上的流量。 可以预筛选此端口上帧的跟踪。

执行网络监视器跟踪:

  1. 在接收 WINS 错误 4243 的 WINS 服务器的系统事件日志中查找错误的确切时间戳,然后在跟踪中查找当时出现的 TCP SYN 或 RESET 帧。

  2. 在跟踪中搜索 TCP 标志属性包含“重置连接”的帧。发送 TCP 重置的计算机上未安装或未运行 WINS 服务。

  3. 筛选 SYN (同步序列号) 数据包。

  4. 在跟踪中搜索 TCP 标志属性包含“同步序列号”的帧,然后确定是否已应答所有这些帧。

  5. 过时的复制伙伴是发送 TCP 重置数据包的服务器或未应答的服务器。 从 WINS 服务器的复制伙伴列表中删除过时的复制伙伴。 如果涉及 Windows 2000 WINS 服务器群集,请仅将每个 WINS 服务器群集的虚拟 IP 资源用作复制伙伴。 在所有 WINS 服务器上,从 Windows 2000 WINS 服务器群集的复制伙伴列表中删除 Windows 2000 物理节点。

WINS 事件 ID 4102 事件消息

以下事件消息是事件 ID 4102 事件消息的示例。 数据部分包含故障排除的重要信息。 将事件数据部分的视图从字节更改为单词。 如果 WINS 服务器已设置拉取伙伴,但拉取伙伴尚未设置推送伙伴,则拉取伙伴将记录事件 ID 4102。

如果运行网络监视器跟踪,会看到 TCP 会话 (TCP 三向握手) 建立。 若要分析此类错误,请使用 WINS 分析程序配置网络监视器。 使用正确的网络监视器 WINS 分析程序时,源 WINS 服务器和目标 WINS 服务器将显示“启动关联”请求和回复。

当源客户端发送“WINS 添加版本号映射表请求”消息时,未设置合作伙伴的目标 WINS 服务器 () 发送以下错误消息:

WINS:停止原因 = 消息错误

发生此错误时,启动复制的 WINS 服务器会回复以下错误消息:

WINS:停止原因 = 用户启动

发生这种情况时,TCP 会话将删除 (TCP FIN) 。

WINS 4102 事件消息的可能原因

WINS 事件 ID 4102 事件消息通常意味着在 WINS 连接期间发生通信失败。 如果 WINS 服务器配置为推送或拉取伙伴,而计算机未配置为具有第一个 WINS 服务器的合作伙伴,则可能会出现这种情况。 验证环境中的所有 WINS 服务器是否已正确配置。

如果网络上正在运行恶意 WINS 服务器,还可能会收到 WINS 事件 ID 4102 事件消息。

WINS 4102 事件消息的解决方法

若要解决 WINS 4102 事件消息,请执行以下操作:

  1. 运行网络监视器跟踪,然后标识发送“WINS:停止原因 = 消息错误”错误消息的远程 WINS 服务器 (拉取伙伴) 。
  2. 执行以下步骤之一:
  • 在记录事件 ID 4102 的 WINS 服务器上,从复制伙伴列表中删除远程 WINS 服务器。

  • 在远程 WINS 服务器上 (请求伙伴) ,配置要复制到的推送伙伴。 推送伙伴是记录事件 ID 4102 消息的 WINS 服务器。

WINS 事件 ID 4281 事件消息

以下事件 ID 消息是事件 ID 4281 事件消息的示例。 数据部分包含故障排除的重要信息。 将事件数据部分的视图从字节更改为单词。 此错误消息通常与其他 WINS 错误消息一起记录。 事件 ID 4281 消息通常记录为其他 WINS 错误的副作用。 通常,在解决其他 WINS 错误消息时,可以解决此错误消息。

WINS 事件 ID 4242 事件消息

以下事件 ID 消息是事件 ID 4242 事件消息的示例。 数据部分包含故障排除的重要信息。 将事件数据部分的视图从字节更改为单词。 由于数据部分中的错误代码与网络相关,请参阅本文的“WINS 错误事件 ID 4102”部分中的故障排除步骤。

WINS 事件 ID 4286 事件消息

以下事件 ID 消息是事件 ID 4286 事件消息的示例。 数据部分包含故障排除的重要信息。 将事件数据部分的视图从字节更改为单词。 此错误消息描述的情况是暂时的,并随着时间的推移自动解决。 通常,在具有很长复制伙伴列表的 WINS 服务器上收到此事件消息。 通常,临时端口不足会导致此问题。

WINS 事件 ID 4286 事件消息的解决方法

重要

此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,请务必严格按照这些步骤操作。 为了加强保护,应先备份注册表,再进行修改。 如果出现问题,可以还原注册表。 有关如何备份和还原注册表的详细信息,请单击以下文章编号以查看 Microsoft 知识库中的文章: 322756 如何在 Windows 中备份和还原注册表

若要解决此问题,可以等待问题自行解决,也可以按照以下故障排除步骤操作:

  1. 检查复制拓扑,并确保已为真正的中心辐射型复制拓扑配置。

  2. 验证 TCP 连接是否不存在短缺。 在发送 TCP 数据包之前,计算机会验证它是否有足够的资源,例如免费的传出 TCP 端口。 若要验证 TCP 连接是否不存在短缺,请执行以下步骤:

    1. 在此计算机记录事件 ID 4286 错误) 时, (失败的计算机 (运行以下命令,然后将输出保存到文件中。 为此,请从命令提示符运行以下命令:

      netstat -a
      
    2. 查找会话总数和已用端口数,检查会话状态以确定会话数是否已达到最大值。 默认情况下,最大值为 5000。

如果输出指示服务器已用尽 1024 到 5000 之间的所有端口,则服务器已用完临时端口。 若要解决此问题,请按照下列步骤操作:

  1. 启动注册表编辑器。

  2. 在注册表中的以下项下找到 MaxUserPort 值: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  3. 双击 MaxUserPort 值,在“值数据”框中键入 65534,然后单击“确定”。

    注意

    65534 是 MaxUserPort 值的最大值。

  4. 退出注册表编辑器。

  5. 重启 WINS 服务器。

NT4 上的 WINS 事件 ID 4121 (或 4116) 事件消息

以下事件 ID 消息是 Windows 2000 事件 ID 4121 错误消息的示例。 数据部分包含故障排除的重要信息。 将事件数据部分的视图从字节更改为单词。

注意

基于 Windows NT4 的计算机上的相应事件 ID 为 4116。

数据字词:
00000f58 0a080b73 0000164e 00000000 00001652 000000000
00000f58 0a05f0c6 00005fcf 00000000 000061ac 000000000
00000f58 dc0f05c9 00005c76 00000000 000068c8 000000000

错误代码 4121 的转换WINS_EVT_NO_RPL_RECS_RETRIEVED。

在 Windows 2000 上,如果满足以下任一条件,你可能会收到 WINS 4121 事件日志消息:

  • 计算机接收推送通知。 根据此通知,计算机使用拉取机制获取所有比最高版本 ID 指示的新记录。 当拉取伙伴尝试根据已通知拉取伙伴的版本 ID 获取记录时,这些记录不再存在于该合作伙伴的数据库中。

    如果推送合作伙伴列出了在到达拉取时间之前已过时的条目,则可能会出现此问题。 例如,如果发送推送,则会更新条目,然后在拉取发生之前再次发送推送,可能会收到此事件消息。 若要解决此行为,请优化推送计数和拉取时间。 增加推送计数并缩短拉取时间,直到行为停止。

  • PersonaNonGrata 注册表项包括作为复制伙伴的服务器。

否则,如果满足以下两个条件,则可能会收到 WINS 4121 事件日志事件日志消息:

  • 你有两个 WINS 服务器:一个推送伙伴和一个拉取伙伴。

  • 例如,当拉取伙伴启动复制 (拉取请求) 时,可能会出现以下行为:

    注意

    箭头指示流量的方向。

  1. 拉取合作伙伴 -> 推送合作伙伴

    拉取伙伴向推送伙伴发送 WINS 服务器列表和最高版本 ID 的查询。

  2. 拉取合作伙伴 <- 推送合作伙伴

    推送合作伙伴发送回 WINS 服务器列表和最高版本 ID。 推送伙伴返回一个列表,因为推送伙伴也可能是其他 WINS 服务器的拉取伙伴,并且其数据库 IP 地址是其他 WINS 服务器拥有的。

  3. 拉取合作伙伴 <- 推送合作伙伴

    在推送伙伴上:对于每个 WINS 服务器,将最高版本 ID 与复制的最新版本 ID 进行比较。 如果最高版本 ID 高于复制的版本 ID,则推送合作伙伴会向具有最高版本 ID 的拉取伙伴发出查询。

  4. 拉取合作伙伴 -> 推送合作伙伴

    拉取伙伴发送条目列表。 如果列表为空,则所有新记录不再存在,并且 4121 WINS 事件 (或在 Windows NT4 上,则使用拥有记录的 WINS 服务器的 IP 地址记录 4116 WINS 事件) 。 (可以是拉取伙伴,也可以是任何合作伙伴。合作伙伴又是此拉取合作伙伴) 的拉取伙伴。

此事件仅提供信息,不会报告问题。 使用以下指南来帮助你解释事件消息中包含的数据:

事件消息的“数据词”部分中的每一行都具有以下结构
4 字节 = 源代码中的行号 (仅供 Microsoft 用于调试)
4 字节 = WINS 服务器的 IP 地址 (请求伙伴或使用拉取伙伴复制的任何 WINS 服务器)
8 字节 = 最低版本 ID 的 64 位数字
8 字节 = 最大版本 ID 的 64 位数字

在前面的示例中,三行数据字词翻译为:

IP-Address、Min-Version、Max-Version
------------- -------------- -------------
10.8.11.115、164E 0、1652 0 (十六进制 1652 - 164E = 4 的差异是要复制的记录数)

10.5.240.198、5fcf 0、61ac 0 (477 条记录以复制)
220.15.5.201、5c76 0、68c8 0 (3154 条记录以复制)

此行为是设计使然,WINS 会继续记录事件消息。 在 Windows NT 4.0 及更高版本中,仅当启用了“日志详细事件”选项时,计算机才会记录此事件。

若要禁用详细日志记录,请执行以下步骤:

  1. 在 WINS 管理器中,单击“服务器”菜单上的“配置”。
  2. 单击“高级”,然后单击以清除“日志详细事件检查”框。

损坏的 WINS 数据库

在极少数情况下,WINS 数据库可能会损坏。 若要从这种情况中恢复,请执行以下步骤:

  1. 停止复制。
  2. 删除复制伙伴。
  3. 在中心服务器上的数据库上使用 Jetpack 工具。
  4. 重新建立复制,然后强制复制。
  5. 使用 WINS Microsoft 管理控制台 (MMC) 检查 WINS 数据库的一致性。

在 IP 地址不断更改的大型 WINS 环境中,不要在 NT4 WINS 服务器上配置“在地址上复制”更改选项。 Windows 2000 WINS 服务器上的等效设置是 WINS 管理单元中的“地址更改时检查”框。 单击以清除“检查”框以还原默认设置。

有关其他信息,请单击以下文章编号以查看 Microsoft 知识库中的文章:

150737 设置主 WINS 服务器和辅助 WINS 服务器选项

有关详细信息,请参阅白皮书“Windows Internet 命名服务 (WINS) :体系结构和容量规划”。 为此,请访问以下 Microsoft 网站:

Windows 2000 Server Windows Internet 命名服务 (WINS) 概述

在群集上运行 WINS

在 Windows 2000 服务器群集上,将所有 WINS 复制伙伴配置为使用服务器群集上的虚拟服务器进行复制。 在 Windows NT 4.0 服务器群集上,必须将单个节点配置为复制伙伴,因为故障转移功能不适用于 Windows NT 4.0 服务器群集上的 WINS 服务。

如何将网络监视器配置为使用 WINS 分析程序

Microsoft Windows 2000 服务器资源工具包包含 WINS 复制网络监视器分析器 (Wins.dll) ,可用于排查问题。

若要下载 Wins.dll 文件的更新版本,请参阅 Windows 2000 服务器资源工具包的“补充版”。 若要使用 WINS 复制分析程序,请执行以下操作:

  1. 将 WINS 复制分析程序 (Wins.dll) 复制到 System32\NetmonFull\Parsers 文件夹。

  2. 将以下行添加到 Parser.ini 文件中的 [PARSERS] 节:

    wins.dll =0: WINS
    
  3. 将以下部分添加到 Parser.ini 文件:

    [WINS]  
    Comment="WINS Protocol"  
    FollowSet=  
    HelpFile=  
    

    注意

    Parser.ini 文件位于 System32\NetmonFull 文件夹中。

  4. 将以下行添加到 Tcpip.ini 文件中的 [TCP_HandoffSet] 节:

    42 = WINS; added
    

    注意

    Tcpip.ini 文件位于 System32\NetmonFull\Parsers 文件夹中。

WINS 复制帧示例

配置 WINS 分析程序后,可以在运行网络监视器跟踪时查看每个 WINS 复制包的详细信息。 例如:

#2725 10:05:01.208 00307B967C50 0002A56BB95B WINS 复制数据包

IP:源地址 = 10.46.4.201
IP:目标地址 = 10.12.49.23 IP

TCP: .AP..., len: 45, seq: 44355679-44355724, ack: 799772100, win: 8760, src: 2874 dst: 42
TCP:源端口 = 0x0B79
TCP:目标端口 = 主机名服务器

WINS:WINS 复制数据包
WINS:WINS 数据大小 = 41 (0x29)
WINS:WINS Opcode = 非 NBT 帧
WINS:WINS 关联上下文 = 0 (0x0)
WINS:WINS 消息类型 = 启动关联请求
WINS:WINS 关联上下文 = 807300098 (0x301E6C02)
WINS:WINS 次要版本 = 1 (0x1)
WINS:WINS 主要版本 = 1 (0x1)

若要确定复制伙伴运行的是基于 Windows NT 4.0 的计算机还是基于 Windows 2000 的计算机,请查看主要版本和次要版本。 基于 Windows 2000 的计算机显示为次要版本 2 和主版本 5,Windows NT 4.0 计算机显示为次要版本 1 和主版本 1。

WINS 事件 ID 4102 事件消息的相应帧

启动复制并发送此帧的 WINS 服务器在系统事件日志中记录 WINS 错误 4102。2330 10:04:57.896 0002A56BB95B CISCO 07AC45 WINS 复制数据包源地址 ->目标地址 IP

IP:源地址 = IP 地址
IP:目标地址 = IP 地址

TCP: .AP..., len: 44, seq: 498801786-498801830, ack: 522782479, win: 17475, src: 2937 dst: 42
TCP:源端口 = 0x0B79
TCP:目标端口 = 主机名服务器

WINS:WINS 复制数据包
WINS:WINS 数据大小 = 40 (0x28)
WINS:WINS Opcode = 非 NBT 帧
WINS:WINS 关联上下文 = 942499842 (0x382D6802)
WINS:WINS 消息类型 = 停止关联消息
WINS:停止原因 = 用户启动

注意

如果在网络监视器跟踪中看到此帧,则不会自动表示错误,因为复制成功后也会发送此帧。