이 글은 v2rayN을 설치했지만 코어 시작 시 포트 충돌이 발생한 사용자를 대상으로 합니다. 읽고 나면 10808/10809 포트를 점유한 프로세스를 찾고, '설정' → '매개변수 설정'에서 포트를 변경하며, 브라우저 프록시도 함께 업데이트할 수 있습니다.
포트가 점유되면 어떤 오류가 뜨나요?
v2rayN이 시작되면 코어는 로컬에서 두 포트를 수신합니다. 10808은 HTTP 프록시용, 10809는 SOCKS5 프록시용입니다. 이 두 포트는 Windows에서 많은 프록시 소프트웨어의 기본 포트이므로 충돌 확률이 낮지 않습니다.
포트가 점유되면 코어는 조용히 넘어가지 않고 즉시 오류를 표시하고 수신을 중단합니다. 오류 메시지는 v2rayN 메인 화면 하단의 로그 영역에 나타나며, 일반적으로 다음 두 가지 중 하나입니다.
오류: failed to listen on 10808: bind: Only one usage of each socket address
원인 및 해결책:10808 포트가 다른 프로세스에 의해 수신되고 있습니다. netstat으로 프로세스를 찾아 종료하거나 매개변수 설정에서 10810으로 변경하세요.
오류: bind: address already in use
원인 및 해결책:같은 포트가 중복 바인딩되었습니다. v2rayN 인스턴스가 두 개 실행 중인지, 또는 이전 코어 프로세스가 완전히 종료되지 않았는지 확인하세요.
포트 매핑 관계를 이해하면 어느 단계에서 문제가 발생했는지 빠르게 파악할 수 있습니다. v2rayN의 기본 로컬 포트 할당은 아래 표와 같습니다.
| 포트 | v2rayN 기본 용도 | 점유 시 일반적인 증상 |
|---|---|---|
| 10808 | HTTP 프록시 | 브라우저에서 웹페이지가 열리지 않음, 코어 시작 실패 |
| 10809 | SOCKS5 프록시 | 게임/앱이 프록시에 연결되지 않음 |
v2rayN 자체 외에도 다른 프록시 소프트웨어가 10808 포트를 수신할 수 있습니다. 예를 들어 일부 게임 가속기, 기업 내부망 프록시 도구, 심지어 이전 버전 v2rayN의 잔여 프로세스도 동일한 충돌을 유발합니다. 따라서 오류가 표시되면 v2rayN 설정을 서둘러 변경하기보다 누가 포트를 점유하고 있는지 확인하는 것이 더 중요합니다.
netstat으로 10808 포트를 점유한 프로세스 찾기
포트 충돌이 발생하면 첫 번째 단계는 서둘러 포트를 변경하는 것이 아니라 누가 점유하고 있는지 확인하는 것입니다. Windows에 내장된 두 명령으로 충분하며 추가 도구를 설치할 필요가 없습니다. netstat은 포트 점유 상태를 나열하고, tasklist는 PID에 해당하는 프로세스 이름을 확인하는 데 사용됩니다.
명령 프롬프트 열기
Win + R을 눌러 cmd를 입력하고 Enter를 누르면 명령 프롬프트가 열립니다.
netstat 실행
netstat -ano | findstr :10808을 입력하고 마지막 열의 PID를 기록합니다.
프로세스 이름 확인
tasklist /fi "pid eq <PID>"를 입력하여 포트를 점유한 프로그램을 확인합니다.
충돌 프로세스 종료
시스템 핵심 프로세스가 아닌지 확인한 후 taskkill /pid <PID> /f를 실행합니다.
다음은 일반적인 netstat 출력 예시입니다. PID 8732가 10808과 10809 두 포트를 점유하고 있다면 이 프로세스가 v2rayN의 기본 포트 쌍을 동시에 바인딩한 것입니다. findstr이 한 줄만 반환하면 하나의 포트만 점유되고 다른 포트는 여전히 사용 가능한 것입니다.
netstat -ano | findstr :10808
TCP 127.0.0.1:10808 0.0.0.0:0 LISTENING 8732
TCP 127.0.0.1:10809 0.0.0.0:0 LISTENING 8732
tasklist /fi "pid eq 8732"
이미지 이름 PID 세션 이름 세션# 메모리 사용량
========================= ======== ================ =========== ============
v2rayN.exe 8732 Console 1 24,580 K
netstat 출력에서 PID가 System(4) 또는 svchost.exe에 해당하면 직접 종료하지 마세요. 시스템 프로세스이기 때문입니다. 이 경우 시스템 프로세스를 강제로 종료하는 것보다 다른 포트로 변경하는 것이 더 안전합니다.
충돌 처리 세 가지 방법
점유 프로세스를 찾은 후 세 가지 처리 방법이 있습니다. 각각 해결하는 문제의 수준이 다르고 적합한 상황도 다릅니다. 아래에서는 흐름 체인으로 의사 결정 경로를 먼저 설명한 후 하나씩 자세히 다루겠습니다.
결론: 한 번에 해결하려면 포트 변경
프로세스를 종료하면 현재 문제만 해결되고, 다음에 부팅하면 충돌 프로그램이 다시 10808 포트를 점유합니다. v2rayN 로컬 포트를 10810으로 변경하고 브라우저 프록시를 동기화하면 기본적으로 10808을 사용하는 프로그램과 포트를 다투지 않게 됩니다.
방법 1: 점유 프로세스 종료(임시)
10808 포트를 점유한 프로세스가 익숙한 프록시 도구나 이전 버전 v2rayN이라면 바로 종료하는 것이 가장 빠릅니다. taskkill /pid <PID> /f는 즉시 포트를 해제하지만 다음 부팅 시 프로세스가 다시 시작될 수 있습니다. 이 방법은 네트워크를 빠르게 복구하고 싶고 장기적으로 설정을 변경할 계획이 없는 경우에 적합합니다.
방법 2: v2rayN 로컬 포트 변경(권장)
매개변수 설정에서 HTTP 포트를 10810으로, SOCKS 포트를 10811로 변경하세요. 이 변경은 영구적으로 적용되며 대부분의 소프트웨어가 기본으로 점유하는 포트 대역을 피할 수 있습니다. 10810/10811도 흔히 사용되는 포트 범위에 있지만 로컬 프록시 포트로서 충돌 확률은 10808보다 훨씬 낮습니다.
방법 3: 충돌 프로그램의 자동 시작 비활성화(근본 해결)
충돌 프로그램이 더 이상 사용하지 않는 이전 도구라면 작업 관리자의 '시작' 탭에서 자동 시작 항목을 비활성화하는 것이 매번 수동으로 프로세스를 종료하는 것보다 더 간편합니다. 작업 관리자를 열고 '시작' 탭으로 이동하여 충돌 프로그램을 찾은 후 마우스 오른쪽 버튼을 클릭해 '사용 안 함'을 선택하면 됩니다.
v2rayN 로컬 포트 변경 및 브라우저 프록시 동기화
포트 변경이 권장 방법이지만 v2rayN만 변경하고 브라우저를 변경하지 않으면 브라우저는 여전히 10808로 요청을 보내 연결이 실패합니다. 아래 순서대로 진행하여 프록시 체인을 완성하세요.
매개변수 설정 열기
v2rayN 메인 화면에서 '설정' → '매개변수 설정'을 클릭하고 '로컬 수신' 탭으로 전환합니다.
로컬 포트 변경
'HTTP 프록시 포트'를 10808에서 10810으로, 'SOCKS 프록시 포트'를 10809에서 10811로 변경합니다.
저장 후 코어 재시작
'확인'을 클릭하여 저장한 후 메인 화면에서 '코어 재시작'을 클릭하면 새 포트가 적용됩니다.
브라우저 프록시 동기화
브라우저 프록시 플러그인(예: SwitchyOmega)에서 HTTP 및 SOCKS 프록시 포트를 10810/10811로 변경합니다.
브라우저 플러그인 대신 시스템 프록시를 사용한다면 포트 변경 후 Windows '설정' → '네트워크 및 인터넷' → '프록시'에서 HTTP 프록시 주소와 포트를 127.0.0.1:10810으로 동기화해야 합니다. v2rayN의 매개변수 설정에는 '시스템 프록시 자동 구성' 옵션이 있으며, 체크하면 클라이언트가 자동으로 변경해 주므로 수동으로 할 필요가 없습니다.
포트 충돌 후 검증 및 예방
포트를 변경한 후 먼저 netstat으로 새 포트가 정상적으로 수신되는지 확인하고, 브라우저에서 ip.sb 또는 ipinfo.io에 접속하여 출구 IP가 노드가 있는 지역의 주소로 변경되었는지 확인하세요. 두 검사를 모두 통과하면 포트 전환이 성공한 것입니다.
포트 충돌을 예방하려면 두 가지 방향으로 접근할 수 있습니다. 첫째, 자주 사용하지 않는 이전 프록시 도구를 자동 시작에서 제거합니다. 둘째, v2rayN의 로컬 포트를 10810/10811로 고정하여 다른 소프트웨어가 즐겨 사용하는 10808을 피합니다. 포트를 고정하면 나중에 충돌이 발생해도 오류 메시지에서 어떤 프로세스가 문제를 일으키는지 쉽게 알 수 있습니다.
포트를 변경한 후에도 여전히 오류가 발생하면 여러 v2rayN 인스턴스가 동시에 실행 중인지 확인하세요. Ctrl + Shift + Esc를 눌러 작업 관리자를 열고 '프로세스' 탭에서 v2rayN을 검색한 후 불필요한 인스턴스를 모두 종료하고 하나만 남긴 다음 코어를 재시작합니다.