연결 문제 해결 · Clash 기술 블로그

Clash Verge Rev의 DNS 덮어쓰기가 재시작 후 자동으로 꺼지나요?

같은 구독의 DNS 설정이 바뀌지 않았는데 확인 후 켠 덮어쓰기가 재시작하면 꺼지나요? 보호 대상 필드를 확인하고 Clash Verge Rev v2.5.7로 업데이트한 뒤 실행 설정에서 적용 여부를 검증하고 복구 방법을 준비하세요.

  • Clash Verge Rev
  • DNS 덮어쓰기
  • 구독 설정
  • v2.5.7
이 글의 목차

스위치가 다시 꺼지는 것은 구독 내용 변경에 따른 보호일 수도 있고 확인한 선택이 저장되지 않은 것일 수도 있습니다. 같은 구독을 유지하고 관련 필드를 저장한 뒤 스위치 상태와 실제 해석 결과를 구분하세요. 항상 켜 두려고 하면 출처가 바뀌어 다시 확인해야 하는 상황을 놓칠 수 있습니다.

확인한 DNS 덮어쓰기가 재시작 후에도 꺼지는 이유는 무엇일까요?

“DNS 덮어쓰기”는 Clash Verge Rev 설정 화면의 DNS 값을 코어 설정에 기록합니다. 코어는 실제 연결을 처리하는 프로그램이며 dns.enable은 이름 조회 기능을 켤지 결정하므로 덮어쓰기 스위치와 다릅니다. 구독에 보호되는 조회 설정이 있으면 로컬 값으로 덮어써 노드나 웹사이트가 연결되지 않는 일을 막기 위해 앱이 확인을 요구합니다.

같은 구독을 유지하고 보호 대상 DNS 값과 재시작 전후의 덮어쓰기 상태를 보관하세요. 값이 그대로이고 활성화를 확인했는데도 재시작 후 꺼지는 경우가 이번 수정 대상입니다. 구독 업데이트로 관련 필드가 바뀌거나 확인하지 않은 다른 구독으로 전환했다면 다시 확인을 요구하는 것은 정상적인 보호 동작입니다.

공식 issue #7996에는 macOS v2.5.4의 사례가, #8024에는 Windows v2.5.5에서 재시작할 때마다 다시 확인해야 하는 사례가 기록되어 있습니다. Clash Verge Rev v2.5.7 Release는 이 문제의 수정을 명시합니다. 이 보고만으로 모든 운영체제나 모든 이전 버전이 영향을 받는다고 단정할 수는 없습니다.

TUN을 켠 뒤 도메인을 해석할 수 없고 실행 구성에 불완전한 dns 부분만 남아 있다면 이 사이트의 macOS TUN DNS 잔여 구성 문제 해결 글을 읽으세요. 이는 issue #8122의 다른 구성 생성 문제이므로 v2.5.7의 이번 수정만으로 결론을 내려서는 안 됩니다.

재시작 오류와 구독 업데이트에 따른 정상적인 보호를 어떻게 구별하나요?

먼저 설정 화면에서 Clash Verge Rev 버전, 현재 선택한 구독 이름, DNS 덮어쓰기 상태를 기록하세요. 이미 인터넷이 끊겼다면 TUN을 끄고 일반 네트워크 또는 이전에 작동하던 시스템 프록시를 복구하세요. 오프라인 상태에서 DNS를 반복해서 바꾸지 마세요.

설정을 변경하기 전에 현재 구독과 직접 작성한 확장 설정, 클라이언트 설정을 백업하고 덮어쓰기 화면에서 유지하려는 DNS 값을 적어 두세요. 구독에는 노드 비밀번호나 구독 토큰이 들어 있을 수 있으므로 백업은 로컬에만 보관하고 공개 신고 전에는 민감 정보를 가리세요.

현재 구독 원문의 dns를 확인하세요. v2.5.7 태그의 소스 코드는 비어 있지 않은 proxy-server-nameserver, proxy-server-nameserver-policy, nameserver-policy만 확인이 필요한 보호 대상으로 취급합니다.

nameserver만 있거나 빈 목록, 빈 맵, 빈 문자열만 있으면 이 보호 대상 확인은 작동하지 않습니다. '구독에 dns 필드가 하나라도 있다'를 발동 조건으로 해석하면 안 됩니다.

재시작 전후 이 세 필드의 실제 값과 구독이 같은지 비교하세요. 백그라운드에서 구독이 자동 업데이트됐거나 다른 구독으로 바뀌었거나 보호 대상 값이 달라졌다면 새 내용을 기준으로 재확인 필요 여부를 판단하세요. 관련 없는 다른 필드나 맵 키의 순서만 바뀌었다면 같은 구독의 확인이 취소되어서는 안 됩니다.

이 절은 현재 버전의 동작을 기록하기 위한 것입니다. 로컬 DNS로 구독의 이름 해석 설정을 덮어써야 할 때만 스위치를 켜고 경고를 읽으세요. 같은 구독을 갱신하지 않은 상태에서 확인 결과, 스위치 상태와 실행 설정을 저장해 업그레이드 후 비교하세요.

구독과 항목 비교 결과

관찰 결과다음 단계
같은 구독에서 보호 대상 필드가 그대로인데 확인한 덮어쓰기가 재시작 후 꺼짐이 글의 수정 대상에 해당합니다. 버전을 확인하고 v2.5.7로 업데이트하세요.
구독 업데이트로 보호 대상 필드가 바뀌었거나 다른 구독으로 처음 전환함다시 확인해야 합니다. 새 내용을 비교한 뒤 덮어쓸지 결정하세요.
구독에 nameserver만 있고 비어 있지 않은 보호 대상 세 필드가 없음이 보호 기능의 발동 조건이 아닙니다. 설정 저장, 확장 설정, 로그를 따로 확인하세요.
덮어쓰기는 켜져 있지만 TUN을 켠 뒤에도 도메인 이름을 조회할 수 없음실행 설정과 상위 DNS 서버를 확인하세요. 스위치 저장 문제를 TUN 장애의 원인으로 단정하지 마세요.

v2.5.7로 수정하면서 구독 DNS 보호를 유지하려면?

Clash Verge Rev 프로젝트의 공식 Release에서 v2.5.7을 확인하고 기기에 맞는 정상적인 업데이트 방법으로 업그레이드하세요. 확인되지 않은 미러에서 다운로드하거나 앱 데이터 디렉터리를 비우거나 생성된 실행 설정을 직접 고치지 마세요. 업그레이드 전 구독과 확장 설정의 백업을 보관해 실제 적용 DNS를 비교하세요.

업그레이드 후에도 원래의 같은 구독을 사용하고 보호 대상 DNS 필드 세 개가 바뀌지 않았는지 확인하세요. 로컬 덮어쓰기가 꼭 필요하다면 켜고 위험을 한 번 확인한 다음, 다음 절의 재시작 검증 절차를 따르세요.

v2.5.7 태그의 소스 코드는 구독별 확인 상태를 저장합니다. 테스트에는 같은 구독과 같은 보호 대상 원본을 재시작 후에도 켜진 상태로 유지하고, 원본이 바뀌면 다시 끄는 동작이 포함됩니다. 수정 목표는 유효한 확인을 기억하는 것이며 구독 DNS 보호를 없애는 것이 아닙니다. 확인하지 않은 다른 구독으로 전환하면 그 구독의 덮어쓰기가 꺼질 수 있고, 변경되지 않은 원래 구독으로 돌아오면 기존 확인은 유효해야 합니다.

공식 확장 설정 문서에 따르면 덮어쓰기가 켜져 있을 때 덮어쓰기 화면에 값을 입력한 dns 필드와 hosts가 구독의 해당 필드를 대체합니다. 꺼져 있을 때는 이 스위치 때문에 앱이 구독 dns를 변경하지 않습니다. 이후 전역 확장 설정, 구독 확장 설정, 스크립트가 결과를 다시 바꿀 수 있습니다. 스위치가 유지되는데 이름 조회 결과가 예상과 다르다면 계속 스위치를 누르지 말고 실행 설정과 확장 설정의 적용 순서를 확인하세요.

같은 구독으로 앱을 두 번 다시 시작한 뒤에도 DNS 덮어쓰기가 켜져 있는지 확인하기

공식 v2.5.7을 사용 중이고 현재 구독과 보호 대상 DNS 필드가 테스트 전과 같은지 먼저 확인하세요. 한 번 켜서 확인한 뒤 앱을 완전히 종료하고 두 번 다시 실행해도 이 구독의 DNS 덮어쓰기가 켜져 있어야 합니다.

실행 중인 구성의 dns에서 입력한 덮어쓰기 값이 반영됐는지 확인한 뒤, 같은 노드로 실제 HTTPS 사이트를 여세요. Windows에서 TUN을 켜기 전에는 실제 서비스 구성 요소에 보안 수정이 포함됐는지 확인해야 합니다. 확인되지 않은 기존 서비스는 비활성 상태로 두세요.

TUN이 필요하면 먼저 시스템 프록시나 일반 네트워크에서 접속되는지 확인하세요. 필요한 권한과 서비스 조건을 충족한 뒤 잠시 TUN을 켜서 도메인 해석, 전체 페이지 로딩, 연결 로그를 확인하세요.

두 번째 구독이 있다면 전환했을 때 그 구독의 덮어쓰기 상태를 확인한 뒤 원래 구독으로 돌아오세요. 다른 구독에서 아직 확인하지 않아 자동으로 꺼지는 현상을 원래 구독의 설정 손실로 오해하지 마세요. 구독의 보호 대상 DNS 내용이 실제로 업데이트되면 클라이언트가 다시 확인을 요구해야 하며 '항상 켜짐'을 위해 보호 절차를 우회하면 안 됩니다.

덮어쓰기가 사라지거나 연결이 안 된다면 원래 설정을 복원하고 근거 보관하기

먼저 TUN과 로컬 DNS 덮어쓰기를 끄고 앱이 공식 문서에 따라 현재 구독에 포함된 DNS로 실행 구성을 생성하게 하세요. 일반 네트워크 또는 이전에 작동을 확인한 시스템 프록시가 복구되었는지 확인하세요. 확장 설정이나 구독도 변경했다면 미리 만든 백업으로 해당 변경을 되돌린 뒤 재시작하고 실행 구성을 확인하세요. 덮어쓰기를 끄는 것은 로컬 덮어쓰기만 취소하는 것이며 코어 DNS를 끄거나 원래 구독이 올바르다고 보장하는 것은 아닙니다.

스위치를 강제로 유지하려고 verge.yaml의 확인 값을 직접 고치거나 출처가 불분명한 DNS를 붙여 넣거나 Profile을 비우거나 앱 데이터 디렉터리 전체를 삭제하지 마세요. v2.5.7에서도 같은 구독의 보호 대상 필드 세 개가 전혀 바뀌지 않았는데 스위치가 잘못 꺼진다면 운영체제와 클라이언트 버전, 구독 자동 업데이트 여부, 재시작 전후 스위치 상태, 민감 정보를 가린 관련 필드, 실행 설정의 차이와 로그를 프로젝트 issue에 제공하세요.

스위치는 켜진 상태인데 TUN을 켜면 인터넷이 끊긴다면 DNS 설정 적용 순서, 상위 서버의 이름 조회, 노드와 인터페이스를 별도로 확인하세요. 이를 이번 스위치 저장 문제와 하나로 묶지 마세요. 이 사이트에는 macOS TUN의 DNS 잔여 설정을 따로 다룬 글이 있으며, 증거가 일치할 때 해당 수정과 복구 절차를 적용할 수 있습니다.

참고 자료