먼저 UWP 루프백 제한 문제인지 확인하기
Windows에서 “브라우저는 Clash Verge를 통해 연결되지만 Microsoft Store, Xbox, 사진, 메일 또는 다른 스토어 앱은 인터넷에 연결되지 않는” 경우, 흔한 원인 중 하나는 AppContainer의 루프백 액세스 제한입니다. 여기서 “루프백”은 앱이 127.0.0.1, localhost 또는 IPv6 루프백 주소처럼 로컬 주소에 액세스하는 것을 뜻합니다. Clash Verge에서 시스템 프록시를 활성화하면 일반적으로 Windows 프록시 서버가 로컬 리스닝 포트를 가리키도록 설정됩니다. 앱은 먼저 이 로컬 포트에 연결한 뒤 mihomo 코어가 규칙에 따라 트래픽을 전달합니다.
기존 데스크톱 프로그램은 대개 로컬 프록시 포트에 바로 액세스할 수 있지만, AppContainer 격리 환경에서 실행되는 패키지 앱에는 추가 제한이 적용될 수 있습니다. 대상 앱에 루프백 예외가 없으면 Clash의 로컬 HTTP, SOCKS 또는 Mixed 리스닝 포트에 연결하지 못할 수 있습니다. 이때 모든 프로그램의 인터넷이 동시에 끊기는 것이 아니라 특정 스토어 앱의 로딩 실패, 빈 로그인 화면, 계속되는 새로고침 또는 네트워크를 사용할 수 없다는 메시지로 나타납니다.
다만 “스토어 앱이 인터넷에 연결되지 않는다”는 사실만으로 루프백 제한이라고 단정할 수는 없습니다. 확인하기 전에 다음 증상이 함께 나타나는지 살펴보세요.
- Clash Verge에 사용할 수 있는 설정이 가져와져 있고, 현재 설정과 정책 그룹이 활성화되어 있습니다.
- Edge, Firefox 또는 다른 데스크톱 프로그램은 동일한 시스템 프록시를 통해 대상 웹사이트에 정상적으로 접속됩니다.
- 영향받은 앱은 시스템 프록시를 끄면 직접 연결되거나, 시스템 프록시를 켜고 끄는 동작에 따라 오류 상태가 달라집니다.
- 영향받은 앱을 열어도 Clash Verge 연결 기록에 해당 요청이 나타나지 않습니다. 이는 트래픽이 로컬 프록시 포트에 도달하지 않았을 가능성을 의미합니다.
- 문제가 모든 프로그램과 도메인에서 동시에 발생하는 것이 아니라 하나 또는 소수의 패키지 앱에 집중됩니다.
시스템 프록시, AppContainer, 로컬 포트의 연결 경로 이해하기
문제를 해결하기 전에 연결 경로를 나누어 살펴보세요. Clash Verge에서 시스템 프록시를 활성화하면 Windows에 프록시 주소가 기록됩니다. 실제 포트는 현재 설정에 따라 달라지며, 일반적으로 127.0.0.1:7890과 같은 형태이고 다른 HTTP 또는 Mixed 포트를 사용할 수도 있습니다. 시스템 프록시를 지원하는 앱은 이 설정을 읽은 뒤 네트워크 요청을 로컬 mihomo 리스닝 포트로 전달합니다.
- 앱이 Windows 시스템 프록시 설정을 읽습니다.
- 앱이
127.0.0.1의 Clash 리스닝 포트에 연결을 시도합니다. - mihomo가 요청을 받아 도메인, IP, 프로세스 또는 규칙 세트에 따라 직접 연결, 거부 또는 지정된 정책 그룹을 선택합니다.
- 선택된 노드 또는 직접 연결 출구가 외부 연결을 만들고, 응답은 같은 경로를 따라 앱으로 돌아갑니다.
UWP와 일부 MSIX 패키지 앱은 AppContainer 보안 경계를 사용합니다. 이 경계는 격리된 앱이 로컬 서비스를 임의로 탐색하거나 호출하지 못하도록 로컬 네트워크 리소스에 대한 액세스를 제한합니다. 시스템 프록시는 로컬 주소에 있으므로 앱이 프록시 설정을 읽었더라도 두 번째 단계에서 차단될 수 있습니다. 루프백 예외는 지정된 패키지가 로컬 루프백 인터페이스에 액세스하도록 허용할 뿐이며, Clash 규칙을 대신 수정하거나 사용할 수 없는 노드의 연결을 복구하지는 않습니다.
또한 “UWP 앱”, “스토어에서 설치한 앱”, “모든 최신 UI 앱”을 구분해야 합니다. Microsoft Store에는 AppContainer 앱뿐 아니라 스토어를 통해 배포되는 기존 데스크톱 프로그램도 있습니다. 후자는 동일한 루프백 제한을 받지 않을 수 있습니다. 대상은 설치 출처만으로 판단하지 말고 패키지 ID와 실제 네트워크 동작을 기준으로 확인하세요.
루프백 예외로 해결할 수 있는 문제
- 특정 AppContainer 패키지가 Clash 로컬 프록시 포트에 액세스하지 못하는 경우
- 데스크톱 프로그램은 정상인데 동일한 네트워크의 특정 패키지 앱에 요청 기록이 없는 경우
- 시스템 프록시를 켠 직후 대상 앱에서 네트워크 오류가 발생하고, 끄면 직접 연결되는 경우
루프백 예외로 대체할 수 없는 것
- 만료된 구독, 작동하지 않는 노드 또는 설정 파일의 문법 오류는 해결할 수 없습니다.
- DNS 확인 실패, 인증서 시간 오류 또는 잘못된 규칙 매칭을 자동으로 해결할 수 없습니다.
- 시스템 프록시를 읽지 않는 앱이 HTTP 프록시를 사용하도록 강제할 수 없습니다.
- Microsoft 계정, 스토어 캐시 또는 Windows Update 서비스 자체의 문제를 해결할 수 없습니다.
제한 해제 전 기본 점검
루프백 예외 목록을 직접 수정하기 전에 Clash Verge의 로컬 프록시 상태를 먼저 확인하세요. 포트 오류, 남아 있는 시스템 프록시 설정 또는 비활성화된 설정을 AppContainer 제한으로 잘못 판단하는 일을 피할 수 있습니다.
Clash Verge 리스닝 포트 확인
Clash Verge 설정 페이지에서 HTTP, SOCKS 또는 Mixed 포트를 확인하고 코어가 정상적으로 실행 중인지 점검하세요. 그런 다음 Windows의 “설정 → 네트워크 및 인터넷 → 프록시”로 이동해 수동 프록시 주소가 Clash Verge의 현재 리스닝 값과 일치하는지 확인합니다. Clash Verge에서 포트를 변경했는데 Windows에 이전 주소가 남아 있으면 시스템 프록시를 읽는 모든 앱의 연결이 실패할 수 있습니다.
여러 프록시 프로그램이 같은 포트를 동시에 사용하지 않도록 하세요. 포트가 충돌하면 Clash Verge가 리스닝을 시작하지 못하거나 시스템 프록시가 실제로는 다른 프로그램을 가리킬 수 있습니다. 이 경우 충돌하는 프로그램을 먼저 종료하고 포트를 조정한 뒤 시스템 프록시를 껐다가 다시 켜세요.
설정과 정책 그룹 상태 확인
현재 구독이 업데이트되었고 선택되어 있는지, 자주 사용하는 정책 그룹에 사용 가능한 노드가 있는지 확인하세요. 먼저 데스크톱 브라우저로 프록시가 필요한 주소에 접속한 다음 Clash Verge 연결 기록을 확인합니다. 브라우저 요청이 기록되고 완료된다면 로컬 리스닝, 기본 규칙, 최소 하나의 출구가 대체로 정상이라는 뜻입니다.
대상 앱이 실제로 시스템 프록시를 사용하는지 확인
일부 앱은 자체 네트워크 스택을 사용해 Windows 시스템 프록시를 무시할 수 있습니다. 또 일부 시스템 구성 요소는 현재 사용자 Internet 프록시 설정이 아니라 WinHTTP 설정을 사용합니다. 루프백 예외는 로컬 액세스만 허용하며 앱이 어떤 프록시 인터페이스를 선택할지는 바꾸지 않습니다. 앱이 시스템 프록시를 읽지 않고 TUN에도 가로채지지 않는다면 예외를 추가해도 Clash로 트래픽이 들어오지 않을 수 있습니다.
루프백 예외로 UWP 앱 제한 해제
일부 Clash Verge 버전이나 Windows 보조 도구는 UWP 루프백 관리 기능을 제공합니다. 현재 클라이언트 설정에서 “UWP 루프백”, “Loopback” 또는 “루프백 제한 해제”와 비슷한 기능을 찾을 수 있다면 해당 화면에서 앱 패키지 목록을 확인하고 로컬 프록시를 통해 연결해야 하는 앱만 선택하세요. 버전에 따라 메뉴 위치가 달라질 수 있으므로 오래된 스크린샷을 기준으로 특정 메뉴를 무작정 찾지는 마세요.
클라이언트에 해당 기능이 없다면 Windows 기본 제공 CheckNetIsolation.exe로 예외 목록을 관리할 수 있습니다. 이 작업에서는 앱의 Package Family Name, 즉 패키지 패밀리 이름을 정확히 식별해야 합니다. 시작 메뉴에 표시되는 앱 이름이나 설치 폴더 이름과는 다릅니다.
1단계: 앱 패키지 패밀리 이름 조회
관리자 권한으로 PowerShell을 열고 현재 사용자에게 설치된 패키지 앱과 패키지 패밀리 이름을 먼저 나열합니다.
Get-AppxPackage | Select-Object Name, PackageFamilyName
목록이 길다면 이름으로 필터링할 수 있습니다. 예를 들어 Microsoft Store 관련 패키지를 조회하려면 다음 명령을 사용합니다.
Get-AppxPackage -Name "*WindowsStore*" |
Select-Object Name, PackageFamilyName
명령 결과의 PackageFamilyName이 이후에 사용할 값입니다. Microsoft Store에서 흔히 사용하는 패키지 패밀리 이름은 Microsoft.WindowsStore_8wekyb3d8bbwe이지만, 다른 앱은 반드시 현재 PC에서 조회한 결과를 기준으로 해야 합니다. 비슷한 이름이 본 프로그램, 실행 구성 요소 또는 확장 패키지를 가리킬 수 있으므로 이름만 보고 추측해서는 안 됩니다.
2단계: 지정한 앱에 루프백 예외 추가
관리자 터미널에서 다음 명령을 실행하고 예시 값을 대상 앱의 실제 패키지 패밀리 이름으로 바꾸세요.
CheckNetIsolation.exe LoopbackExempt -a -n="PackageFamilyName"
예를 들어 조회된 Microsoft Store 패키지에 예외를 추가하려면 다음 명령을 실행할 수 있습니다.
CheckNetIsolation.exe LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"
-a는 추가를 의미하며, -n 뒤에는 패키지 패밀리 이름을 지정합니다. 완료 후 대상 앱을 백그라운드에 남아 있을 수 있는 프로세스까지 완전히 종료한 다음 다시 열어 테스트하세요. 창을 최소화하는 것만으로는 완전한 네트워크 세션이 새로 만들어지지 않을 수 있습니다.
3단계: 현재 예외 목록 확인
다음 명령으로 항목이 정상적으로 기록되었는지 확인합니다.
CheckNetIsolation.exe LoopbackExempt -s
출력에는 루프백 예외를 받은 앱 패키지가 표시됩니다. 대상 패키지가 이미 있다면 반복해서 추가할 필요가 없습니다. 추가 명령을 반복 실행해도 규칙, DNS 또는 노드 문제는 해결되지 않으며 오히려 문제 해결 방향을 흐릴 수 있습니다.
4단계: 더 이상 필요하지 않을 때 예외 삭제
대상 앱이 더 이상 로컬 프록시를 사용하지 않거나 수정 전 상태로 되돌리고 싶다면 -d로 지정 항목을 삭제할 수 있습니다.
CheckNetIsolation.exe LoopbackExempt -d -n="PackageFamilyName"
삭제 후 -s를 다시 실행해 목록을 확인하고 앱을 재시작하세요. 예외 목록은 필요한 로컬 프록시 액세스 패키지에만 허용하는 최소 범위로 유지하는 것이 좋습니다. 모든 앱을 한꺼번에 수정하지 마세요.
예외 추가 후 검증 순서
명령이 성공적으로 실행되었다는 것은 Windows가 설정을 수락했다는 뜻일 뿐, 전체 프록시 경로가 정상이라는 의미는 아닙니다. 검증할 때는 “앱 프로세스, 로컬 연결, 규칙 매칭, 업스트림 출구” 순서로 확인하세요.
- 앱 다시 시작: 작업 관리자에서 기존 프로세스가 종료되었는지 확인한 뒤 대상 앱을 엽니다. 필요한 경우 현재 Windows 사용자에서 로그아웃할 수 있지만, 보통 컴퓨터 전체를 즉시 재부팅할 필요는 없습니다.
- Clash 연결 기록 확인: Clash Verge의 연결 또는 로그 페이지를 열고 앱에서 새로고침을 실행하세요. 대상 도메인이나 관련 프로세스 요청이 나타나면 트래픽이 코어에 도달한 것입니다.
- 규칙 결과 확인: 요청이 어떤 규칙과 정책 그룹에 매칭되었는지 확인하세요.
REJECT, 잘못된 직접 연결 규칙 또는 사용할 수 없는 정책에 매칭되었다면 루프백을 계속 점검하지 말고 설정을 수정하거나 정책을 전환해야 합니다. - 여러 기능 진입점 테스트: 스토어 홈, 검색, 이미지 리소스, 계정 로그인과 다운로드 서비스는 서로 다른 도메인을 사용할 수 있습니다. 홈 화면이 열린다고 해서 모든 인터페이스가 복구된 것은 아닙니다.
- 시스템 프록시 스위치 비교: 다른 조건을 그대로 유지한 채 프록시를 켠 상태와 끈 상태를 비교해 현상이 실제로 프록시 경로와 관련 있는지 확인하세요.
예외를 추가한 뒤 Clash Verge에 요청이 나타나기 시작했지만 앱에 여전히 실패 메시지가 표시된다면, 문제는 “로컬 포트에 액세스할 수 없음”에서 그 이후 단계로 넘어간 것입니다. 이제 로그의 오류 유형을 중점적으로 확인하세요. 예를 들어 DNS 조회 시간 초과는 nameserver, DNS 하이재킹과 네트워크 연결 가능성을 점검해야 하고, 연결 시간 초과는 노드와 라우팅을 확인해야 합니다. TLS 오류는 시스템 시간, 인증서 환경 또는 중간 경로와 관련 있을 수 있습니다.
Microsoft Store의 페이지 콘텐츠, 앱 인증과 다운로드 작업은 서로 다른 시스템 서비스가 처리할 수 있습니다. 스토어 기본 패키지에 루프백 예외를 추가한 뒤 페이지 탐색은 복구되어도 다운로드 대기열은 Windows Update, Delivery Optimization, 계정 상태 또는 서비스 정책의 영향을 받을 수 있습니다. 이런 현상은 각각 따로 확인해야 하며, 모든 스토어 오류를 하나의 패키지 루프백 문제로 묶어서는 안 됩니다.
시스템 프록시가 여전히 작동하지 않을 때 TUN 모드로 전환할까?
TUN 모드는 가상 네트워크 인터페이스 계층에서 트래픽을 가로채므로 앱이 Windows 시스템 프록시를 직접 읽는 데 전적으로 의존하지 않습니다. 따라서 시스템 프록시를 무시하는 프로그램에 더 넓게 적용할 수 있습니다. 로컬 HTTP 프록시를 안정적으로 사용하지 못하는 앱에서는 TUN을 다른 문제 해결 경로로 고려할 수 있지만, 루프백 예외를 단순히 대체하는 스위치는 아닙니다.
TUN을 활성화하기 전에 Clash Verge의 관련 서비스 구성 요소와 권한이 올바르게 설정되어 있는지 확인하고 기존 시스템 프록시 상태를 기록하세요. TUN은 라우팅, DNS 하이재킹, 인터페이스 우선순위와 프로세스 트래픽 가로채기를 다루므로 단일 UWP 패키지보다 영향 범위가 큽니다. 명확한 AppContainer 앱 하나만 127.0.0.1 프록시에 액세스하지 못하는 경우에는 먼저 해당 앱에 루프백 예외를 추가하는 편이 검증과 되돌리기에 쉽습니다.
다음과 같은 경우 TUN을 고려할 수 있습니다.
- 대상 앱이 Windows 시스템 프록시를 읽지 않는 것이 확인되었고, 시스템 프록시를 켜거나 꺼도 연결 기록이 나타나지 않습니다.
- 게임 런처, 명령줄 프로그램 또는 특정 네트워크 구성 요소가 일반 HTTP 프록시로 처리할 수 없는 프로토콜을 사용합니다.
- 명시적 프록시를 지원하지 않는 더 많은 프로세스 트래픽을 동일한 규칙 체계로 처리하려고 합니다.
TUN을 켠 뒤 로컬 네트워크 장치에 연결할 수 없거나 DNS 조회 오류 또는 가상 네트워크 어댑터 충돌이 발생하면 Clash 설정의 DNS, 라우팅 제외 항목과 인터페이스 설정을 먼저 확인하세요. VPN, 가상 머신 소프트웨어, 컨테이너 네트워크와 다른 네트워크 필터 프로그램이 라우팅 우선순위를 바꿀 수 있습니다. 문제를 확인할 때 시스템 프록시, TUN, 노드와 DNS를 동시에 반복해서 전환하지 마세요. 그러면 원인을 특정하기 어렵습니다.
여전히 연결되지 않을 때 계층별 문제 해결 체크리스트
Clash Verge에 요청이 전혀 표시되지 않음
먼저 패키지 패밀리 이름을 올바르게 선택했는지 확인하고 CheckNetIsolation.exe LoopbackExempt -s로 예외가 존재하는지 확인하세요. 이어서 Windows 시스템 프록시 주소와 포트를 점검합니다. 앱이 시스템 프록시를 사용하지 않는다면 잠시 TUN을 테스트해 연결 기록이 나타나는지 확인할 수 있습니다. 기록이 없다는 것은 일반적으로 요청이 mihomo에 도달하기 전에 문제가 발생했다는 뜻입니다.
로그에 요청은 있지만 규칙에 의해 거부됨
매칭된 도메인, 규칙과 정책 그룹을 확인하세요. 규칙 세트가 일부 Microsoft 도메인을 직접 연결로 분류했거나 사용자 지정 규칙이 잘못 거부했을 수 있습니다. 수정하기 전에 구체적인 도메인과 매칭 결과를 기록하고, 앱 이름만 보고 지나치게 넓은 와일드카드 규칙을 추가하지 마세요. 규칙을 수정한 뒤 설정을 다시 불러오고 새 연결이 예상한 정책을 사용하는지 확인하세요.
로그에 DNS 오류가 표시됨
시스템 네트워크 자체가 설정에 지정된 DNS 서버에 액세스할 수 있는지 확인하고, Clash DNS가 활성화되어 있는지, nameserver에 연결할 수 있는지, DNS 하이재킹이 다른 네트워크 프로그램과 충돌하지 않는지 점검하세요. TUN을 사용한다면 가상 인터페이스의 DNS 가로채기 상태도 확인해야 합니다. DNS 오류와 루프백 제한은 비슷한 “빈 페이지” 현상을 만들 수 있지만, 전자는 대개 로그에 조회 오류가 남습니다.
로그인, 이미지 또는 다운로드 기능만 실패함
이는 기본 요청은 프록시를 통과했지만 하위 리소스, 계정 인터페이스 또는 다운로드 서비스가 다른 도메인과 프로세스를 사용한다는 뜻일 수 있습니다. 실패하는 기능을 하나씩 실행하면서 새 연결을 확인하세요. Microsoft Store 다운로드는 관련 시스템 서비스, 디스크 공간, 시간 설정과 계정 인증에도 의존하므로 전면 앱 패키지만 확인해서는 안 됩니다.
프록시를 꺼도 여전히 액세스할 수 없음
Clash Verge 시스템 프록시를 끄고 클라이언트를 종료한 뒤에도 문제가 계속되면 Windows 네트워크, 앱 캐시, 계정 로그인과 시스템 서비스를 확인하세요. 먼저 “설정 → 앱”에서 대상 앱을 찾아 제공되는 복구 옵션을 사용할 수 있습니다. 초기화하면 앱 데이터가 삭제되므로 영향을 확인한 뒤 실행해야 합니다. 시스템 날짜, 지역 설정과 네트워크 연결도 정상인지 확인하세요.
시스템 프록시 설정이 남아 있거나 포트가 변경됨
Clash Verge가 비정상적으로 종료되면 Windows에 이전 프록시 주소가 잠시 남을 수 있습니다. 클라이언트를 다시 시작하고 시스템 프록시를 정상적으로 끄거나 Windows 프록시 설정에서 스위치를 확인하세요. 포트가 변경되었다면 Windows가 가리키는 새 포트와 mihomo가 실제로 리스닝하는 포트가 완전히 일치해야 합니다.
복구 후 다시 확인할 수 있는 기록 남기기
문제가 해결되면 대상 앱의 표시 이름, Package Family Name, Clash Verge 리스닝 포트, 사용한 시스템 프록시 또는 TUN 모드와 최종적으로 적용된 변경 사항을 기록해 두세요. 앱 업데이트는 일반적으로 동일한 패키지 패밀리 이름을 바꾸지 않지만, 재설치하거나 프리뷰 버전 또는 다른 배포 채널로 변경하면 패키지 ID가 달라져 기존 예외가 새 패키지에 적용되지 않을 수 있습니다.
나중에 같은 현상이 다시 나타나면 먼저 예외 목록 조회 명령을 실행한 다음 Clash 연결 기록을 확인하세요. 요청이 로컬 프록시에 도달했는지만 알아도 AppContainer 루프백, 프록시 포트, 규칙 설정과 업스트림 연결 문제를 빠르게 구분할 수 있습니다. 더 이상 사용하지 않는 앱은 해당 예외를 삭제해 설정을 깔끔하게 유지하세요.
전체 문제 해결 흐름은 다음과 같이 요약할 수 있습니다. 데스크톱 앱이 정상인지, 대상 패키지가 격리 대상인지, 요청이 mihomo에 도달하는지, 규칙이 올바르게 매칭되는지, 출구가 사용 가능한지 차례로 확인하세요. 노드를 반복해서 전환하거나 앱을 재설치하는 것보다 이 경로를 따라 계층별로 점검하는 편이 실제 원인을 찾기 쉽습니다.
Clash Verge 설치 계속하기
다운로드 페이지에서 운영체제와 아키텍처를 선택하거나 전체 설치 절차를 먼저 확인하세요.