最近的 Windows 更新後,我無法再偵聽連接埠 1433(我有遠端執行的 SQL Server 並透過隧道連接到它)。
經過多次谷歌搜索後,我發現原因是這些端口已被“排除”
PS C:\Windows\system32> netsh int ipv4 show excludedportrange protocol=tcp
Protocol tcp Port Exclusion Ranges
Start Port End Port
---------- --------
1114 1213
1214 1313
1414 1513
1514 1613
1614 1713
2000 2099
25173 25272
50000 50059 *
* - Administered port exclusions.
當我嘗試刪除排除時:
PS C:\Windows\system32> netsh int ipv4 delete excludedportrange protocol=tcp 1414 1000
Element not found.
如何找出這些連接埠被排除的原因並「取消排除」它們?
我有 Windows 10 家用版 2004。
答案1
這可能是由於 Windows 更新或啟用 Hyper-V(我認為這是我的原因)。
https://dandini.wordpress.com/2019/07/15/administered-port-exclusions-blocking-high-ports/
我將腳本保存為批次文件,運行它並解決了我的問題。
您似乎可以運行以下命令而不是整個腳本:
reg 新增 HKLM\SYSTEM\CurrentControlSet\Services\hns\State /v EnableExcludedPortRange /d 0 /f
https://superuser.com/questions/1579346/many-excludedportranges-how-to-delete-hyper-v-is-disabled
答案2
答案已發佈在相關問題中https://stackoverflow.com/questions/48478869/cannot-bind-to-some-ports-due-to-permission-denied/62359555#62359555 透過@onoma
基本上你只需要運行
netsh int ipv4 set dynamic tcp start=49152 num=16384
並重新啟動