一些防火墙可能拒绝来自基于 Windows Server 2003 Service Pack 1 或 Windows Vista 的计算机的网络流量

重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先对其进行备份,并且一定要知道在出现问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
症状
如果某些防火墙和 VPN 产品拒绝网络请求,则基于远程过程调用的操作可能会失败。如果网络请求来自基于 Microsoft Windows Server 2003 Service Pack 1 或 Windows Vista 的计算机,则会发生这种拒绝现象。如果将 Windows Server 2003 Service Pack 1 (SP1) 应用到 Windows Server 2003 计算机,或者您的 OEM 版或零售版安装媒体包含 SP1 更新,则计算机上的这些网络请求可能会失败。下列产品可能拒绝这些网络请求:
  • Checkpoint Software Technologies 提供的防火墙或虚拟专用网络 (VPN) 产品
  • Microsoft Internet Security and Acceleration (ISA) Server
  • Cisco VPN Client 5.0.0.0340
注意:截止到 2005 年 5 月,以前的列表包括了可能拒绝这些网络请求的产品。但是,该列表未包括执行应用程序级别筛选和可能拒绝网络请求的每一种产品。其他制造商的执行应用程序级别筛选的硬件和软件也可能拒绝来自运行 Windows Server 2003 Service Pack 1 (SP1) 或 Windows Vista 的计算机的远程过程调用 (RPC) 请求。
原因
发生该问题的原因在于 Windows Server 2003 SP1 或 Windows Vista 在 RPC 实现中添加了对一些新转换语法的支持。这些新转换语法被称作“多转换语法协商”。它有助于 32 位和 64 位计算机处理更大的工作负载。另外,它还经常可以帮助提高 32 位和 64 位计算机的运行速度。

具体而言,允许有多个表达上下文出现在绑定 RPC 协议数据单元 (PDU) 的防火墙和 VPN 产品可能会导致以下症状之一:
  • 在网络上丢弃 RPC 帧
  • 过早地关闭与基于 Windows Server 2003 SP1 或 Windows Vista 的计算机的连接
解决方案
如果在安装 Windows Server 2003 SP1 或 Windows Vista 后,基于 Windows Server 2003 SP1 或 Windows Vista 的计算机上基于 RPC 的操作无法通过 VPN 或防火墙,请联系您的防火墙或 VPN 供应商,了解他们是否提供了 RPC 筛选器的更新版本,以便解决此问题。如果基于 RPC 的操作被 Microsoft Internet Security and Acceleration Server (ISA) 2000 或 ISA Server 2004 Standard Edition 计算机上的筛选器阻止,请查看 Microsoft 知识库文章 887222:
887222 在将 Windows Server 2003 Service Pack 1 安装在运行 ISA Server 2004 或 ISA Server 2000 的计算机后,ISA Server RPC 筛选器阻止 RPC 通信

如果 Check Point Software 产品中的筛选器阻止了基于 RPC 的操作,请参见 Check Point Software SecureKnowledge 文章 SK30784 或者访问下面的 Checkpoint Software 网站:
替代方法
要解决此问题,请使用下列方法之一。

方法 1

如果网络没有限制,请在防火墙和 VPN 产品上禁用 RPC 筛选器。

方法 2

警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。

如果您需要基于 RPC 的操作立即运行,并且您不能及时更新防火墙和 VPN,请安装本节介绍的修补程序,然后按照下列步骤操作:

重要说明:Windows Vista 不需要修补程序。但是,您必须按照下列步骤操作,以修改基于 Windows Vista 的计算机上的注册表。
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Rpc
  3. 单击“编辑”菜单,指向“新建”,然后单击“DWORD 值”。
  4. 键入
    Server2003NegotiateDisable
    ,作为新的“DWORD 值”的名称。
  5. 右键单击“
    Server2003NegotiateDisable
    ”,然后单击“修改”。
  6. 在“数值数据”框中,键入“1”,然后单击“确定”。

    注意:此设置禁用绑定时间协商和多转换语法协商。
  7. 退出注册表编辑器。重新启动计算机。
  8. 在防火墙和 VPN 设备与计算机上的 RPC 兼容后,将注册表中“
    Server2003NegotiateDisable
    ”项的值设置为 0。然后重新启动计算机。

Windows Server 2003 Service Pack 信息

要解决此问题,请获取 Windows Server 2003 的最新 Service Pack。有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
889100 如何获取 Windows Server 2003 的最新 Service Pack

Windows Server 2003 修补程序信息

Microsoft 目前提供了一个受支持的修补程序。但是,此修补程序仅用于修复本文所述的问题。请仅将此修补程序应用于出现这一特定问题的系统。此修补程序可能还会接受进一步的测试。因此,如果这个问题没有给您造成严重的影响,我们建议您等待包含此修补程序的下一个 Service Pack。

要解决该问题,请向 Microsoft 在线客户服务提交请求以获取修补程序。要提交联机请求以获取修补程序,请访问下面的 Microsoft 网站:注意:如果发生其他问题或需要进行任何疑难解答,则您可能需要创建单独的服务请求。对于此特定修补程序无法解决的其他支持问题和事项,将照常收取支持费用。要创建单独的服务请求,请访问下面的 Microsoft 网站: 此修补程序的英文版具有下表中列出的文件属性(或更新的文件属性)。这些文件的日期和时间按协调世界时 (UTC) 列出。当您查看文件信息时,该时间将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用“控制面板”中“日期和时间”工具的“时区”选项卡。
文件信息
   日期         版本       大小    文件名        平台----------------------------------------------------------05-03-2005  5.2.3790.2436   642,048   Rpcrt4.dll  x8605-03-2005  5.2.3790.2436  1,714,688  Rpcrt4.dll  x6405-03-2005  5.2.3790.2436  2,462,208  Rpcrt4.dll  IA-64
更多信息
当出现此问题时,Microsoft Outlook 客户端将无法连接到 Exchange 服务器。因此,管理员应评估网络基础设施设备中的 RPC 筛选器定义是否与 Windows Server 2003 SP1 或 Windows Vista RPC 通信兼容。管理员应先进行此评估,然后再将防火墙/VPN 设备、Windows Server 2003 SP1 或 Windows Vista 部署到已在其中部署了此类网络设备的生产环境中。

当防火墙可以筛选域控制器之间基于 RPC 的复制通信时,尤其应进行评估。筛选域控制器之间基于 RPC 的复制通信将导致 Active Directory 复制长时间中断。

具体说就是,管理员应尝试使用监控软件,以确保林中的所有域控制器在滚动的逻辑删除生存天数中执行传入复制。默认情况下,滚动的逻辑删除生存天数为 60 天。如果域控制器在上一个逻辑删除生存天数中无法对每个唯一的删除操作执行传入复制,则除非管理员干预,否则这些域控制器对于那些更改将永远达不到一致。

“目录服务”事件日志中指示 Active Directory 在 Windows Server 2003 域控制器上复制失败的事件包括:
  • 1862:“本地 DC 最近没有收到来自一系列目录服务器的复制信息”(站点间)
  • 1864:“本地 DC 最近没有收到来自一系列域控制器的复制信息”(站点内)
  • 2042:“此计算机与命名的源计算机上一次复制后的时间间隔太长”(逻辑删除生存天数)
如果管理员没有监控解决方案,则可以使用企业管理员凭据每天运行下面的 Windows Server 2003 REPADMIN 命令:
repadmin /showrepl * /csv >showrepl.csv
管理员可以在分析逗号分隔文本的程序(如 Microsoft Excel)中查看 Showrepl.csv 文件。高优先级任务包括解决在最长时间内无法执行传入复制的目标域控制器上的复制失败问题。

Repadmin.exe 位于 Windows Server 2003 安装媒体上的 Support\Tools\ Suptools.msi 文件中。

有关如何删除延迟对象的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
870695过时 Active Directory 对象在 Windows Server 2003 中生成事件 ID 1988
有关 Checkpoint Software Technologies 提供的程序的更多信息,请访问下面的 Checkpoint Software Technologies 网站:有关 ISA Server 的更多信息,请访问下面的 Microsoft 网站:Microsoft 尚不清楚有哪些路由器或交换机会在 Windows Server 2003 SP1 或 Windows Vista 中执行干扰 RPC 操作的程序级筛选。

当使用多转换语法的 RPC 帧被防火墙拒绝,或者 VPN 生成 Windows 32 错误 1727 时,组件通常会显示以下错误消息:
远程过程调用失败且未运行
该常规错误代码有多种起因,因此并不能唯一确定是基于 Windows Server 2003 SP1 或 Windows Vista 计算机阻止了 RPC 帧。

有关 DCE RPC 规范的信息,请访问下面的 Opengroup 网站:有关 DCE RPC 规范中多转换语法支持的信息,请访问下面的 Opengroup 网站: 本文中提到的第三方产品由 Microsoft 以外的其他公司提供。对于这些产品的性能或可靠性,Microsoft 不作任何暗示保证或其他形式的保证。
状态
Microsoft 已经确认这是在“这篇文章中的信息适用于:”部分中列出的 Microsoft 产品中存在的问题。 此问题最早在 Windows Server 2003 Service Pack 2 中得到了解决。
checkpoint bind time negotiation multiple transfer syntax negotiation 887222 S0X050614700037
属性

文章 ID:899148 - 上次审阅时间:07/23/2007 05:10:00 - 修订版本: 10.1

Microsoft Windows Server 2003 SP1, Windows Vista Business, Windows Vista Home Basic, Windows Vista Enterprise, Windows Vista Home Premium, Windows Vista Ultimate, Windows Vista Enterprise 64-bit edition, Windows Vista Home Basic 64-bit edition, Windows Vista Home Premium 64-bit edition, Windows Vista Ultimate 64-bit edition, Windows Vista Business 64-bit edition

  • kbtshoot kbqfe kbprb kbconfig kbwinservnetwork kbconnectivity kbnetwork_techconfigissue kbexpertiseadvanced kbhotfixserver kbwinserv2003sp2fix KB899148
反馈