Android VPN 프로필: 편집하기 전에 소유자를 찾으세요
시스템의 VPN 행은 엔드포인트, 경로, 키를 소유한 앱을 숨깁니다. 소유자를 확인한 다음 요청·수신·적용 상태를 비교하세요.
Android의 VPN 화면에는 이름, 키 아이콘, 그리고 어쩌면 항상 켜기 스위치가 있는 행 하나가 표시됩니다. 엔드포인트, 경로 정책, DNS 서버, 연결을 성립시키는 자격 증명은 거의 표시되지 않습니다. 앱 기반 터널에서는 그것들이 앱에 속하기 때문입니다. 실무적 결론은 철학적 질문이 아니라 런북 질문입니다. 다운로드한 파일을 편집하거나 중앙 프로필 저장소를 찾기 전에, 바꾸려는 설정을 어느 구성 요소가 소유하는지 먼저 확인하세요.
먼저 연결 유형을 식별하세요
같은 설정 화면에도 적어도 세 가지 구성이 있습니다. 앱은 VpnService를 사용해 가상 인터페이스를 만들고 프로토콜과 비공개 구성을 소유할 수 있으며, 원격 출구가 없는 로컬 필터링 앱도 여기에 속합니다. Android는 Ikev2VpnProfile을 통해 플랫폼 IKEv2 프로필을 제공할 수도 있는데, 이는 API 30부터 사용할 수 있고 플랫폼이 프로필의 더 많은 부분을 보유합니다. 또한 공급자 앱은 자체 서버 목록을 제시하고 설정을 내부에서 조립할 수 있습니다.
adb shell dumpsys connectivity | grep -i -A12 "VPN"
adb shell cmd connectivity list-owners 2>/dev/null || true
첫 번째 명령은 활성 VPN 네트워크와 그 링크 속성, 즉 적용 상태를 보여 줍니다. 행에 아는 패키지 이름이 있으면 시스템 화면이 아니라 그 앱 자체의 프로필 보기에서 시작하세요.
소유자와 프로필 범위를 기록하세요
무엇이든 바꾸기 전에 네 가지 사실을 적으세요. 소유 패키지, 연결이 개인 프로필과 업무 프로필 중 어디에 있는지, 앱이 표시하는 프로필 또는 연결 이름, 그리고 누가 관리하는지입니다. 기기 소유자는 개인 프로필 사용자가 편집할 수 없는 업무 프로필 VPN을 제공할 수 있고, 같은 앱을 두 번 설치하면 독립된 소유자 둘이 생깁니다.
이 단계는 가장 흔한 시간 낭비, 즉 연결된 프로필이 아닌 다른 프로필을 편집하는 일을 막습니다. 앱은 여러 프로필을 유지하는 경우가 많고, 활성 프로필은 앱의 속성이지 Android 행의 속성이 아닙니다.
요청·수신·적용 상태를 비교하세요
이들은 서로 다른 세 단계이며, 그 사이의 불일치가 어느 구성 요소를 고쳐야 하는지 알려 줍니다.
| Stage | Where to look | What it proves |
|---|---|---|
| Requested | The app's profile editor or imported file | What the owner intends to use |
| Received | Sanitized app log of server-supplied options | What the peer actually pushed |
| Applied | Link properties and routes after connect | What the device is really using |
적용 단계는 누군가의 로그를 믿지 않고 관찰할 수 있는 유일한 단계입니다. 활성 링크 속성의 DNS 서버와 경로를 프로필이 주장하는 값과 비교하세요. 다르다면 서버가 무엇인가를 밀어 넣었거나 앱이 예상치 못한 정책을 적용한 것입니다.
adb shell ip addr show tun0
adb shell ip route show table all | head -40
인터페이스 이름은 앱마다 다르므로 먼저 인터페이스를 나열하고 터널이 연결될 때 나타난 것을 읽으세요. 앱 편집기에는 있지만 여기에는 없는 경로는 적용된 적이 없고, 여기에는 있지만 편집기에 없는 경로는 다른 곳에서 온 것입니다.
소유자가 실제로 읽는 산출물을 편집하세요
가져온 OpenVPN 프로필의 경우 앱은 보통 자체 사본을 유지합니다. 나중에 원래 다운로드한 파일을 편집해도 다음 연결은 바뀌지 않습니다. 앱의 문서화된 편집기를 사용하거나 다시 가져와서 지금 어느 프로필이 활성인지 확인하세요. 파일을 바꾸는 것과 구성을 바꾸는 것의 차이입니다.
공급자 앱은 사용자가 편집할 수 있는 파일을 쓰는 대신 서버 목록에서 설정을 조립하는 경우가 많습니다. 내보내기 버튼이 없다고 해서 VPN이 가짜라는 증거는 아니며, 내보낸 파일에는 다른 기기에 필요한 기기 결합 키나 등록 자료가 빠질 수 있습니다. 내보내기와 가져오기를 각자의 전제 조건을 가진 별개 작업으로 다루세요.
비밀을 노출하지 않고 지원 노트를 작성하세요
유용한 노트는 정확한 앱과 프로필, 잘못 보이는 설정, 그리고 각 단계의 증거를 적습니다. 예를 들어, 이 프로필은 서버에서 사설 DNS 주소를 받지만 목적한 업무 앱이 자기 서비스를 확인하지 못하고, 적용된 링크 속성은 그 리졸버를 보여 주는 반면 프로필 편집기는 다른 것을 보여 줍니다.
자격 증명은 노트에 넣지 마세요. 소유자를 식별하기 위해 기기를 root로 앱의 비공개 저장소를 뒤질 필요는 없고, 추측한 데이터 디렉터리 경로는 지원되는 인터페이스가 아닙니다. 답에 앱만 볼 수 있는 바이트가 필요하면 직접 만들지 말고 소유자에게 진단 내보내기를 요청하세요.
작업이 끝나면 고리를 닫으세요. 활성 프로필 이름을 확인하고, 적용 상태를 다시 읽고, 한 번 연결을 끊어 변경이 재연결 후에도 남는지 검증하세요. 편집기에만 존재하는 설정은 배포되지 않은 것입니다.