如何配置与防火墙一起使用的 RPC 动态端口分配

文章翻译 文章翻译
文章编号: 154596 - 查看本文应用于的产品
重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
展开全部 | 关闭全部

概要

远程过程调用 (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 网站:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndcom/html/msdn_dcomfirewall.asp

更多信息

下面讨论的值(以及 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 SMS:远程支持功能使用的网络端口
179442 如何为域和信任关系配置防火墙
263293 Windows 2000 NAT 不转换 Netlogon 流量
172227 网络地址转换器 (NAT) 可以阻止 Netlogon 流量
319553 如何限制特定静态端口的 FRS 复制流量
如果您使用的是 Windows Server 2003,则可以使用 Windows Server 2003 资源工具包中的 RPC 配置工具 (RPCCfg.exe) 来完成本文中介绍的过程。要获得 RPC 配置工具,请访问下面的 Microsoft 网站:
http://www.microsoft.com/windows2000/techinfo/reskit/tools/new/rpccfg-o.asp

属性

文章编号: 154596 - 最后修改: 2007年10月26日 - 修订: 11.3
这篇文章中的信息适用于:
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows NT Server 4.0 Standard Edition
关键字:?
kbhowto kbnetwork kbdcom kbproductlink KB154596
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com