이 가이드가 맞는 독자
Clash 계열 GUI(예: Clash Verge·Clash for Windows 계열 포크, macOS의 ClashX Meta 등)에서 이미 노드를 고를 수 있고, 규칙 모드도 대략 이해한 상태라고 가정합니다. 목표는 «구독은 정상인데 특정 앱만 직행한다»를 투명 프록시로 정리하거나, 반대로 TUN을 켠 뒤 전체 단절·일부 앱만 여전히 직행 같은 모순 증상을 빠르게 분류하는 것입니다. YAML 문법 전반이 궁금하다면 규칙 분기 가이드와 함께 보는 편이 흐름이 이어집니다.
클라이언트마다 메뉴 이름이 «TUN 모드」「가상 어댑터」「System Proxy」처럼 조금씩 다르지만, 개념은 동일합니다. 아래에서는 OS별로 켜는 순서와 막히는 지점을 나눠 설명합니다.
TUN 모드와 시스템 프록시, 무엇이 다른가
시스템 프록시는 운영체제가 HTTP(S) 등에 대해 «이 포트로 보내라»고 알려 주는 방식입니다. 브라우저나 시스템 프록시를 존중하는 앱은 잘 따라오지만, 터미널의 일부 도구·게임 런처·Go·Rust로 빌드된 CLI·자체 프로토콜을 쓰는 프로그램은 프록시 환경 변수를 안 읽거나 SOCKS만 쓰는 경우가 있어 빠져나갑니다.
TUN 모드는 가상 네트워크 인터페이스(가상 NIC)를 만들고, 라우팅·방화벽 계층에서 트래픽을 Clash 쪽으로 끌어당깁니다. 그래서 «앱이 프록시를 모른다»는 전제에 가깝게 동작하며, 투명 프록시에 해당합니다. 대신 커널 근처를 건드리므로 관리자 권한(Windows)·시스템 확장·방화벽 허용(macOS) 같은 요구가 붙고, 다른 VPN·보안 소프트웨어와 스택이 겹치면 한 번에 전체가 끊기기도 합니다.
| 구분 | 시스템 프록시 | TUN(가상 NIC) |
|---|---|---|
| 적용 범위 | 프록시를 따르는 앱 위주(브라우저 등) | 라우팅에 잡히는 트래픽 폭이 넓음 |
| 전제 | 앱이 시스템/환경 변수 프록시를 사용 | OS가 TUN 인터페이스·라우트를 허용 |
| 흔한 문제 | 일부 앱만 직행, 터미널과 브라우저 불일치 | 권한·DNS·다른 VPN과 충돌, 전체 단절 |
| 권한 | 상대적으로 낮음 | 높음(드라이버·필터·확장) |
Windows 11에서 TUN 켜기: 권한·드라이버·스택
1) 관리자 권한과 서비스
대부분의 Clash GUI는 TUN을 올릴 때 관리자 권한이 필요합니다. 설치형이면 «관리자 권한으로 실행»을 켜 두거나, UAC 프롬프트를 허용해야 가상 어댑터가 생성됩니다. 한 번 거부한 뒤에는 조용히 실패해 «인터넷이 안 된다»만 남는 경우가 있으므로, 작업 표시줄 아이콘을 종료했다가 관리자로 다시 실행해 보세요.
2) Wintun·필터 드라이버
Windows 쪽 TUN 구현은 보통 Wintun 또는 클라이언트에 동봉된 가상 어댑터 드라이버에 의존합니다. 장치 관리자에 경고 삼각형이 있거나, 보안 소프트웨어가 «네트워크 필터»를 차단하면 인터페이스는 생겼는데 패킷이 안 나가는 상태가 됩니다. 다른 VPN 제품의 TUN/TAP이 동시에 붙어 있으면 어댑터 우선순위가 꼬이기도 하니, 테스트 시에는 한 번에 하나만 켜는 것이 안전합니다.
3) 스택 모드(gVisor / system)
일부 클라이언트는 TUN 스택을 gVisor 기반과 system(OS 스택)으로 바꿀 수 있습니다. 특정 게임·P2P·회사망에서만 끊긴다면 스택을 바꿔 보는 것이 빠른 분기입니다. 반대로 system 스택이 회사 정책이나 다른 필터와 맞물리면 전역이 멈출 수 있어, 문제가 생겼을 때 반대 옵션으로 A/B 테스트하는 방식이 일반적입니다.
4) DNS hijack·fake-ip와의 관계
프로필에서 fake-ip를 쓰는 경우, TUN과 DNS 리다이렉트(일명 DNS hijack) 설정이 맞지 않으면 «이름은 되는데 실제 연결만 실패»하거나 그 반대가 될 수 있습니다. 구독 제공자 문서의 권장 조합을 따르고, 의심될 때는 DNS 관련 옵션을 일시적으로 단순화해 증상이 DNS 쪽인지 라우팅 쪽인지 나눕니다.
macOS에서 TUN 켜기: 권한·시스템 확장·방화벽
1) 관리자 암호와 네트워크 확장
macOS에서는 TUN·패킷 필터링을 위해 네트워크 확장(Network Extension) 또는 클라이언트 번들의 시스템 확장 승인이 필요한 경우가 많습니다. 처음 켤 때 시스템 설정에 안내가 뜨면, 보안·개인 정보 보호에서 해당 앱을 허용해야 합니다. 승인 없이 반쯤만 켜지면 트래픽이 반만 잡혀 이상 증상이 납니다.
2) 방화벽과 Little Snitch류
서드파티 방화벽이나 연결 모니터가 Clash의 가상 인터페이스·helper 프로세스를 막으면 TUN은 켜진 것처럼 보여도 실제로는 차단됩니다. 테스트할 때는 잠시 규칙을 완화하거나, Clash 관련 바이너리·helper에 수신·송신 허용을 명시하세요.
3) 다른 VPN과의 공존
macOS의 시스템 VPN(예: IKEv2 프로필)과 Clash TUN을 동시에 켜면 라우팅 테이블이 겹칩니다. «Clash만 켰을 때는 된다»가 확인되면, 상위 VPN 쪽의 기본 라우트를 점검하세요. 업무용 전체 터널 VPN이 켜진 상태에서는 Clash TUN이 아래에서 싸우기 어렵습니다.
TUN 켠 뒤 전체 인터넷이 안 될 때 순서대로
아래는 현장에서 자주 통하는 배제 순서입니다. 한 번에 여러 가지를 바꾸지 말고, 한 단계씩 되돌리며 원인을 좁히는 것이 좋습니다.
- TUN만 끄고 시스템 프록시만으로 브라우저가 살아나는지 확인합니다. 살아나면 원인은 TUN 스택·라우트·DNS hijack 쪽에 가깝습니다.
- 다른 VPN·가속기·광고 차단 필터를 모두 끕니다. Windows에서는 어댑터 우선순위를 보는 것도 도움이 됩니다.
- DNS를 점검합니다. Clash의 DNS 섹션, 운영체제의 DNS 서버, DoH/Private DNS가 겹치면 루프나 타임아웃이 납니다. 잠시 시스템 DNS를 자동으로 두고 재시도해 보세요.
- 규칙 모드에서 기본 출구(예: FINAL·MATCH)가 의도한 그룹인지 확인합니다. 실수로 REJECT·DIRECT만 남았다면 전체가 막히거나 우회가 안 됩니다.
- 시간 동기화가 맞는지 봅니다. TLS 핸드셰이크가 연쇄 실패하면 «전부 안 된다»처럼 보일 수 있습니다.
- 그래도 안 되면 클라이언트 로그에서 TUN 인터페이스 생성 실패·permission denied·route add 오류 키워드를 찾습니다.
TUN을 켰는데도 일부 앱만 직행할 때
TUN이 만능은 아닙니다. 다음 유형은 여전히 Clash 밖으로 나가기 쉽습니다.
- 하드코딩된 IP로 붙는 P2P·게임·업데이트 모듈. 규칙이 도메인 기준이면 IP 트래픽은 다른 경로로 보일 수 있습니다.
- 자체 DNS·QUIC·HTTP/3를 고집하는 앱. DNS와 UDP 경로가 분리되면 «사이트는 되는데 앱만 이상」한 패턴이 납니다.
- 관리자 권한으로만 동작하는 서비스 프로세스가 별도 세션에 있어 사용자 모드 TUN과 겹치지 않는 경우(드물지만 서버형 소프트웨어에서 보고됩니다).
- 회사 제로 트러스트 에이전트가 패킷을 다시 잡아 자체 터널로 보내는 경우. 이때는 정책 충돌을 풀지 않는 한 Clash만으로는 한계가 있습니다.
이럴 때는 앱별로 프록시 인지 여부를 먼저 분류하고, 가능하면 해당 앱에 SOCKS5/HTTP 프록시를 직접 지정하는 편이 빠른 경우도 있습니다. 개발 도구 전체를 Clash로 묶는 패턴은 개발자 트래픽 분기 글의 DIRECT 예외·루프백 논의와도 연결됩니다.
증상별로 한눈에 보는 표
| 증상 | 우선 확인 |
|---|---|
| 브라우저만 되고 터미널·게임은 직행 | 시스템 프록시 한계 → TUN 또는 앱별 프록시 설정 |
| TUN 켜자마자 전체 단절 | 관리자 권한, 다른 VPN 종료, DNS·라우트, 스택 모드 전환 |
| 이름 해석만 느리거나 실패 | fake-ip·DNS hijack·시스템 DNS·DoH 충돌 |
| 특정 사이트만 안 됨 | 규칙 순서, GEOIP, 정책 그룹 선택, 노드 지역 |
마무리
Clash TUN 모드는 데스크톱에서 «구독은 있는데 앱마다 우회가 다르다»는 문제를 정리하는 강력한 수단이지만, Windows 11의 드라이버·필터와 macOS의 확장·방화벽 요구를 함께 이해해야 안정적으로 씁니다. 시스템 프록시와의 차이를 표로 구분해 두면, 증상이 생겼을 때 «앱이 프록시를 무시하는 문제인지, 가상 NIC·DNS가 꼬인 문제인지」를 빠르게 가늠할 수 있습니다.
같은 Clash 계열이라도 패키징·기본 스택·메뉴 배치가 제각각이라, 반복 설정이 번거롭다면 한 플랫폼에서 검증된 빌드를 고정해 두는 편이 운영 부담을 줄입니다. ClashNote 다운로드 페이지에서는 여러 클라이언트를 한곳에서 비교하며 설치 경로를 정리할 수 있습니다.
규칙·정책 그룹을 손보는 단계는 기술 칼럼의 YAML·스트리밍·구독 갱신 글과 이어서 읽으면 설정 전반이 한결 정리됩니다.