첫 설정 · 네 단계

v2rayN 사용법:
구독 가져오기 및 연결 확인

구독 가져오기 → 프록시 모드 선택 → 연결 → 작동 확인 순서로 진행하세요. 클라이언트를 설치했고 사용할 수 있는 구독이 있다면 첫 설정에 약 10분이 걸립니다. 먼저 기본 연결을 확인한 뒤 분할 라우팅과 TUN을 설정하세요.

시작하기 전에 클라이언트가 정상적으로 실행되는지 확인하고, 신뢰할 수 있는 출처에서 받은 구독 주소나 단일 서버 공유 링크를 준비하세요. 클라이언트는 설정을 읽고 트래픽을 전달하는 프로그램이며, 설치 파일에 바로 사용할 수 있는 서버가 포함되어 있지는 않습니다. 구독 주소에는 접속 정보가 포함될 수 있으므로 전체 주소를 공개 댓글이나 스크린샷에 노출하거나 온라인 파싱 도구에 입력하지 마세요.

01 · 구독을 가져와 서버 목록 확인

먼저 받은 정보의 유형을 확인하세요. HTTPS로 시작하며 여러 서버 설정을 가져오는 주소는 일반적으로 구독 주소입니다. vmess://, vless://, trojan:// 또는 ss://로 시작하는 문자열은 보통 단일 서버 공유 링크입니다. 두 종류는 가져오는 메뉴가 다릅니다. 브라우저에서 열리는 주소라도 서비스 제공자의 로그인 페이지, 주문 페이지, 안내 문서 주소를 구독 입력란에 넣지 마세요.

v2rayN 데스크톱에서 구독 그룹 추가

메인 창을 열고 ‘구독 그룹’에서 ‘구독 그룹 설정’으로 이동한 뒤 새 그룹을 추가합니다. ‘일상 사용’처럼 알아보기 쉬운 이름을 메모에 입력하고 주소란에는 구독 주소 전체를 붙여 넣으세요. 앞뒤에 공백이나 줄 바꿈, 메신저가 덧붙인 문장 부호가 없는지 확인합니다. 나머지 옵션은 기본값으로 두고 저장한 다음 메인 화면으로 돌아오세요.

이어서 ‘구독 그룹’ 메뉴에서 구독 업데이트를 실행합니다. ‘프록시를 통해 업데이트’와 ‘프록시 없이 업데이트’ 옵션이 있고 아직 프록시 연결을 설정하지 않았다면, 먼저 프록시 없이 업데이트해 보세요. 작업이 끝날 때까지 기다린 다음 메인 창의 서버 목록을 확인합니다. 프로토콜, 주소, 메모 등이 표시되어야 구독 내용이 파싱된 것입니다. 그룹 이름만 저장한 상태로는 서버를 가져온 것이 아닙니다.

다른 구독 그룹이 이미 있다면 방금 추가한 그룹으로 전환해 이전 서버를 이번 업데이트 결과로 착각하지 않도록 하세요. 업데이트 중 오류가 발생하면 로그에서 구체적인 원인을 먼저 확인합니다. 연결 시간 초과, 인증 실패, 내용 파싱 실패는 서로 다른 문제입니다. 업데이트 버튼을 연속으로 누르거나 재시도할 목적으로 같은 그룹을 여러 개 추가하지 마세요. 나중에 어떤 설정을 사용 중인지 파악하기 어려워집니다.

v2rayNG Android에서 구독 추가

사이드 메뉴에서 ‘구독 그룹 설정’으로 이동하고 추가 버튼을 눌러 메모와 구독 주소를 입력한 뒤 저장합니다. 메인 화면으로 돌아가 메뉴에서 구독 업데이트를 실행하세요. 일부 버전에서는 먼저 해당 구독 그룹을 선택해야 합니다. 업데이트가 끝나면 목록에 서버 항목이 표시되어야 합니다. 빈 그룹만 보인다면 바로 연결 버튼을 누르지 말고 업데이트 결과부터 확인하세요.

단일 공유 링크를 받았다면 링크 전체를 복사한 뒤 클라이언트의 ‘클립보드에서 가져오기’ 기능을 사용하세요. v2rayN에서는 보통 서버 관련 메뉴에, v2rayNG에서는 메인 화면의 추가 메뉴에 해당 기능이 있습니다. 단일 링크를 가져와도 정기적으로 업데이트되는 구독으로 바뀌지는 않습니다. 이후 서버 설정이 변경되면 다시 가져오거나 제공처의 안내에 따라 수정해야 합니다.

업데이트에 실패했다면 주소가 아직 유효한지, 기기 시간이 정확한지, 제공처에서 특정 네트워크를 요구하는지 확인하세요. 업데이트에 프록시가 필요한 구독이라면 먼저 사용할 수 있는 다른 연결이 있어야 합니다. 아직 가져오지 않은 서버로 첫 업데이트를 수행할 수는 없습니다. 자세한 해결 방법은 구독 업데이트 문제를 참고하세요. 여기서는 전송 방식이나 인증 항목을 변경하지 마세요.

02 · 프록시 모드를 선택하고 단순한 경로부터 시작

‘프록시 모드’는 서로 다른 두 설정을 가리킬 때가 많습니다. 첫째는 시스템 프록시, Android VPN, 데스크톱 TUN처럼 앱 트래픽이 클라이언트로 들어오는 연결 방식입니다. 둘째는 들어온 트래픽을 프록시로 보내거나 직접 연결하거나 차단하는 라우팅 규칙입니다. 라우팅 규칙만 바꿔서는 시스템 프록시를 무시하는 앱이 자동으로 프록시를 사용하지 않습니다. 처음 설정할 때 두 항목을 나눠 확인하면 이후 문제를 훨씬 쉽게 해결할 수 있습니다.

v2rayN: 먼저 시스템 프록시 설정

데스크톱에서는 우선 TUN을 끈 상태로 두고 메인 창이나 트레이 메뉴에서 ‘시스템 프록시’를 찾아 ‘시스템 프록시 자동 설정’과 비슷한 옵션을 선택합니다. 데스크톱 환경의 프록시 주소를 로컬 수신 포트에 연결하는 것이 목적이며, 별도의 트래픽 가로채기를 시작하는 설정은 아닙니다. PAC 모드가 있다면 첫 확인 단계에서는 선택하지 마세요. 자동 설정 규칙이라는 추가 점검 요소를 피할 수 있습니다.

Linux 데스크톱 환경마다 시스템 프록시를 처리하는 방식이 조금씩 다릅니다. 클라이언트에서 설정 완료 메시지가 표시됐는데 시스템 설정에 변경 사항이 없다면 데스크톱 환경의 ‘네트워크 프록시’ 페이지를 확인하세요. 직접 입력해야 한다면 주소는 127.0.0.1로 설정하고 포트는 클라이언트의 설정에 표시된 실제 수신 포트를 사용합니다. 로컬 연결이 HTTP 또는 혼합 프록시를 지원하는 경우에만 해당 포트를 HTTP 및 HTTPS 프록시 입력란에 넣으세요. 포트 번호만 보고 프로토콜을 추측하지 마세요.

이어서 클라이언트의 라우팅 설정을 확인하고 LAN 및 사설 주소를 우회하는 규칙을 우선 선택하세요. 그러면 로컬 프린터나 라우터 관리 페이지에 직접 연결할 수 있습니다. 버전에 따라 ‘LAN 우회’, ‘사설 주소 우회’ 또는 두 기능을 묶은 이름을 사용할 수 있으니 규칙 설명을 먼저 읽으세요. 복잡한 규칙 모음을 가져오거나 DNS, 탐지, 전송 설정을 동시에 변경하지 마세요. 문제가 생겨도 어느 단계에서 변화가 발생했는지 파악할 수 있습니다.

v2rayNG: 기본 VPN 연결 방식 유지

Android에서는 처음 사용할 때 기본 VPN 연결 방식을 그대로 두면 됩니다. 라우팅은 클라이언트의 기본 규칙을 사용하고, 앱별 분할 설정은 일단 끄세요. 나중에 확인할 브라우저가 프록시 범위에 포함되는지도 살펴보세요. 앱별 설정에서 ‘선택한 앱만 프록시 사용’과 ‘선택한 앱 우회’는 서로 반대입니다. 첫 연결에서 방향을 잘못 선택하면 클라이언트는 실행 중인데 브라우저 요청이 로그에 남지 않을 수 있습니다.

이 단계에서는 모드만 선택하고 고급 설정은 변경하지 마세요. 시스템 VPN 권한 요청은 다음 단계에서 연결을 시작할 때 표시됩니다. 기기에서 VPN 인터페이스를 사용하는 다른 네트워크 도구가 실행 중이라면 v2rayNG를 테스트하기 전에 종료하세요. 일반적으로 같은 사용자 환경에서 이런 연결 여러 개가 동시에 트래픽을 처리할 수는 없습니다.

현재 설정 조합을 기억해 두세요. 데스크톱은 시스템 프록시와 기본 라우팅, Android는 기본 VPN 연결과 기본 라우팅입니다. 다음 단계에서는 연결을 확인하는 동안 서버만 변경하고 연결 방식은 그대로 유지하세요. 한 번에 하나의 설정만 바꿔야 개선이나 오류의 원인을 파악할 수 있습니다.

03 · 서버 선택 및 클라이언트 연결 시작

서버 목록으로 돌아가 설정이 완전하고 출처가 분명한 항목을 선택하세요. 서버 메모는 이름일 뿐 실제 작동 여부를 보장하지 않습니다. 목록의 Ping이나 TCP 테스트는 네트워크 경로 일부만 확인하는 경우가 많습니다. 테스트 결과가 있더라도 프로토콜 인증, TLS, 목적지 접속까지 모두 성공했다는 뜻은 아닙니다. 클라이언트에 ‘실제 연결 테스트’와 비슷한 기능이 있다면 후보 서버를 고를 때 활용하되, 마지막으로 실제 앱에서 연결도 확인하세요.

v2rayN: 활성 서버 설정 및 로그 확인

서버 항목을 마우스 오른쪽 버튼으로 클릭하고 ‘활성 서버로 설정’과 같은 메뉴를 선택하세요. 일부 버전에서는 더블 클릭으로 전환할 수도 있으니 화면 안내를 확인합니다. 활성 표시가 선택한 항목으로 이동했는지 확인하세요. v2rayN은 서버를 전환할 때 보통 설정을 생성하고 코어를 시작하거나 다시 불러오므로 별도의 ‘연결’ 버튼이 없을 수 있습니다. 창 아래쪽 로그에서 설정 파싱 실패, 코어 종료, 수신 포트 충돌 등이 없는지 확인하세요.

서버가 활성화됐는데도 앱에 접속할 수 없다면 시스템 프록시가 방금 선택한 상태로 유지되는지 확인하세요. 활성 서버, 코어 실행 상태, 시스템 프록시 상태는 각각 다른 정보이므로 하나로 다른 항목을 대신할 수 없습니다. 트레이 아이콘이나 서버 선택 표시는 참고용일 뿐, 프록시가 실제로 작동한다는 최종 증거가 아닙니다.

로그에 수신 포트 사용 중 오류가 표시되면 클라이언트를 중복 실행했는지, 다른 프록시 프로그램이 같은 포트를 사용 중인지 확인하세요. 정체를 알 수 없는 시스템 프로세스를 바로 종료하지 마세요. 중복 실행을 종료한 뒤 다시 시도하세요. 포트를 변경해야 한다면 시스템 프록시와 아래의 테스트 명령도 함께 수정해야 합니다. 인증 실패, 인증서 오류, 원격 서버의 연결 거부가 로그에 표시되면 로컬 포트를 반복해서 바꾸지 말고 서버 출처와 기기 시간을 확인하세요.

v2rayNG: 연결 버튼을 누르고 시스템 권한 승인

Android 서버 목록에서 대상 항목을 선택하고 선택 표시가 올바른지 확인한 뒤 메인 화면의 연결 버튼을 누릅니다. 처음 연결을 시작하면 시스템에 VPN 연결 요청이 표시됩니다. 요청을 보낸 앱이 v2rayNG인지 확인한 뒤 승인하세요. 권한을 승인하고 클라이언트로 돌아와 실행 상태와 로그를 확인합니다. 다른 VPN 연결이 대체된다는 안내가 나오면 현재 네트워크 도구의 용도를 확인한 뒤 계속할지 결정하세요.

연결 후에는 클라이언트를 실행 상태로 유지하고 백그라운드에서 종료하거나 추가 배터리 제한을 설정하지 마세요. 테스트할 때는 정상이지만 화면을 잠근 뒤 한동안 지나면 연결이 끊기는 경우, 백그라운드 제한을 확인하세요. 첫 설정 단계에서 모든 배터리 관리 옵션을 한꺼번에 끄지 마세요. 실제 연결 테스트가 필요하면 사용 중인 버전의 메뉴를 이용하세요. 테스트 결과는 같은 조건에서 후보 서버를 비교하는 용도이며 네트워크나 시간이 다른 결과와 직접 비교하기에는 적절하지 않습니다.

서버 하나의 테스트가 실패하면 같은 구독에 있는 다른 서버를 시도하고 나머지 설정은 그대로 유지하세요. 모든 서버에서 같은 오류가 발생한다면 네트워크, 시스템 시간, 구독 유효기간, 클라이언트 로그를 먼저 확인하세요. 모든 연결 문제를 라우팅 규칙 탓으로 돌리지 말고 용도를 모르는 상태에서 TLS나 전송 설정을 삭제하지 마세요.

시작 중 문제가 발생하면 자주 묻는 질문의 문제 해결 항목을 확인하세요. 문제를 문의할 때는 발생 시간, 클라이언트 이름, 구체적인 오류 문구를 기록하세요. 스크린샷을 공유하기 전에 구독 주소, 서버 인증 정보, 공유 링크를 가리세요.

04 · 프록시 작동 확인 후 설정 유지

두 단계로 확인하세요. 먼저 클라이언트와 서버 사이의 프록시 연결이 작동하는지 확인한 다음 브라우저 등 대상 앱이 실제로 해당 경로를 사용하는지 확인합니다. 웹페이지가 열리는 것만으로는 충분하지 않습니다. 직접 연결이나 캐시로 표시됐을 수도 있습니다. 새 요청, 라우팅 결과, 클라이언트 로그를 함께 확인하고 아이콘 하나나 속도 측정 결과 하나에 의존하지 마세요.

브라우저에서 새 요청 보내기

브라우저에서 새 탭을 열고 현재 라우팅 규칙에 따라 프록시를 사용해야 하는 HTTPS 페이지에 접속하세요. 필요하면 새로고침해 캐시된 페이지가 아닌지 확인합니다. 동시에 클라이언트 로그를 열어 해당 시각의 대상 도메인과 연결 기록을 찾으세요. 로그를 보면 요청이 코어에 들어왔는지, 프록시와 직접 연결 중 어느 출구 규칙이 적용됐는지 판단할 수 있습니다. 일부 버전은 기본 로그가 간략하므로 잠시 info 수준으로 올려 확인한 뒤 원래 설정으로 되돌리세요.

로그에 직접 연결로 표시되더라도 반드시 오류인 것은 아닙니다. 현재 규칙에서 예상된 결과일 수 있습니다. 프록시 출구를 확인하려면 일반 대상 트래픽을 프록시로 보내는 전역 프록시 라우팅을 잠시 선택하고 새 요청을 보내세요. 테스트가 끝나면 원래 규칙으로 되돌립니다. 이때 변경하는 것은 라우팅이며, 시스템 프록시를 껐다 켜는 것이 아닙니다. 두 설정을 각각 확인하세요. 일반적으로 직접 연결해야 하는 LAN 기기 페이지는 원격 프록시 확인에 사용하지 마세요.

Android에서도 브라우저 요청과 v2rayNG 로그를 함께 확인하세요. 클라이언트는 실행 중인데 브라우저 요청 기록이 전혀 없다면 해당 브라우저가 앱별 분할 설정에서 제외됐는지 확인합니다. 데스크톱에서는 브라우저에 별도 프록시가 설정됐거나 확장 프로그램이 시스템 설정을 덮어쓰는지 살펴보세요. 대상 앱이 올바른 연결 방식을 사용해야 다음 단계에서 서버를 조정할 수 있습니다.

터미널에서 HTTP 프록시 연결을 별도로 확인

데스크톱에서는 아래 명령으로 명시적 프록시 테스트를 할 수 있습니다. 실행 전에 클라이언트 설정에서 로컬 연결이 HTTP 또는 혼합 프록시를 지원하는지, 수신 주소가 로컬인지, 포트가 실제로 10808인지 확인하세요. 포트가 다르면 명령의 숫자를 바꾸면 됩니다. 명령은 예시 도메인에 접속하므로 사용 중인 라우팅 규칙에서 반드시 원격 프록시를 거친다는 뜻은 아닙니다. 로그를 함께 확인하세요.

curl -I --connect-timeout 10 --max-time 20 \
  -x http://127.0.0.1:10808 https://example.com

대상 사이트의 HTTP 응답 헤더가 표시되면 로컬 프록시 연결과 이번 요청 경로가 작동하는 것입니다. 응답 상태가 특정 숫자여야 하는 것은 아닙니다. 일부 HTTPS 프록시 출력에는 먼저 터널 연결 응답이 표시됩니다. 이 한 줄만 보고 대상 요청까지 완료됐다고 판단하지 말고 후속 응답과 curl 오류 여부를 확인하세요. 연결이 거부되면 로컬 포트와 코어 실행 상태를 확인하고, 시간 초과가 발생하면 클라이언트 로그를 바탕으로 원격 연결을 살펴보세요.

이 명령에는 명시적 -x 옵션이 사용됐으므로 테스트 성공은 지정한 프록시 경로가 작동한다는 뜻일 뿐, 시스템 프록시가 올바르게 설정됐다는 증거는 아닙니다. 반대로 브라우저는 작동하는데 터미널의 일반 명령은 안 될 수도 있습니다. 터미널 프로그램이 데스크톱 시스템 프록시를 따르지 않기 때문일 수 있습니다. 현재 터미널의 일반 HTTP 도구가 프록시를 사용하도록 하려면 포트를 확인한 뒤 환경 변수를 설정하세요.

export http_proxy=http://127.0.0.1:10808
export https_proxy=http://127.0.0.1:10808
curl -I --connect-timeout 10 --max-time 20 https://example.com

여기서 https_proxy 값은 여전히 http://로 시작합니다. 이는 클라이언트가 HTTP 프록시 연결을 제공한다는 뜻이지 대상 사이트의 프로토콜을 지정하는 것이 아닙니다. 환경 변수는 이를 지원하는 프로그램과 현재 셸에서 이후 실행되는 프로세스에만 적용되며 모든 프로그램의 트래픽을 처리하지는 않습니다. 테스트할 때 no_proxy 또는 프로그램 자체 프록시 설정 때문에 대상이 우회되지 않는지도 확인하세요.

테스트를 마치고 설정 복원 확인

작동을 확인한 뒤에는 검증된 활성 서버 하나와 기본 라우팅을 유지하고, 앱별 분할 설정, TUN, 사용자 지정 DNS를 하나씩 시험하세요. 설정을 하나 추가할 때마다 같은 방법으로 다시 확인합니다. 설정 항목과 전체 예시는 V2Ray 설정 파일 전체 안내에서 볼 수 있습니다. 처음 연결할 때 JSON을 일일이 편집할 필요는 없습니다.

프록시를 더 이상 사용하지 않을 때는 데스크톱 클라이언트에서 시스템 프록시를 해제하거나 이전 설정으로 복원한 뒤 프로그램을 종료하세요. 시스템 프록시를 직접 입력했다면 데스크톱 네트워크 설정에서도 원래 상태로 되돌려야 합니다. Android에서는 연결 중지 버튼을 누르고 VPN 연결이 끊겼는지 확인하세요. 현재 터미널에서 환경 변수를 설정했다면 아래 명령으로 현재 셸의 설정을 복원할 수 있습니다. 셸 시작 파일에 추가한 설정은 직접 삭제해야 합니다.

unset http_proxy https_proxy