После недавнего обновления Windows я больше не могу прослушивать порт 1433 (у меня есть SQL-сервер, работающий удаленно, и туннель к нему).
После долгих поисков в Google я обнаружил, что причина в том, что эти порты были «исключены».
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 add 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
и перезапустить