시스템 프록시를 켰는데 적용되지 않을 때: 브라우저와 터미널별 점검 가이드

프록시 스위치를 켰는데도 트래픽이 우회되지 않는다면 브라우저와 터미널의 원인이 다를 수 있습니다. 브라우저는 프록시 설정과 확장 프로그램 충돌을, 터미널은 환경 변수와 프록시 포트를 차례로 확인해 문제 지점을 찾으세요.

이 글 한눈에 보기

이 글은 v2rayN에서 노드를 선택하고 코어를 시작한 뒤 시스템 프록시까지 켰지만, 브라우저나 터미널이 여전히 직접 연결되는 경우에 적합합니다. 먼저 로컬 수신 포트를 확인하고, 브라우저의 프록시 적용과 터미널의 명시적 프록시를 각각 검증한 다음 노드, 라우팅, DNS를 점검합니다. 이를 통해 문제가 애플리케이션, 시스템 프록시, 로컬 포트 또는 원격 연결 중 어디에 있는지 판단할 수 있습니다.

먼저 네 단계를 나누고, 바로 재설치하지 마세요

“시스템 프록시가 켜짐”은 운영체제에 프록시 주소가 저장되어 있다는 뜻일 뿐, 모든 애플리케이션이 해당 주소를 사용한다는 의미는 아닙니다. 완전한 연결은 최소한 애플리케이션 프록시 설정, 시스템 프록시 구성, 로컬 수신 포트, 원격 노드의 네 단계를 거칩니다. 어느 한 단계라도 끊기면 웹페이지가 열리지 않거나 외부 IP가 바뀌지 않는 현상이 나타날 수 있습니다.

브라우저는 보통 시스템 프록시를 읽지만, 브라우저 자체의 프록시 설정이나 기업 정책, 프록시 확장 프로그램이 이를 덮어쓸 수 있습니다. 터미널 프로그램은 더 다양합니다. 일부 명령은 HTTP_PROXY와 HTTPS_PROXY를 읽고, 일부는 명령줄 옵션이 필요하며, 시스템 프록시를 아예 무시하는 프로그램도 있습니다. 따라서 브라우저는 정상인데 터미널이 직접 연결되는 상황은 모순이 아닙니다.

127.0.0.1
자주 사용하는 로컬 수신 주소
10808
일반적인 SOCKS 예시 포트
10809
일반적인 HTTP 예시 포트
4단계
애플리케이션, 시스템, 로컬, 원격

결론: 먼저 로컬 포트를 확인하세요

10808이나 10809를 고정값으로 간주하지 마세요. 현재 v2rayN에 표시된 수신 설정을 기준으로 삼고, 명시적 프록시 명령으로 같은 주소에 접속해야 합니다. 명시적 프록시는 성공하지만 시스템 프록시가 실패한다면 애플리케이션 적용이나 시스템 설정을 확인하세요. 명시적 프록시도 실패할 때는 코어, 포트, 노드를 점검합니다.

브라우저 점검: 시스템 설정이 실제로 적용됐는지 확인

브라우저 점검의 첫 단계는 웹페이지를 계속 새로 고치는 것이 아니라, 운영체제에 실제로 입력된 프록시 서버를 확인하는 것입니다. Windows에서는 「설정」→「네트워크 및 인터넷」→「프록시」로 이동해 수동 프록시가 127.0.0.1을 가리키는지, 포트가 v2rayN의 HTTP 수신 포트와 일치하는지 확인하세요. macOS에서는 「시스템 설정」→「네트워크」→현재 네트워크→「세부사항」→「프록시」에서 같은 내용을 확인합니다.

  1. 활성 노드 확인

    v2rayN 메인 화면에서 사용 가능한 서버를 선택해 활성 서버로 지정한 뒤, 코어가 계속 시작되거나 종료되는 상태가 아닌지 확인하세요.

  2. 시스템 프록시 다시 설정

    먼저 「시스템 프록시 지우기」를 한 번 실행하고 3초간 기다린 다음 「시스템 프록시 자동 설정」을 선택하세요. 이 단계는 남아 있는 이전 주소와 포트를 정리합니다.

  3. 시스템 포트 확인

    시스템 프록시 페이지를 열어 주소가 127.0.0.1인지, 포트가 현재 v2rayN HTTP 포트와 같은지 확인하세요. 화면에 10809가 표시된다면 시스템 설정도 10809여야 합니다.

  4. 확장 프로그램 덮어쓰기 배제

    브라우저의 프록시 관리 확장 프로그램을 잠시 비활성화하고 브라우저를 완전히 종료한 뒤 다시 여세요. 탭만 닫는 것으로는 프록시 프로세스가 새로 시작되지 않는 경우가 많습니다.

  5. 새로운 깨끗한 창에서 테스트

    새 브라우저 프로필이나 임시 게스트 창에서 테스트해 캐시된 네트워크 정책, 확장 프로그램 규칙, 기존 연결 재사용이 판단에 영향을 주지 않도록 하세요.

한 브라우저는 정상인데 다른 브라우저만 실패한다면 로컬 코어와 원격 노드는 대체로 정상이며, 실패한 브라우저의 독립 프록시 설정을 우선 확인해야 합니다. 일부 브라우저는 “프록시 사용 안 함”, “시스템 프록시 사용”, “수동 프록시”를 선택할 수 있으므로 시스템 설정 사용을 선택하거나 확인된 로컬 HTTP 포트를 직접 입력하세요.

오류: ERR_PROXY_CONNECTION_FAILED

원인 및 해결:브라우저가 프록시에 연결을 시도했지만 입력된 로컬 주소에서 수신 중인 프로그램을 찾지 못했습니다. 127.0.0.1 뒤의 포트를 확인하고 v2rayN 코어가 실행 중인지 점검하세요.

오류: ERR_TUNNEL_CONNECTION_FAILED

원인 및 해결:브라우저는 HTTP 프록시에 연결했지만 프록시가 대상에 대한 터널을 만들지 못했습니다. 테스트를 통과한 노드로 바꾸고 라우팅 규칙이 해당 도메인을 거부하지 않는지 확인하세요.

오류: 프록시 서버가 연결을 거부함

원인 및 해결:브라우저의 독립 프록시 설정이 여전히 이전 포트를 가리키거나 로컬 수신 설정이 변경되었을 수 있습니다. 시스템 프록시 사용으로 되돌리고 브라우저의 모든 프로세스를 종료한 뒤 다시 시도하세요.

터미널 점검: 환경 변수나 옵션으로 프록시를 명시적으로 지정

터미널의 curl, 패키지 관리자, 개발 도구는 데스크톱 시스템 프록시를 자동으로 읽지 않을 수 있습니다. 가장 확실한 테스트 방법은 단일 명령에 프록시를 명시하는 것입니다. 단일 명령이 성공한다면 v2rayN의 로컬 포트와 노드는 정상이며, 이후에는 각 도구에 환경 변수나 전용 프록시 옵션만 설정하면 됩니다.

HTTP 프록시와 SOCKS 프록시는 포트 이름만 보고 추측할 수 없습니다. HTTP 테스트에는 v2rayN에 표시된 HTTP 포트를, SOCKS 테스트에는 SOCKS 포트를 사용하세요. socks5h를 사용하면 도메인 확인을 프록시 측에서 처리하므로 로컬 DNS 확인 실패와 프록시 연결 실패를 구분하는 데 유용합니다.

curl.exe --proxy http://127.0.0.1:10809 https://v2raylink.com/
curl --proxy socks5h://127.0.0.1:10808 https://v2raylink.com/

# PowerShell 현재 세션
$env:HTTP_PROXY="http://127.0.0.1:10809"
$env:HTTPS_PROXY="http://127.0.0.1:10809"

# Linux 또는 macOS 현재 셸
export HTTP_PROXY="http://127.0.0.1:10809"
export HTTPS_PROXY="http://127.0.0.1:10809"
export ALL_PROXY="socks5h://127.0.0.1:10808"
테스트 결과 판단할 수 있는 내용 다음 단계
HTTP와 SOCKS 모두 성공 로컬 코어, 수신 포트, 원격 노드가 대체로 정상입니다 사용 중인 터미널 도구가 환경 변수를 읽는지 확인하세요
HTTP 실패, SOCKS 성공 HTTP 포트가 잘못 입력되었거나 해당 수신 기능이 활성화되지 않았습니다 설정으로 돌아가 HTTP 포트를 확인하세요
HTTP와 SOCKS 모두 연결 거부 코어가 수신 중이지 않거나, 포트가 변경되었거나, 프로세스가 종료되었습니다 코어 로그와 포트 사용 현황을 확인하세요
연결된 뒤 장시간 시간 초과 로컬 진입점은 연결되지만 원격 노드나 라우팅에 문제가 있을 수 있습니다 노드를 바꾸고 연결 로그를 확인하세요

오류:curl: (7) Failed to connect to 127.0.0.1 port 10809

원인 및 해결:해당 포트에서 사용할 수 있는 HTTP 수신기가 없습니다. v2rayN에서 실제 포트를 확인하고 코어가 실행된 뒤 올바른 포트로 다시 시도하세요.

오류:curl: (5) Could not resolve proxy

원인 및 해결:프록시 주소 형식이 잘못되었습니다. 불필요한 따옴표나 공백, 잘못 입력한 프로토콜 접두사가 흔한 원인입니다. http://127.0.0.1:포트 형식으로 다시 설정하세요.

오류:connection reset by peer

원인 및 해결:연결은 로컬 프록시에 도달했지만 원격 경로가 중단되었습니다. 노드를 바꾸고 구독의 서버 주소, 포트, 전송 매개변수가 모두 포함되어 있는지 확인하세요.

클라이언트 점검: 수신 설정, 코어, 포트 사용 현황 확인

브라우저와 명시적 프록시 명령이 모두 실패한다면 v2rayN으로 돌아가 로컬 서비스를 점검해야 합니다. 시스템 프록시는 트래픽을 로컬 포트로 보내기만 하며, 실제로 연결을 받는 것은 V2Ray 또는 Xray 코어입니다. 코어 시작 실패, 설정 생성 실패, 다른 프로세스의 포트 점유가 발생하면 시스템 프록시 스위치는 켜진 상태로 남아 있어도 모든 연결이 실패할 수 있습니다.

  1. 기본 설정 열기

    「설정」→「매개변수 설정」→「기본 설정」으로 이동해 로컬 수신 주소, HTTP 포트, SOCKS 포트를 기록하세요. 버전에 따라 항목 배치가 다를 수 있으므로 실제 화면에 표시된 값을 기준으로 합니다.

  2. 코어 유형 확인

    「설정」→「매개변수 설정」→「Core 유형」으로 이동해 현재 노드의 프로토콜과 선택한 코어가 호환되는지 확인하세요. VMess 및 VLESS 설정에서는 구독이 제공한 전송 매개변수도 유지해야 합니다.

  3. 실행 로그 확인

    코어를 다시 시작한 직후 로그를 확인하고 failed, error, bind, refused, invalid 등의 키워드를 중점적으로 검색하세요. 시스템 트레이 아이콘 상태만 확인해서는 안 됩니다.

  4. 수신 포트 변경

    로그에 포트가 사용 중이라고 표시되면 HTTP와 SOCKS 포트를 각각 사용되지 않는 값으로 변경하고 저장한 뒤 코어를 다시 시작하세요. 이후 시스템 프록시를 다시 설정합니다.

  5. 구독 설정 업데이트

    「구독 그룹」에서 전체 구독 업데이트를 실행하고 활성 서버를 다시 선택하세요. 하나의 노드만 실패한다면 클라이언트 설치보다 노드 설정 문제일 가능성을 먼저 확인하세요.

포트를 변경한 뒤에는 v2rayN의 수신 설정, 운영체제 프록시 설정, 터미널 환경 변수 세 곳을 모두 동기화해야 합니다. 한 곳만 바꾸면 “클라이언트는 실행 중으로 표시되지만 애플리케이션은 이전 포트에 연결하는” 불일치가 생깁니다. 기존 터미널 창에는 이전 환경 변수가 남아 있으므로 터미널을 다시 열거나 현재 세션에서 덮어써야 합니다.

오류:bind: Only one usage of each socket address is normally permitted

원인 및 해결:로컬 수신 포트를 다른 프로세스가 이미 사용 중입니다. 해당 프로세스를 종료하거나 v2rayN 포트를 변경한 뒤 시스템 프록시를 다시 설정하세요.

오류:failed to start core

원인 및 해결:코어 프로세스가 시작을 완료하지 못했습니다. 설정 오류나 파일 접근 실패가 원인일 수 있습니다. 같은 시점의 로그에서 위쪽으로 올라가 첫 번째 error를 찾고, 해당 항목을 수정한 뒤 다시 시작하세요.

오류:invalid config

원인 및 해결:생성된 노드 설정에 누락되었거나 호환되지 않는 필드가 있습니다. 구독을 업데이트하고 노드를 다시 가져오세요. VMess와 VLESS의 전송 매개변수를 수동으로 섞어 사용하지 마세요.

연결은 됐지만 통신되지 않을 때: 라우팅과 DNS 추가 점검

로컬 포트에 연결된다고 해서 대상 트래픽이 반드시 원격 프록시를 통과하는 것은 아닙니다. v2rayN의 라우팅 분할은 도메인, IP, 프로토콜 또는 규칙 세트에 따라 출구를 결정합니다. 대상 도메인이 직접 연결 규칙에 걸리면 외부 IP가 바뀌지 않고, 차단 규칙에 걸리면 브라우저에 연결 실패가 표시될 수 있습니다. 이때 시스템 프록시를 반복해서 전환해도 해결되지 않습니다.

현상 가능성이 높은 원인 검증 방법
명시적 프록시는 성공하지만 외부 IP가 바뀌지 않음 대상 도메인이 직접 연결 규칙에 걸림 잠시 글로벌 프록시 모드로 전환해 다시 테스트
도메인은 실패하지만 알고 있는 주소에 직접 접속하면 응답함 로컬 DNS 확인 이상 socks5h로 원격 DNS 확인 테스트
하나의 노드만 계속 시간 초과 노드 주소, 포트 또는 전송 매개변수 이상 같은 구독의 다른 노드로 전환해 비교
VMess는 사용 가능하지만 특정 VLESS 설정은 실패 해당 설정의 전송 또는 보안 매개변수가 불완전함 구독을 업데이트하고 로그의 핸드셰이크 오류를 비교

라우팅을 점검할 때는 먼저 짧은 비교 테스트를 진행하세요. 같은 노드를 유지한 채 규칙 분할과 글로벌 프록시로 동일한 대상에 각각 접속합니다. 글로벌 모드에서는 성공하지만 규칙 모드에서 실패한다면 해당 도메인에 최종 적용된 규칙과 출구를 확인하세요. 테스트가 끝나면 일상적인 분할 설정으로 되돌려 글로벌 모드를 영구적인 해결책으로 사용하지 않도록 합니다.

결론: 한 번에 변수 하나만 변경하세요

대상 주소와 노드를 고정한 뒤 애플리케이션 프록시 방식, 포트, 라우팅 모드를 순서대로 바꾸고 매번 한 가지만 수정하세요. 이렇게 해야 문제를 브라우저 적용, 터미널 설정, 로컬 수신 또는 원격 노드로 안정적으로 좁힐 수 있으며, 노드·DNS·규칙을 동시에 바꿔 원인을 놓치는 일을 피할 수 있습니다.

결과별 마무리: 5분 점검 목록

점검을 마친 뒤에는 “아이콘이 정상처럼 보인다”는 사실에 의존하지 마세요. 시스템 설정의 포트와 클라이언트가 일치하고, 명시적 프록시 명령이 성공하며, 프록시 확장 프로그램을 끈 브라우저에서 접속되고, 로그에 새로운 시작 오류가 없는지로 확인하세요. 다음 순서는 같은 문제가 다시 발생했을 때 빠르게 재점검하기에 적합합니다.

  1. v2rayN에서 활성 서버가 선택되어 있고 코어 로그에 시작 완료가 표시되는지 확인하세요.
  2. 실제 HTTP 및 SOCKS 포트를 기록하고 기억에 의존해 10808이나 10809를 사용하지 마세요.
  3. 시스템 프록시를 지운 뒤 다시 설정하고 주소가 127.0.0.1이며 포트가 일치하는지 확인하세요.
  4. 브라우저 프록시 확장 프로그램을 비활성화하고 브라우저를 완전히 종료한 뒤 다시 여세요.
  5. curl의 --proxy 옵션으로 HTTP와 SOCKS 진입점을 각각 테스트하세요.
  6. 명시적 프록시가 성공한 뒤 터미널 도구에 현재 세션 환경 변수를 설정하세요.
  7. 규칙 모드에서만 실패한다면 라우팅 적용 규칙과 DNS를 확인하고 로컬 포트를 계속 바꾸지 마세요.
  8. 단일 노드만 실패한다면 구독을 업데이트하고 다른 노드로 전환해 비교하세요.
브라우저는 정상인데 터미널은 왜 직접 연결되나요?

대부분의 터미널 프로그램은 데스크톱 시스템 프록시를 자동으로 읽지 않습니다. 단일 명령에 프록시 옵션을 추가하거나 현재 셸에서 HTTP_PROXY, HTTPS_PROXY, ALL_PROXY를 설정하세요. 어떤 변수를 사용할지는 도구가 지원하는 프록시 유형에 따라 다릅니다.

시스템 프록시 포트는 반드시 10809여야 하나요?

아닙니다. 10809는 흔한 예시일 뿐이며 포트는 변경할 수 있습니다. 시스템 프록시, v2rayN 수신 설정, 터미널 환경 변수는 모두 실제 HTTP 포트와 동일해야 합니다.

글로벌 프록시를 켠 뒤 복구됐다면 어디에 문제가 있었나요?

이는 보통 로컬 포트와 노드는 정상이고, 라우팅 분할에 문제가 있을 가능성이 높다는 뜻입니다. 대상 도메인에 적용된 규칙, 규칙 순서, 해당 출구를 확인한 뒤 일상적인 사용에 적합한 분할 모드로 되돌리세요.

클라이언트 다운로드 Windows、macOS、Android、Linux