갑자기 특정 포트가 열리질 않는다.
명령 프롬프트를 열어서 다음을 입력하면...
netsh interface ipv4 show excludedportrange protocol=tcp
왜 때문에 이 범위의 포트를 운영체제에서 잡고있다.
Hyper-V 쪽에서 잡고 있다는 듯 하다. ㅡ.ㅡ;
https://github.com/docker/for-win/issues/3171#issuecomment-459205576
그래서 Hyper-V 를 비활성화 시켰다가 예약된 포트를 강제로 '관리 포트 제외' 설정을 해주고 Hyper-V 를 키라고 한다.
1. Hyper-V를 비활성화 해주세요 (몇 차례의 재시작 필요)
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
2. 재시작이 끝나면 Hyper-V 가 예약하지 못하도록 직접 포트 범위를 예약해주세요.
(아래는 4924번 포트부터 100개의 포트, 즉 5023 포트까지 사용자가 예약을 선점하는 명령)
netsh int ipv4 add excludedportrange protocol=tcp startport=4924 numberofports=100
3. Hyper-V 를 재활성화 해주세요 (몇 차례의 재시작 필요)
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
다 끝나면 해당 포트를 사용 가능할 거에요.
해봤는데, 일부 포트는 그래도 안된다. 대체 이유를 모르겠음.
혹은, Windows 가 업데이트 대기 중인 상태에서도 특정 포트가 막힌다.
...
옛날보다 많이 좋아진 Windows 기는 하지만 사용자 알게 모르게 잠수함 패치 등을 해버리는건 좀... ㅠㅠ