自 Windows Vista 和 Windows Server 2008 起,TCP/IP 的默认动态端口范围已更改

本文介绍对 Windows Vista 和 Windows Server 2008 中 TCP/IP 的默认动态端口范围的更改。

注意

对未安装任何 Service Pack 的 Windows Vista 的支持已于 2010 年 4 月 13 日结束。 若要继续接收适用于 Windows 的安全更新,请确保运行的是带有 Service Pack 2(SP2)的 Windows Vista。 有关详细信息,请转到以下Microsoft网站: 支持即将结束某些版本的 Windows

原始 KB 数: 929851

简介

为了遵守 Internet 分配号码颁发机构 (IANA) 建议,Microsoft增加了 Windows Vista 和 Windows Server 2008 中传出连接的动态客户端端口范围。 新的默认起始端口为 49152,新的默认结束端口为 65535。 这是对使用默认端口范围 1025 到 5000 的 Windows 早期版本的配置的更改。

更多信息

可以使用以下命令 netsh 在运行 Windows Vista 或 Windows Server 2008 的计算机上查看动态端口范围:

  • netsh int ipv4 show dynamicport tcp
  • netsh int ipv4 show dynamicport udp
  • netsh int ipv6 show dynamicport tcp
  • netsh int ipv6 show dynamicport udp

注意

范围是针对每个传输(TCP 或 UDP)单独设置的。 端口范围现在是一个具有起点和终点的区域。 Microsoft部署运行 Windows Server 2008 的服务器的客户在内部网络上使用防火墙时,可能会影响服务器之间的 RPC 通信。 在这些情况下,建议重新配置防火墙,以允许 49152 到 65535 的动态端口范围内服务器之间的流量。 此范围除了服务和应用程序使用的已知端口之外。 或者,可以在每台服务器上修改服务器使用的端口范围。 使用 netsh 命令调整此范围,如下所示: netsh int <ipv4|ipv6> set dynamic <tcp|udp> start= number num= range
此命令设置 TCP 的动态端口范围。 起始端口为 数字,端口总数为 范围

下面是示例命令:

  • netsh int ipv4 set dynamicport tcp start=10000 num=1000
  • netsh int ipv4 set dynamicport udp start=10000 num=1000
  • netsh int ipv6 set dynamicport tcp start=10000 num=1000
  • netsh int ipv6 set dynamicport udp start=10000 num=1000

这些示例命令将动态端口范围设置为从端口 10000 开始,并在端口 10999(1000 端口)处结束。 可设置的最小端口数范围为 255。 可设置的最小起始端口为 1025。 最大结束端口(基于配置的范围)不能超过 65535。 若要复制 Windows Server 2003 的默认行为,请使用 1025 作为启动端口,然后使用 3976 作为 TCP 和 UDP 的范围。 这会导致起始端口为 1025,结束端口为 5000。

注意

在基于 Windows Server 2008 的计算机上安装 Microsoft Exchange Server 2007 时,默认端口范围为 1025 到 60000。

有关 exchange 2007 Microsoft安全性的详细信息,请转到以下 Microsoft TechNet 网站:
Exchange 2007 安全指南

参考

有关 IANA 端口分配标准的详细信息,请转到以下 IANA 网站:
服务名称和传输协议端口号注册表

Microsoft 会提供第三方联系信息来帮助你查找技术支持。 此联系信息可能会更改,恕不另行通知。 Microsoft 不保证此第三方联系信息的准确性。