查找谁排除了端口范围

cda*_*ndr 13 networking netsh docker

尝试启动 docker 容器时,出现以下错误:

Cannot start service <service>: Ports are not available: listen tcp 0.0.0.0:5601: bind: An attempt was made to access a socket in a way forbidden by its access permissions.

netstat -aon显示端口未被使用。

跑步netsh int ipv4 show excludedportrange protocol=tcp节目:

Start Port    End Port
----------    --------
      1037        1136
      1137        1236
      1641        1740
      1741        1840
      2869        2869
      5357        5357
      5433        5532
      5533        5632
     10243       10243
     34036       34135
     34136       34235
     48369       48468
     48469       48568
     48569       48668
     48669       48768
     50000       50059     *
Run Code Online (Sandbox Code Playgroud)

所以看来端口范围 5533-5632 被排除在外。

我怎样才能找到添加此排除范围的罪魁祸首,为什么?

小智 6

这可能是因为Windows NAT。重新启动WinNAT可能足以删除所有排除的端口范围(受管理的端口范围除外)。

对于您的情况,您可能想要停止 WinNAT:

net stop winnat
Run Code Online (Sandbox Code Playgroud)

然后,在启动 WinNAT 之前启动 docker 容器:

net start winnat
Run Code Online (Sandbox Code Playgroud)