· 안드로이드 · 약 9분

v2rayNG 설정 가이드: VPN 권한, 배터리 최적화 예외 및 앱별 프록시

v2rayNG는 Android VpnService로 트래픽을 처리합니다. VPN 권한 승인, 배터리 최적화로 인한 백그라운드 연결 끊김, 앱별 프록시 설정 방법을 알아봅니다.

이 글의 핵심

v2rayNG를 처음 사용하거나 화면을 잠근 뒤 연결이 끊기거나 특정 앱이 프록시를 사용하지 않는 경우에 적합합니다. VPN 권한, 백그라운드 실행, 트래픽 적용 범위를 구분한 뒤 배터리 설정과 앱별 규칙을 단계별로 확인하세요. 마지막으로 앱을 열어 둔 상태, 화면 잠금, 네트워크 전환 순서로 테스트해 문제 발생 지점을 찾습니다.

VPN 권한과 노드 연결은 별개입니다

v2rayNG는 Xray 코어로 프록시 연결을 처리하는 Android 클라이언트입니다. Android의 VpnService를 통해 가상 네트워크 인터페이스를 만들고, 설정 조건에 맞는 앱 트래픽을 로컬 처리 경로로 전달합니다. 시스템에 VPN 아이콘이 표시된다는 것은 VPN 인터페이스가 만들어졌다는 뜻일 뿐, 원격 노드가 연결 가능하거나 모든 앱이 프록시 출구를 이용한다는 의미는 아닙니다.

서비스를 처음 시작하면 Android에 VPN 연결 요청이 표시됩니다. 요청을 승인해야 클라이언트가 인터페이스를 만들 수 있습니다. 이 권한은 문자, 연락처, 기기 관리 권한과는 다릅니다. VMess, VLESS 등의 노드 설정이 올바른지, TLS 핸드셰이크가 성공하는지는 별도로 확인해야 합니다. 같은 구독을 데스크톱 v2rayN에서 사용할 수 있어도 휴대전화의 권한이나 배터리 제한 문제까지 없다고 볼 수는 없습니다.

1개
동일한 사용자 또는 프로필에서 동시에 활성화할 수 있는 VPN 서비스
API 21
Android 5.0부터 앱별 VPN 설정 인터페이스 제공
443
일반적인 HTTPS 대상 포트이며, 고정된 노드 포트가 아닙니다

위 포트는 테스트 대상을 설명하기 위한 예입니다. HTTPS 웹사이트에 접속하면 보통 대상 서버의 443 포트로 연결되지만, 노드 서버에는 구독에 지정된 포트를 사용해야 합니다. 웹페이지 접속에 실패했다고 노드 포트를 일괄적으로 443으로 바꾸지 마세요. Android 업무 프로필은 별도의 VPN 환경을 사용할 수 있으므로 테스트 대상 앱이 어느 프로필에 속하는지도 확인해야 합니다.

판단 기준: 인터페이스를 확인한 다음 연결 경로를 점검하세요

VPN이 연결되지 않았다면 권한과 서비스 실행부터 확인하세요. 인터페이스는 있지만 웹페이지가 열리지 않는다면 노드, DNS, 라우팅을 점검합니다. 두 문제를 혼동해 반복해서 앱을 재설치하지 마세요.

첫 연결: 권한 승인, 서비스 실행, 충돌 점검

아래에서는 일반적인 중국어 UI의 메뉴 이름을 기준으로 설명합니다. v2rayNG 버전이나 Android 제조사별 시스템에 따라 메뉴 이름과 위치가 다를 수 있습니다. 메뉴가 다르면 ‘VPN’, ‘알림’, ‘배터리’, ‘앱별 프록시’ 등의 기능 이름으로 찾아보세요. 데스크톱 클라이언트의 메뉴 경로를 그대로 적용하면 안 됩니다.

  1. 노드 확인

    v2rayNG 메인 화면에서 가져온 구성을 선택한 뒤 서버 주소, 포트, 전송 설정을 확인합니다. 구독 링크와 개별 노드 설정은 용도가 다르므로 구독 주소를 서버 주소 입력란에 넣지 마세요.

  2. 연결 승인

    메인 화면 오른쪽 아래의 시작 버튼을 누르고 Android VPN 연결 요청에서 ‘확인’을 선택합니다. 요청을 취소했다면 앱으로 돌아가 다시 시작하세요. 노드가 선택되어 있다는 이유만으로 서비스가 실행 중이라고 판단하지 마세요.

  3. 충돌 확인

    시스템 ‘설정’ → ‘네트워크 및 인터넷’ → ‘VPN’으로 이동해 현재 연결 상태를 확인합니다. VPN 인터페이스를 사용하는 방화벽, 필터링 도구, 다른 VPN 서비스는 서로 연결을 대체할 수 있습니다. 충돌하는 서비스를 먼저 중지한 뒤 테스트하세요.

  4. 알림 허용

    시스템 ‘설정’ → ‘앱’ → ‘v2rayNG’ → ‘알림’으로 이동해 필요한 알림을 허용합니다. Android 13 이상에서는 알림 권한과 VPN 권한이 별개입니다. 알림을 거부해도 VPN 권한을 거부한 것은 아닙니다.

  5. 접속 확인

    앱을 화면에 띄운 상태로 두고 접속 가능한 HTTPS 페이지를 연 다음 클라이언트 사이드 메뉴의 ‘로그’를 확인합니다. 지속적인 연결 오류가 있는지 먼저 살펴본 뒤 백그라운드 설정을 조정하세요.

화면을 잠그면 연결이 끊길 때: 배터리 최적화 예외 설정

앱을 열어 두면 작동하지만 화면을 잠근 뒤 실패하는 경우에 백그라운드 제한을 우선 확인하세요. Android 배터리 최적화, 제조사별 백그라운드 관리, 네트워크 전환은 장시간 연결에 영향을 줄 수 있습니다. 배터리 제한을 해제하면 프로세스가 제한될 가능성을 줄일 수 있지만, 노드 연결 불가, 서버의 유휴 시간 제한, 모바일 신호 끊김까지 해결되지는 않습니다.

처음부터 기기 전체의 배터리 절약 기능을 모두 끌 필요는 없습니다. 먼저 v2rayNG의 앱별 설정만 조정하고 변경 전후의 동작을 기록하세요. 백그라운드에서 계속 실행하면 배터리가 더 소모될 수 있으며, 사용량은 트래픽, 네트워크 신호, 연결 빈도에 따라 달라집니다. 모든 휴대전화에 적용되는 고정된 소비율은 없습니다.

최근 앱에서 밀어 닫으면 연결이 끊기는데 정상인가요?

최근 앱을 정리할 때의 동작은 제조사마다 다릅니다. 서비스를 다시 시작한 뒤 최근 앱을 직접 닫지 말고 홈 버튼으로 홈 화면에 돌아가는 것만 테스트하세요. 이 상태에서는 화면 잠금 후에도 정상이라면 제조사의 백그라운드 정리 및 앱 고정 설정을 확인합니다.

배터리 설정을 ‘제한 없음’으로 바꿨는데도 왜 끊기나요?

먼저 연결이 끊겼을 때 VPN 인터페이스가 여전히 있는지 확인하세요. 인터페이스가 유지되고 클라이언트도 종료되지 않았다면 네트워크 전환 후 재연결, 노드 접속 가능성, 로그를 우선 점검합니다. 배터리 설정을 계속 추가로 변경하지 마세요.

알림이 사라졌다면 프로세스가 종료된 건가요?

알림만으로 판단할 수 없습니다. 시스템 앱 알림 권한과 VPN 설정의 연결 상태를 확인한 다음 클라이언트로 돌아가 서비스 상태를 살펴보세요. Android 13 이상에서는 알림 권한을 거부해도 포그라운드 서비스가 반드시 중지되는 것은 아닙니다.

기기를 켠 뒤 자동으로 연결되나요?

배터리 최적화 예외만으로는 자동 연결되지 않습니다. 재부팅 후 클라이언트와 시스템 VPN 상태를 직접 확인하세요. 클라이언트의 시작 관련 옵션이나 시스템의 항상 켜짐 기능을 사용한다면 각각 예상대로 작동하는지 따로 확인해야 합니다.

앱별 프록시: 선택한 앱을 포함할지 제외할지

v2rayNG 사이드 메뉴에서 ‘설정’ → ‘앱별 프록시’로 이동해 앱별 기능을 켠 뒤 ‘우회 모드’를 확인합니다. 일반적으로 우회 모드를 끄면 선택한 앱이 VPN에 포함되고, 켜면 선택한 앱이 제외됩니다. 현재 버전의 문구가 다르다면 화면에 표시된 모드 설명을 따르세요.

이 설정은 어떤 앱이 VPN 인터페이스에 들어갈지를 결정하며, 특정 도메인을 원격 프록시로 보내도록 지정하는 것은 아닙니다. 앱이 인터페이스에 포함된 뒤에도 Xray 라우팅 규칙에 따라 일부 연결은 직접 연결되거나 차단될 수 있습니다. 따라서 ‘브라우저를 선택했다’는 것과 ‘브라우저의 모든 요청이 원격 출구를 사용한다’는 것은 같은 의미가 아닙니다.

선택한 앱만 VPN에 포함

권장

앱별 프록시를 켜고 우회 모드는 끈 다음, 테스트할 브라우저 하나만 선택하세요. 트래픽 범위가 작아 앱 선택, 노드 연결, 라우팅 문제를 구분하기 쉽습니다. 처음 문제를 점검할 때 권장하는 방법입니다.

적합한 경우: 첫 설정, 일부 앱만 프록시 사용, 테스트 기준을 마련할 때

선택한 앱 제외

앱별 프록시를 켜고 우회 모드를 활성화한 다음 제외할 앱을 선택합니다. 제외되지 않은 앱은 대체로 VPN에 포함되며, 출구는 라우팅 규칙에 따라 결정됩니다. VPN을 사용하지 않는 연결을 시스템에서 차단하면 제외된 앱은 인터넷에 연결되지 않을 수 있습니다.

적합한 경우: 대부분의 앱은 VPN에 포함하고 일부 앱은 로컬 네트워크를 직접 사용해야 할 때

앱별 제한 끄기

앱별 기능을 끄면 VPN 설정에 따라 조건에 맞는 트래픽을 처리하고, 라우팅 규칙으로 트래픽을 나눕니다. 폭넓게 트래픽을 처리한다고 해서 모든 대상이 프록시를 이용하거나 업무 프로필의 앱까지 함께 적용되는 것은 아닙니다.

적합한 경우: 앱별 구분이 필요 없고 도메인 및 주소 규칙으로 주로 트래픽을 나눌 때

앱 목록을 저장한 뒤 v2rayNG 서비스를 중지했다가 다시 시작해 새 목록으로 VPN 인터페이스를 생성합니다. 이전 연결이나 캐시가 판단을 방해하지 않도록 대상 앱도 종료했다가 다시 여세요. 새로 설치한 앱도 현재 모드에 맞게 확인해야 합니다. 선택한 앱만 포함하는 모드에서는 보통 직접 추가해야 하고, 제외 모드에서는 기본적으로 VPN 적용 범위에 들어갈 수 있습니다.

앱별 규칙, DNS, 라우팅 점검 순서

특정 앱만 작동하지 않는다면 먼저 VPN 적용 범위에 포함됐는지 확인한 다음 라우팅과 DNS를 점검하세요. Android 비공개 DNS, 앱 자체의 암호화 DNS, 클라이언트의 DNS 설정은 이름 확인 경로에 영향을 줄 수 있습니다. VPN을 켰다는 이유만으로 모든 DNS 조회가 특정 서버를 이용한다고 단정할 수는 없습니다.

증상 먼저 확인할 항목 다음 단계
브라우저는 되지만 대상 앱은 안 됨 앱 목록, 우회 모드, 앱 프로필 대상 앱이 의도한 대로 VPN에 포함됐는지 확인한 뒤 서비스와 대상 앱을 다시 시작해 테스트합니다.
VPN 적용 대상 앱이 모두 연결되지 않음 노드, 네트워크, 코어 로그 앱을 열어 둔 상태에서 테스트하고 연결 시간 초과, 이름 확인 실패, TLS 오류를 확인합니다. 앱 목록부터 바꾸지 마세요.
제외한 앱의 네트워크가 오히려 끊김 VPN을 사용하지 않는 연결 차단 설정 시스템 VPN 설정을 확인하고 이 보안 설정이 기존 네트워크 사용 방식에 맞는지 점검합니다.
일부 도메인만 실패하고 나머지는 정상 DNS 및 도메인 라우팅 규칙 해당 시간대의 로그를 살펴보고 DNS 결과와 적용된 규칙을 하나씩 확인합니다.

비공개 DNS를 점검하려면 시스템 ‘설정’ → ‘네트워크 및 인터넷’ → ‘비공개 DNS’에서 기존 설정을 기록한 뒤 잠시 ‘자동’으로 전환해 비교할 수 있습니다. 시스템에 따라 메뉴 이름이나 위치는 다를 수 있습니다. 이는 원인을 좁히기 위한 테스트일 뿐 암호화된 DNS를 계속 끄라는 뜻은 아닙니다. 테스트가 끝나면 네트워크 요구사항에 맞게 설정을 복원하고 클라이언트 DNS 설정도 확인하세요.

설정 원칙: 한 번에 변수 하나만 바꾸기

노드와 네트워크를 그대로 둔 상태에서 앱 적용 범위만 바꾸세요. 범위가 올바른지 확인한 뒤 DNS 또는 라우팅을 별도로 조정합니다. 한꺼번에 바꾸면 연결이 복구되더라도 어떤 설정이 효과가 있었는지 알 수 없습니다.

세 단계 테스트로 백그라운드 안정성 확인

다음은 재확인 절차이며 특정 휴대전화에서 측정한 결과가 아닙니다. 테스트 중에는 같은 노드와 대상 페이지를 사용하고 시작 시간, 네트워크 종류, 서비스 상태를 기록하세요. 한 번 측정한 지연 시간만으로 지속적인 접속을 판단하지 마세요. 연결에 성공했더라도 화면을 잠근 뒤 계속 사용할 수 있다는 뜻은 아닙니다.

  1. 화면을 켠 상태로 2분: Wi-Fi에 연결한 뒤 v2rayNG를 시작하고 선택한 브라우저에서 대상 페이지를 두 번 엽니다. 이 단계에서 실패하면 먼저 노드나 규칙을 수정하고 백그라운드 테스트는 진행하지 마세요.
  2. 화면 잠금 10분: 홈 화면으로 돌아간 뒤 앱을 정리하지 말고 화면을 잠급니다. 잠금을 해제한 다음 VPN 상태를 먼저 확인하고 페이지를 새로고침합니다. 서비스가 중지됐는지, 첫 요청만 느린지, 계속 시간 초과가 발생하는지 기록하세요.
  3. 네트워크 전환 후 재확인: Wi-Fi에서 모바일 네트워크로 전환하고 시스템 연결이 완료될 때까지 기다린 다음 같은 페이지를 엽니다. 전환 후에만 실패한다면 배터리 예외가 효과가 없다고 단정하지 말고 먼저 서비스를 다시 시작해 재연결되는지 확인하세요.

로그의 timeout은 어떤 작업이 시간 초과됐다는 뜻일 뿐이므로 대상 주소와 시간을 함께 확인해야 합니다. failed to lookup은 이름 확인 단계의 실패에 가깝고, connection refused는 보통 대상이나 중간 장비가 연결을 명시적으로 거부했음을 뜻합니다. 오류 한 줄만으로 Android 백그라운드 정책이 원인이라고 단정할 수 없으며, 노드 프로토콜 탓으로 바로 돌릴 수도 없습니다.

최종적으로 세 가지를 확인해야 합니다. 앱을 열어 둔 상태에서 연결이 정상인지, 화면을 잠근 뒤에도 서비스와 접속이 복구되는지, 지정한 앱이 의도한 대로 VPN에 포함되는지입니다. 하나라도 충족되지 않으면 해당 단계에 집중해 점검하세요. 코어 설정, 노드, 배터리 설정을 동시에 바꾸는 것보다 기존의 유효한 설정을 유지하기 쉽습니다.

v2rayN 다운로드