为什么本地端口在动态端口范围之外打开?

为什么本地端口在动态端口范围之外打开?

在 Windows 客户端计算机上运行以下命令。

> netsh int ipv4 show dynamicport tcp

 Protocol tcp Dynamic Port Range
 ---------------------------------
 Start Port      : 49152
 Number of Ports : 16384

根据以上输出,可以预期打开的端口应该在 49,152 和 65,536 之间,但在应用程序运行时,nestat 命令返回以下内容(由于显而易见的原因,IP 地址已更改):

  TCP    111.111.11.11:22416    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22436    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22448    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22485    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22498    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22514    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22516    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22518    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22522    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22526    myServer:8888           CLOSE_WAIT
  TCP    111.111.11.11:22538    myServer:8888           ESTABLISHED
  TCP    111.111.11.11:22584    myServer:8888           CLOSE_WAIT

在另一台 Windows 客户端计算机上运行相同的命令。

 > netsh int ipv4 show dynamicport tcp

 Protocol tcp Dynamic Port Range
 ---------------------------------
 Start Port      : 49152
 Number of Ports : 16384

这将生成预期在 49,152 到 65,536 之间的一系列端口。

  TCP    222.222.22.22:51131    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51348    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51362    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51363    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51364    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51356    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51382    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51385    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51386    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51387    myServer:8888           CLOSE_WAIT
  TCP    222.222.22.22:51392    myServer:8888           ESTABLISHED
  TCP    222.222.22.22:51398    myServer:8888           CLOSE_WAIT

问题:

什么原因会导致 Windows 客户端选择超出预期范围的端口范围?

是否有任何设置需要检查、命令需要运行、或者注册表项需要验证?

相关内容