重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986  ([url]http://support.microsoft.com/kb/256986/[/url] ) Microsoft Windows 注册表说明

概要
远程过程调用 (RPC) 动态端口分配由诸如动态主机配置协议 (DHCP) 管理器、Windows Internet 名称服务 (WINS) 管理器之类的远程管...
远程过程调用 (RPC) 动态端口分配由诸如动态主机配置协议 (DHCP) 管理器、Windows Internet 名称服务 (WINS) 管理器之类的远程管理应用程序使用。RPC 动态端口分配将指示 RPC 程序使用高于 1024 的特定随机端口。

使用防火墙的用户可能希望控制 RPC 所使用的端口,以便可以将防火墙路由器配置为只转发这些传输控制协议 (TCP) 端口。

下列注册表项适用于 Windows NT 4.0 及更高版本。它们不适用于以前版本的 Windows NT。即使您可以配置客户端用于与服务器通信的端口,客户端也必须能够根据服务器的实际 IP 地址访问该服务器。无法通过执行地址转换的防火墙使用 DCOM(例如,如果客户端连接到虚拟地址 198.252.145.1,防火墙会将该地址透明地映射到服务器的实际地址,如,192.100.81.101)。这是因为 DCOM 将原始 IP 地址存储在接口封送数据包中,如果客户端无法连接到该数据包中指定的地址,它将无法工作。

有关更多信息,请参见 Microsoft 白皮书 Using Distributed COM with Firewalls(与防火墙一起使用分布式 COM)。为此,请访问下面的 Microsoft 网站:
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndcom/html/msdn_dcomfirewall.asp[/url] ([url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndcom/html/msdn_dcomfirewall.asp[/url])

更多信息
下面讨论的值(以及 Internet 项)不会出现在注册表中;必须使用注册表编辑器手动添加它们。此外,还请注意,必须使用 Regedt32.exe 而不是 Re...
下面讨论的值(以及 Internet 项)不会出现在注册表中;必须使用注册表编辑器手动添加它们。此外,还请注意,必须使用 Regedt32.exe 而不是 Regedit.exe 来添加 REG_MULTI_SZ 值。

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

使用注册表编辑器,您可以修改 RPC 的下列参数。下面讨论的 RPC Port 注册表项值位于注册表的以下项中: HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\Internet\ Key Data Type

Ports REG_MULTI_SZ
指定一组 IP 端口范围,其中包含的端口或者都可以在 Internet 中使用,或者都不可以在 Internet 中使用。每个字符串都代表一个或一组端口。例如,5984 代表一个端口,5000-5100 代表一组端口。如果任何条目位于 0 到 65535 这个范围以外,或者如果任一字符串无法解释,则 RPC 运行库都会将整个配置视为无效。
PortsInternetAvailable REG_SZ Y 或 N(不区分大小写)
如果为 Y,则 Ports 项中列出的端口都是该计算机上可以在 Internet 中使用的端口。如果为 N,则 Ports 项中列出的端口都不能在 Internet 中使用。
UseInternetPorts REG_SZ Y 或 N(不区分大小写)
指定系统默认策略。
如果为 Y,则从可在 Internet 中使用的端口集(根据先前的定义)中为使用默认值的进程分配端口。
如果为 N,则从仅用于内部网的端口集中为使用默认值的进程分配端口。
示例:
  1. 在以下注册表项下添加 Internet 项:HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc
  2. 在 Internet 项下,添加值“Ports”(MULTI_SZ)、“PortsInternetAvailable”(REG_SZ) 和“UseInternetPorts”(REG_SZ)。

    在本示例中,使用了端口 5000 到 5100(含 5000 和 5100),因此该新注册表项将显示为以下形式:
    Ports:REG_MULTI_SZ: 5000-5100
    PortsInternetAvailable:REG_SZ:Y
    UseInternetPorts:REG_SZ:Y
  3. 重新启动服务器。所有使用 RPC 动态端口分配的应用程序都使用端口 5000 到 5100(含 5000 和 5100)。在大多数环境中,至少应该打开 100 个端口,因为多个系统服务都依赖于这些 RPC 端口来互相通信。
应该打开一个高于端口 5000 的端口范围。低于 5000 的端口号可能已经被其他应用程序使用,并且可能会与 DCOM 应用程序造成冲突。此外,以前的经验显示,至少应该打开 100 个端口,因为多个系统服务都依赖于这些 RPC 端口来互相通信。

注意:最低端口号可能因计算机而异,具体取决于计算机的配置。
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
167128  ([url]http://support.microsoft.com/kb/167128/[/url] ) SMS:远程支持功能使用的网络端口
179442  ([url]http://support.microsoft.com/kb/179442/[/url] ) 如何为域和信任关系配置防火墙
263293  ([url]http://support.microsoft.com/kb/263293/[/url] ) Windows 2000 NAT 不转换 Netlogon 流量
172227  ([url]http://support.microsoft.com/kb/172227/[/url] ) 网络地址转换器 (NAT) 可以阻止 Netlogon 流量
319553  ([url]http://support.microsoft.com/kb/319553/[/url] ) 如何限制特定静态端口的 FRS 复制流量
如果您使用的是 Windows Server 2003,则可以使用 Windows Server 2003 资源工具包中的 RPC 配置工具 (RPCCfg.exe) 来完成本文中介绍的过程。要获得 RPC 配置工具,请访问下面的 Microsoft 网站:
[url]http://www.microsoft.com/windows2000/techinfo/reskit/tools/new/rpccfg-o.asp[/url] ([url]http://www.microsoft.com/windows2000/techinfo/reskit/tools/new/rpccfg-o.asp[/url])