Windows 환경에서 Hyper-V 사용 중일 때 Jetbrains IDE가 켜지지 않는 문제 (Address already in use)

개요

어느 날부턴가 IntelliJ, DataGrip 등 Jetbrains IDE들이 켜지지 않았다.

위와 같은 창이 멈춘 상태가 지속되어 컴퓨터 재시작, IDE 삭제 후 재설치 등을 해봐도 소용이 없었다.

1
C:\Users\sunb\AppData\Local\JetBrains\IntelliJIdea2021.2\log

위 경로에 들어가 로그를 열어보니 아래와 같은 오류가 보인다.

1
2
2021-09-01 12:49:43,000 [   6803]  ERROR - llij.ide.plugins.PluginManager - java.net.BindException: Address already in use: bind 
java.util.concurrent.CompletionException: java.net.BindException: Address already in use: bind

구글에 찾아보니 Jetbrains IDE는 6942~6991번 포트 중 사용 가능한 첫 번째 포트를 바인딩해서 쓰는데 저 구간에 사용 가능한 포트가 하나도 없으면 이런 오류가 난다고 한다.

그럼 왜 저 포트들이 다 사용 중일까 알아보니 WSL2 설정하면서 Hyper-V를 켰는데 Hyper-V가 포트를 가져가서 그런 것이었다.

아래는 Hyper-V가 일부 포트를 못 가져가도록 막는 Powershell 명령이다.

1
2
3
4
5
6
7
8
9
10
# Hyper-V 끄기
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
# 윈도우 재시작

# numberofports는 동시에 켜둘 Jetbrains IDE의 최대 개수
netsh int ipv6 add excludedportrange protocol=tcp startport=6942 numberofports=10

# Hyper-V 켜기
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
# 윈도우 재시작

설정 후 IntelliJ를 켜보면 잘 켜진다.