먼저 시스템 프록시를 설정하고, TUN 모드는 나중에 검토하세요
Windows에서 Clash를 설정할 때는 클라이언트를 설치하고 구독을 가져와 활성화한 다음, 규칙 모드와 사용할 노드를 선택하고 시스템 프록시를 켜는 순서가 가장 안전합니다. 서비스 모드, TUN, 자동 시작은 마지막에 설정하세요. 처음부터 모든 기능을 켜면 인터넷이 끊겼을 때 구독, 프록시 포트, 가상 네트워크 어댑터의 라우팅 중 어디에서 문제가 생겼는지 파악하기 어렵습니다.
이 글은 mihomo 커널을 사용하는 Windows 그래픽 클라이언트를 기준으로 설명합니다. Clash Verge Rev, Clash Nyanpasu 등은 버튼 이름이 조금씩 다르므로, 아래에서는 기능 이름과 확인 방법을 함께 안내합니다. 특정 클라이언트의 메뉴 위치가 모든 버전에서 동일하다고 가정하지 마세요. 원본 Clash와 mihomo는 지원하는 설정이 다릅니다. 지원되지 않는 프로토콜이나 필드가 있다면 시스템 프록시를 반복해서 바꾸기 전에 먼저 커널을 확인하세요.
1. 시스템 아키텍처와 설치 위치 확인
x64와 ARM64 구분하기
Windows 11에서는 ‘설정’ → ‘시스템’ → ‘정보’에서 ‘시스템 종류’를 확인하세요. Windows 10에서는 ‘설정’ → ‘시스템’ → ‘정보’에서 확인할 수 있습니다. Intel 또는 AMD 프로세서를 탑재한 일반적인 PC라면 x64 설치 파일을 선택하고, ARM 프로세서 기반 기기라면 클라이언트에서 제공하는 ARM64 버전을 우선 선택하세요. ‘64비트 운영 체제’라는 표시만으로 프로세서 아키텍처를 판단하면 안 됩니다.
- Clash 다운로드 페이지에서 Windows 클라이언트를 선택하고 시스템 요구 사항을 확인하세요.
- 고정된 위치에 설치하세요. 포터블 버전을 사용한다면 압축 파일을 먼저 완전히 푼 다음 실행하세요. 압축 파일 안에서 바로 실행하지 마세요.
- 처음 실행할 때는 기본 설정을 유지하세요. Windows 보안 알림이 표시되면 다운로드 출처와 게시자 정보를 먼저 확인하세요. 프로그램 하나를 실행하려고 보안 기능 전체를 끄지는 마세요.
- 시스템 트레이에 아이콘이 나타나는지 확인한 다음 클라이언트의 커널 상태나 로그를 살펴보세요. 창이 열린 것만으로 백그라운드 커널이 포트를 정상적으로 열었다고 볼 수는 없습니다.
Windows 10 22H2와 Windows 11 24H2는 설정 화면이 다릅니다. 여기에 적힌 버전은 경로 차이를 설명하기 위한 예시이며, 모든 클라이언트가 해당 시스템을 지원한다는 의미는 아닙니다. 조직에서 관리하는 PC는 서비스 설치, 프록시 변경, 가상 네트워크 어댑터 생성이 제한될 수 있으므로 기기 관리 정책을 먼저 확인하세요.
2. 구독을 가져오고 설정이 활성화됐는지 확인
클라이언트에서 ‘구독’, ‘설정’ 또는 ‘Profiles’ 페이지를 열고 새 원격 구독을 추가하세요. 서비스 제공자가 안내한 Clash 또는 mihomo 설정 URL을 붙여 넣은 다음 다운로드하거나 업데이트합니다. 구독 URL에는 계정 토큰이 포함되는 경우가 많으므로 공개 게시판에 올리거나, URL 전체가 보이도록 도움 요청 스크린샷을 찍지 마세요.
- 다운로드 성공: 설정 목록에 항목이 표시되고 업데이트 시간이 변경됐는지 확인하세요. 401, 403 또는 404 오류가 발생하면 URL이 만료되지 않았는지, 전체 주소를 빠짐없이 복사했는지 먼저 확인하세요.
- 설정 활성화: 해당 설정을 클릭해 ‘현재’, ‘사용 중’ 또는 선택 표시가 있는지 확인하세요. 구독을 목록에 추가하는 것만으로 현재 실행 중인 설정이 전환되는 것은 아닐 수 있습니다.
- 정책 그룹 확인: 프록시 페이지에서 노드와 정책 그룹이 표시되는지 확인하세요. 노드를 직접 선택하거나 자동 선택 그룹에서 노드가 선택됐는지 살펴보세요.
- 커널 로드 확인: 로그에 설정 파싱 오류, 알 수 없는 프록시 유형, 정책 그룹을 찾을 수 없다는 메시지 등이 있는지 확인하세요.
업데이트 오류가 나도 DNS와 TUN부터 바꾸지 마세요
구독 다운로드 연결이 시간 초과되면 프록시를 사용하지 않을 때 구독 서버에 접속할 수 있는지, PC의 날짜와 시간이 정확한지 먼저 확인하세요. 일부 구독 사이트는 특정 네트워크에서만 접속할 수 있습니다. 클라이언트에서 구독 업데이트용 프록시를 설정할 수 있지만, 이 기능을 사용하려면 작동 중인 프록시 연결이 이미 있어야 합니다. 아직 로드하지 않은 설정으로 첫 구독을 다운로드하려고 해서는 안 됩니다.
로그인 페이지나 오류 페이지가 반환됐다면 다운로드 요청이 성공으로 표시돼도 유효한 설정이 아닙니다. 구독 출력 형식이 현재 커널에서 지원되는지도 확인하세요. 예를 들어 mihomo에서만 지원하는 기능이 포함된 구독은 구형 원본 Clash 커널에서 로드되지 않을 수 있습니다. 이때는 설정 필드를 임의로 삭제하는 대신 올바른 구독 형식이나 호환되는 클라이언트를 선택하세요.
3. 규칙 모드와 로컬 프록시 포트 설정
일상적인 사용에는 ‘규칙 / Rule’ 모드를 선택하세요. 설정에 정의된 규칙에 따라 직접 연결하거나 프록시를 사용합니다. 전역 모드는 비교 테스트를 위해 잠시 사용할 수 있지만, 선택한 정책이나 노드가 작동해야 합니다. 직접 연결 모드에서는 프록시 노드의 정상 작동 여부를 확인할 수 없습니다. 모드를 바꾼 뒤에도 기존 장기 연결은 이전 경로를 계속 사용할 수 있으므로, 확인할 때는 요청을 새로 보내세요.
시스템 프록시는 실제 리스닝 포트를 가리켜야 합니다
클라이언트의 포트 설정에서 HTTP 포트 또는 혼합 포트를 확인하세요. 이 글에서는 7890을 예시로 사용하지만, 실제 포트 번호는 클라이언트마다 다를 수 있습니다. 혼합 포트는 보통 HTTP와 SOCKS 프록시 요청을 모두 받습니다. 9090 같은 컨트롤 포트는 관리 인터페이스용이므로 브라우저 프록시 포트로 사용하면 안 됩니다.
| 확인 항목 | 예시 값 | 확인할 내용 |
|---|---|---|
| 로컬 프록시 주소 | 127.0.0.1 | 이 PC에서만 사용할 경우 노드 서버 주소를 입력하지 않음 |
| HTTP 또는 혼합 포트 | 7890 | 클라이언트에 현재 표시된 값 사용 |
| 컨트롤 인터페이스 포트 | 9090 | 트래픽 프록시용 포트가 아니므로 시스템 프록시에 입력하지 않음 |
| LAN 연결 허용 | 끔 | 이 PC에서만 사용할 경우 보통 켤 필요 없음 |
클라이언트에서 ‘시스템 프록시’를 켠 뒤 Windows 11의 ‘설정’ → ‘네트워크 및 인터넷’ → ‘프록시’ → ‘수동 프록시 설정’에서 주소와 포트를 확인하세요. Windows 10에서는 ‘설정’ → ‘네트워크 및 인터넷’ → ‘프록시’에서 확인할 수 있습니다. 클라이언트에 따라 시스템 프록시를 설정하는 방식이 달라 화면에 표시되는 상태도 다를 수 있습니다. 스위치 하나만 보지 말고 요청 로그도 함께 확인하세요.
4. 로그와 명령어로 노드 문제와 포트 충돌 구분하기
브라우저뿐 아니라 명시적 프록시 요청도 테스트하세요
시스템 프록시를 켜고 테스트할 웹사이트에 브라우저로 접속하는 동안 클라이언트의 연결 기록을 살펴보세요. 해당 도메인이 기록되는지, 어떤 규칙이 적용됐는지, 직접 연결 또는 어떤 정책 그룹을 사용했는지 확인합니다. 브라우저에 별도의 프록시 확장 프로그램이 설치돼 있다면 Windows 프록시 설정을 따르도록 바꿔 프록시를 덮어쓰지 않게 하세요.
PowerShell에서 아래 명령어를 실행해 확인할 수도 있습니다. 일부 PowerShell 환경에서 curl이 다른 명령어로 해석되는 문제를 피하려고 curl.exe를 명시했습니다. 7890을 실제 포트 번호로 바꾸세요:
curl.exe -I --connect-timeout 10 --max-time 20 --proxy http://127.0.0.1:7890 https://example.com
- 로컬 포트에 연결할 수 없다는 오류가 바로 표시됨: 커널이 실행 중인지, 포트 번호가 올바른지, 설정이 정상적으로 로드됐는지 확인하세요.
- 로컬 프록시에 연결된 뒤 시간 초과됨: 노드 연결 오류, 대상에 적용된 규칙, 원격 서비스 상태를 확인하세요. 로컬 포트에 연결할 수 있다고 노드까지 작동하는 것은 아닙니다.
- 대상 사이트에서 응답을 받음: 이번 명시적 프록시 요청이 대상 사이트에 도달했다는 뜻입니다. 그래도 실제 연결 경로는 로그에서 확인해야 하며, 이 결과만으로 모든 프로그램의 트래픽이 프록시를 거친다고 볼 수는 없습니다.
address already in use 오류가 나면 포트를 점유한 프로세스부터 확인하세요
두 클라이언트가 동시에 7890 포트를 열려고 하면 나중에 시작한 커널에서 주소가 이미 사용 중이라는 오류가 발생할 수 있습니다. 아래 PowerShell 명령어 두 개를 실행하면 포트를 수신 대기 중인 프로세스의 ID와 이름이 표시됩니다. 출력이 없다면 조회 시점에 해당 TCP 포트의 리스너를 찾지 못했다는 뜻입니다.
Get-NetTCPConnection -LocalPort 7890 -State Listen -ErrorAction SilentlyContinue |
Select-Object LocalAddress, LocalPort, OwningProcess
Get-NetTCPConnection -LocalPort 7890 -State Listen -ErrorAction SilentlyContinue |
ForEach-Object { Get-Process -Id $_.OwningProcess }
포트를 점유한 프로세스가 다른 프록시 클라이언트라면 해당 프로그램을 정상적으로 종료한 뒤 현재 클라이언트를 시작하세요. 프로세스 ID가 보인다고 강제 종료하지 마세요. 포트를 바꿔야 한다면 예를 들어 7891로 변경한 뒤 시스템 프록시와 앱에 별도로 입력한 프록시 주소도 함께 수정해야 합니다. 클라이언트가 시스템 프록시를 자동으로 관리한다면 해당 기능을 껐다가 다시 켜고 설정을 확인하세요.
5. 방화벽 알림에 대응하고 방화벽을 끄지 마세요
Windows 방화벽에서 네트워크 액세스를 허용하라는 알림이 표시되면 프로그램 경로와 알림 대상이 그래픽 클라이언트인지 커널인지 먼저 확인하세요. 일반적인 기본 정책은 허용되지 않은 인바운드 연결을 제한하지만, 아웃바운드 연결은 보통 허용합니다. 127.0.0.1을 통한 로컬 프록시 사용은 LAN 기기가 이 PC에 연결하도록 허용하는 것과 다릅니다.
- 이 PC에서만 사용할 경우 ‘LAN 연결 허용’을 끄고, 웹페이지가 열리지 않는다는 이유로 모든 인바운드 포트를 열지 마세요.
- 프록시를 공유해야 한다면 현재 네트워크를 신뢰할 수 있는지 먼저 확인한 뒤 ‘Windows 보안’ → ‘방화벽 및 네트워크 보호’ → ‘방화벽을 통해 앱 허용’에서 프로그램 항목을 확인하세요.
- 신뢰할 수 있는 개인 네트워크에서 필요한 권한만 허용하세요. 공용 네트워크까지 함께 선택하지 마세요. 출발지 주소와 포트 범위를 세밀하게 설정하려면 ‘고급 설정’을 이용하세요.
- 클라이언트 업데이트 후 설치 경로가 바뀌었다면 기존 규칙이 이전 파일을 가리키고 있지 않은지 확인하세요. 조직에서 설정한 제한은 관리자에게 문의하고, 보안 서비스를 끄지 마세요.
‘앱 허용’은 해당 방화벽 규칙 범위의 액세스 문제를 해결하는 기능이지, 만료된 구독이나 작동하지 않는 노드, 잘못된 분기 규칙을 고치는 기능은 아닙니다. 시스템 프록시 테스트는 정상인데 LAN의 다른 기기에서만 연결할 수 없다면 리스닝 주소, 인바운드 권한, 네트워크 격리 설정을 중점적으로 확인하세요.
6. 필요한 경우에만 서비스를 설치하고 TUN 모드를 켜세요
브라우저는 정상적으로 연결되는데 특정 앱만 직접 연결된다면 해당 앱이 시스템 프록시를 지원하는지, 또는 SOCKS/HTTP 프록시를 별도로 설정할 수 있는지 확인하세요. 일부 명령줄 도구, 게임, 백그라운드 서비스는 Windows 사용자 프록시를 사용하지 않습니다. 이럴 때는 시스템 프록시 주소를 계속 바꾸기보다 TUN 모드 사용을 검토하세요.
서비스 모드 확인 순서
- 클라이언트 설정에서 ‘서비스 모드’, ‘서비스 설치’ 또는 이에 해당하는 서비스 관리 메뉴를 찾으세요. 설치 중 사용자 계정 컨트롤 알림이 표시될 수 있습니다.
- 서비스 상태가 실행 중인지 확인하세요. 필요한 경우
Win + R을 누르고services.msc를 입력한 다음, 클라이언트에 실제로 표시된 서비스 이름을 확인하세요. 이름이 비슷하다는 이유로 다른 시스템 서비스를 추측해 수정하지 마세요. - 클라이언트로 돌아가 TUN을 켜고 로그에서 가상 인터페이스, 라우팅, DNS 초기화가 성공했는지 확인하세요.
- 다른 VPN이나 가상 네트워크 트래픽 처리 도구를 끈 뒤 비교 테스트하세요. 한 번에 설정 하나만 바꾸세요.
서비스를 설치했다고 트래픽이 자동으로 TUN을 통과하는 것은 아닙니다. 클라이언트에서 관련 설정도 올바르게 생성해야 합니다. 자동 라우팅, 인터페이스 감지, DNS 처리 옵션은 클라이언트마다 다르게 관리하므로 다른 클라이언트의 tun: 설정 전체를 그대로 덮어쓰지 마세요. TUN을 켠다고 모든 트래픽이 반드시 프록시를 거치는 것도 아닙니다. 커널에 들어온 연결도 규칙 모드, 프로세스 제외 설정, 라우팅 범위의 영향을 받습니다.
7. 자동 시작은 로그인 후 정상 작동하는지 확인하세요
대부분의 그래픽 클라이언트에서 ‘시작 시 자동 실행’은 현재 사용자가 Windows에 로그인한 뒤 프로그램이 시작된다는 뜻입니다. PC에 로그인하기 전부터 프록시가 제공된다는 뜻은 아닙니다. 백그라운드 서비스의 시작 상태와 그래픽 인터페이스의 자동 시작 설정도 별개입니다. 서비스가 실행 중인 것만으로 구독이 활성화됐거나 시스템 프록시가 설정됐다고 볼 수 없습니다.
- 먼저 클라이언트 자체의 자동 시작 옵션을 켜세요: 그런 다음 Windows ‘설정’ → ‘앱’ → ‘시작’ 또는 작업 관리자의 시작 앱 목록에서 확인하세요. 프로그램이 예약 작업으로 시작되도록 설정됐다면 작업 스케줄러에서도 확인해야 합니다.
- 중복 실행 경로 방지: 시작 폴더 바로 가기, 직접 만든 예약 작업, 클라이언트 자동 시작을 동시에 설정하지 마세요. 프로그램이 두 개 실행돼 포트를 서로 차지할 수 있습니다.
- 설치 위치 고정: 포터블 버전의 폴더를 옮기면 기존 자동 시작 항목이 이전 경로를 가리킬 수 있습니다. 자동 시작을 껐다가 다시 켜세요.
- 권한 차이 확인: 프로그램 전체를 항상 ‘관리자 권한으로 실행’하도록 설정하면 일반 사용자 로그인 시 자동 시작에 영향을 줄 수 있습니다. 클라이언트에서 제공하는 서비스 기능을 우선 사용하세요.
재부팅 후 네 가지 항목 확인
설정을 저장하고 PC를 다시 시작한 뒤 로그인해 시스템 트레이 아이콘, 현재 설정, 포트 리스닝, 실제 요청 로그를 차례대로 확인하세요. 자동 시작이 네트워크 연결보다 먼저 실행될 수 있으므로 첫 구독 업데이트 실패가 자동 시작 오류를 뜻하는 것은 아닙니다. 인터페이스와 커널이 실행 중인지 확인한 다음 네트워크 연결이 준비되면 구독을 수동으로 한 번 업데이트하세요.
클라이언트가 종료됐는데 브라우저에서 계속 로컬 포트에 연결하려 한다면 Windows에 수동 프록시 설정이 남아 있는지 확인하세요. 시스템 프록시 설정에서 ‘프록시 서버 사용’을 잠시 끄면 직접 연결로 복구할 수 있습니다. 그런 다음 클라이언트가 비정상 종료된 원인을 확인하세요. 커널이 실행되지 않는 상태에서 시스템 프록시 스위치를 반복해서 켜고 끄지 마세요.
설정 완료 후 확인할 항목
안정적으로 사용할 수 있는 Windows용 Clash 설정인지 아래 여섯 가지를 확인하세요. 문제가 생기면 무작정 재설치하기보다 가장 최근에 바꾼 설정부터 되돌려야 원인을 찾기 쉽습니다.
- 클라이언트 아키텍처가 PC와 일치하고 커널이 시작되며 로그에 설정 파싱 오류가 없음
- 구독 업데이트와 활성화가 완료됐고 정책 그룹에 사용할 수 있는 노드가 있음
- 규칙 모드가 의도한 대로 설정됐고 시스템 프록시 주소가 실제 리스닝 포트와 일치함
- 브라우저와 명시적 프록시 명령 모두 연결 기록이 남고 실제 연결 경로를 확인할 수 있음
- 필요한 경우에만 LAN 액세스나 TUN을 켜고, 내부 네트워크와 외부 네트워크 서비스를 각각 확인함
- 다시 로그인하면 클라이언트가 자동으로 시작되고 종료 후에는 작동하지 않는 프록시 설정이 남지 않음. 서비스와 인터페이스 상태를 각각 확인할 수 있음
추가로 확인하려면 Clash 설정 가이드에서 프록시, 규칙, DNS 설명을 살펴보거나 자주 묻는 질문에서 증상별로 문제를 찾아보세요. 도움을 요청할 때는 클라이언트 이름과 버전, 시스템 버전, 관련 오류 로그를 함께 남기되 구독 URL, 노드 인증 정보, 관리 인터페이스 키는 가리세요.