가져오기 전에 링크 내용과 클라이언트 코어 확인
클라이언트의 ‘구독’ 또는 ‘설정’ 페이지를 열고 URL, 클립보드, 로컬 파일 중 적절한 가져오기 방식을 선택하세요. 세 방식은 설정을 클라이언트로 전달하는 경로일 뿐입니다. 정상 작동 여부는 응답 형식, 코어의 프로토콜 지원 범위, 설정 활성화 여부에 달려 있습니다. 서비스 제공업체에서 받은 링크라면 ‘Clash’, ‘Clash Meta’ 또는 ‘mihomo’라고 표시된 구독을 우선 선택하세요.
- 원격 URL: 장기간 사용할 때 적합합니다. 클라이언트에 원본 주소를 저장해 두면 수동으로 업데이트하거나 일정 간격으로 자동 업데이트할 수 있습니다.
- 클립보드: 브라우저에서 복사한 내용을 빠르게 가져올 때 편리합니다. 복사한 것이 링크인지, YAML 전체인지, 노드 URI 하나인지 먼저 확인하세요.
- 로컬 파일: 설정 파일을 받았거나 오프라인에서 확인하고 스냅샷으로 보관할 때 적합합니다. 일반적인 로컬 설정은 원래 구독 주소를 따라 자동 업데이트되지 않습니다.
이 문서에서는 mihomo 코어를 사용하는 데스크톱 클라이언트를 기준으로 설명합니다. Clash Verge Rev에서는 보통 ‘구독’ 페이지에서 가져올 수 있습니다. 다른 클라이언트에서는 같은 기능을 ‘설정’, ‘Profiles’ 또는 ‘원격 설정’으로 표시할 수 있으며, 버튼 이름은 버전에 따라 달라집니다. macOS, Windows, Android에서 가져오는 원리는 같지만 시스템 프록시와 VPN 권한 설정은 후속 단계이므로 링크를 붙여넣기 전에 함께 켤 필요는 없습니다.
방법 1: URL로 원격 구독 가져오기
주소 붙여넣기, 설정 다운로드, 활성화
- 서비스 제공업체의 구독 페이지에서 현재 코어에 맞는 형식을 선택한 뒤 구독 주소를 복사하세요. 계정 관리 페이지 주소가 아니라 구독 링크 자체를 복사해야 합니다.
- 클라이언트에서 ‘구독’ 페이지를 여세요. ‘구독 링크’ 입력란이 있으면 주소를 바로 붙여넣습니다. 새 항목을 만드는 방식이라면 ‘추가’를 누르고 ‘원격’ 유형을 선택한 뒤 URL을 입력하세요.
- 주소 앞뒤에 공백, 줄바꿈, 한글 문장 부호가 붙지 않았는지 확인하세요. 원래 쿼리 매개변수는 유지하고 물음표 뒤의 내용을 임의로 삭제하지 마세요.
- ‘가져오기’를 누르거나 원격 설정을 저장한 뒤 설정 카드가 표시될 때까지 기다리세요. 성공하면 설정 이름이나 업데이트 시간이 보여야 합니다. 입력란만 비어 있는 상태라면 가져오기가 완료된 것이 아닙니다.
- 방금 가져온 설정을 선택한 다음 ‘프록시’ 페이지에서 정책 그룹을 확인하세요. 가져오기 성공과 활성화 성공은 별개입니다. 목록에 설정 카드가 있다고 해서 코어가 해당 설정으로 전환된 것은 아닙니다.
처음 다운로드할 때는 현재 네트워크에서 구독 서버에 접속할 수 있어야 합니다. 클라이언트의 다운로드 설정에 ‘직접 연결’, ‘시스템 프록시’ 등의 요청 방식이 있다면 실제 네트워크 환경에 맞게 선택하세요. 기존 프록시가 작동하지 않는 상태에서 해당 프록시를 통해 구독을 다운로드하면 업데이트에 프록시가 필요하고 프록시 작동에는 업데이트가 필요한 순환 문제가 생길 수 있습니다. 먼저 직접 연결로 업데이트하거나 구독 서버에 접속할 수 있는 네트워크를 사용해 보세요.
가져온 뒤 로그를 확인하고 웹 페이지 테스트
로그에 설정 파싱 오류가 있는지 확인하고, 정책 그룹에서 선택할 수 있는 노드가 있는지도 살펴보세요. 먼저 실행 모드를 ‘규칙’으로 설정하고 브라우저 트래픽을 처리해야 할 때 시스템 프록시를 켭니다. 일반 HTTP 프록시 설정만으로 모든 앱의 UDP 트래픽을 처리할 수는 없습니다. TUN을 켤지는 기본 연결 확인을 마친 뒤 따로 결정하세요.
설정에 mixed-port: 7890이 지정되어 있으면 HTTP와 SOCKS 클라이언트가 같은 로컬 포트에 연결할 수 있습니다. 다만 GUI 클라이언트의 포트 설정이 이 값을 덮어쓸 수 있습니다. 실제 수신 주소와 포트는 설정 페이지에 표시된 값을 기준으로 확인하세요. 온라인 예시만 보고 이 기기의 주소가 반드시 127.0.0.1:7890이라고 단정하면 안 됩니다.
방법 2: 클립보드에서 링크 또는 설정 텍스트 가져오기
먼저 클립보드에 어떤 내용이 있는지 확인한 뒤 알맞은 가져오기 기능을 사용하세요. macOS에서는 ⌘C로 복사하고 ⌘V로 붙여넣으며, Windows에서는 Ctrl+C와 Ctrl+V를 사용합니다. 단축키는 텍스트를 전달할 뿐, 노드 링크를 완전한 Clash 설정으로 자동 변환하지 않습니다.
| 복사한 내용 | 권장 입력 위치 | 확인할 사항 |
|---|---|---|
https://로 시작하는 구독 주소 | 원격 구독 URL 입력란 | 전체 토큰과 매개변수가 보존됐는지 확인 |
proxies: 등의 필드가 포함된 YAML 텍스트 | 로컬 설정 편집기 또는 텍스트 가져오기 | 들여쓰기가 온전한지, 설명 문구가 섞이지 않았는지 확인 |
ss://, vmess:// 등의 노드 URI | 클라이언트에서 명시적으로 제공하는 노드 가져오기 기능 | 프로토콜 지원 및 노드 변환 가능 여부 |
| 긴 Base64 문자열 | 출처와 디코딩 결과부터 확인 | 완전한 YAML이라고 단정할 수 없음 |
- 복사한 내용이 URL이라면 ‘구독’ 페이지로 돌아가 붙여넣고 가져오세요. 이후에는 원격 구독으로 관리하면 됩니다.
- 복사한 내용이 YAML 전체라면 로컬 설정을 새로 만들거나 편집하는 메뉴를 사용하세요. 클라이언트에 텍스트 입력 기능이 없다면 일반 텍스트 편집기에서
.yaml파일로 저장한 뒤 로컬 파일로 가져오세요. - 노드 URI 하나만 있다면 클라이언트가 해당 프로토콜의 노드 가져오기를 지원하는지 먼저 확인하세요. 완전한 설정에는 보통 정책 그룹과 규칙도 필요하므로 노드 매개변수만으로는 이를 대체할 수 없습니다.
메신저에서 코드를 복사할 때 코드 펜스, 줄 번호, ‘복사’ 같은 UI 문구가 함께 붙지 않도록 주의하세요. YAML은 공백으로 들여쓰기해야 하며 탭 문자가 들어가면 파싱에 실패할 수 있습니다. 텍스트 편집기의 스마트 따옴표나 서식 있는 텍스트 기능도 원본 내용을 바꿀 수 있으므로 UTF-8 일반 텍스트로 저장하세요.
방법 3: 로컬 YAML 파일 가져오기
‘구독’ 또는 ‘설정’ 페이지에서 ‘파일 가져오기’를 찾아 디스크에 있는 .yaml 또는 .yml 파일을 선택하세요. 일부 클라이언트는 파일을 끌어다 놓는 방식도 지원합니다. 가져온 뒤 해당 설정을 선택하고 로그와 정책 그룹을 확인하세요. 선택할 수 있는 파일 확장자는 클라이언트 화면의 안내를 따르세요.
먼저 파일 내용을 확인한 다음 사용할 수 있는지 판단
파일 이름이 config.yaml이라고 해서 실제 내용도 YAML인 것은 아닙니다. 다운로드 실패 후 HTML 페이지가 저장됐을 수도 있습니다. 텍스트 편집기로 열어 첫 부분이 <!doctype html>, 로그인 안내 또는 JSON 오류 메시지라면 YAML 들여쓰기를 계속 고치지 말고 다운로드 출처에서 인증과 접근 문제를 해결하세요.
아래는 설정 구조를 확인하기 위한 최소한의 직접 연결 예시입니다. 프록시 노드가 없어 필드 구성과 파싱 동작을 살펴보는 용도로만 사용할 수 있습니다. 이 예시로 구독 설정을 대체해도 프록시 연결은 되지 않습니다.
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
rules:
- MATCH,DIRECT
mixed-port는 로컬 HTTP와 SOCKS가 함께 사용하는 수신 포트입니다. 이미 사용 중인 포트라면 설정이나 클라이언트에서 포트를 변경해야 합니다.allow-lan: false는 LAN 접근을 제한합니다. 공유가 꼭 필요한 경우에만 수신 주소, 방화벽, 인증 설정을 확인하세요.MATCH,DIRECT는 나머지 트래픽을 직접 연결합니다. 프록시 노드를 선택했다는 뜻은 아닙니다.
로컬 파일은 스냅샷이며 원격 리소스는 계속 인터넷에 연결될 수 있음
일반 로컬 설정에는 구독 URL을 통한 자동 업데이트가 연결되어 있지 않습니다. 서비스 제공업체가 노드 비밀번호나 서버 주소를 변경하면 다시 가져오거나 로컬 설정을 직접 관리해야 합니다. 다만 파일에 원격 proxy-providers 또는 rule-providers가 선언되어 있으면 해당 리소스는 별도로 인터넷에 연결해 업데이트될 수 있습니다. ‘로컬 파일에서 가져오기’가 실행 중 완전한 오프라인 상태를 의미하지는 않습니다.
장기간 유지할 분류 설정은 클라이언트에서 제공하는 오버라이드, 병합 또는 스크립트 기능에 적용하는 것이 좋습니다. 원격 구독을 다운로드한 뒤 본문을 직접 수정하면 다음 업데이트에서 변경 사항이 덮어써질 수 있습니다. 오버라이드를 적용한 뒤에는 최종 설정을 확인해 정책 그룹 이름과 규칙 참조가 여전히 맞는지 점검하세요.
형식 비교: Clash YAML, Base64, 노드 URI
구독 URL은 콘텐츠를 가져오는 주소이고 YAML과 Base64는 콘텐츠의 구조나 인코딩 방식을 가리킵니다. 둘 다 HTTPS 주소여도 반환되는 내용은 완전히 다를 수 있습니다. ‘구독 페이지는 열리는데 가져오기에 실패’한다면 파일 확장자만 보지 말고 응답 본문을 먼저 확인하세요.
| 형식 | 일반적인 내용 | 가져오기 시 주의 사항 |
|---|---|---|
| 완전한 Clash YAML | 노드, 정책 그룹, 규칙 등의 설정 필드 | 코어가 해당 프로토콜과 필드를 지원해야 함 |
| 노드 제공자 YAML | 주로 proxies:가 포함된 노드 목록 | 보통 proxy-providers를 통해 기본 설정에 연결 |
| Base64 구독 | 인코딩된 여러 줄의 노드 URI가 일반적 | 클라이언트의 변환 기능이 필요하며 확장자만 바꿔서는 사용할 수 없음 |
| 단일 노드 URI | 서버 하나의 프로토콜 및 연결 매개변수 | 정책 그룹과 분류 규칙을 추가로 만들어야 하는 경우가 많음 |
Base64는 인코딩이지 암호화가 아니며, 통일된 프록시 설정 규격도 아닙니다. 디코딩하면 여러 줄의 노드 링크가 나올 수도 있고 다른 텍스트가 나올 수도 있습니다. 사용할 수 있는지는 실제 내용과 클라이언트 지원 여부에 달려 있습니다. 파일 이름을 .txt에서 .yaml로 바꿔도 형식이 변환되지는 않습니다.
Clash Meta(현재 이름: mihomo)가 지원하는 프로토콜과 필드 범위는 기존 Clash 코어와 완전히 같지 않습니다. 지원되지 않는 노드 유형이 있다면 현재 실행 중인 코어를 먼저 확인한 뒤 구독 제공처에서 적합한 형식을 선택하세요. 서비스 제공업체가 Clash와 mihomo용 링크를 모두 제공한다면 mihomo 코어에서는 호환된다고 명시된 링크를 우선 사용하세요.
자동 업데이트 주기: 클라이언트 구독과 provider를 각각 설정
원격 구독 카드의 메뉴에서 ‘편집’ 또는 업데이트 설정을 열고 ‘업데이트 간격’을 찾으세요. 먼저 입력란 옆의 단위를 확인해야 합니다. 분 단위라면 360을 입력해 6시간마다 업데이트할 수 있고, 초 단위라면 21600을 입력하세요. 두 값은 같은 시간 간격이므로 단위를 확인하지 않고 숫자만 그대로 입력하면 안 됩니다.
- 먼저 수동 업데이트를 한 번 실행해 현재 URL에 접속할 수 있고 내용이 정상적으로 파싱되는지 확인하세요.
- 서비스 제공업체의 권장 주기를 따르세요. 별도 안내가 없다면 우선 6시간으로 설정하고 노드 변경 빈도에 맞춰 조정하면 됩니다.
- 카드의 업데이트 시간과 업데이트 로그를 확인해 주기 설정이 저장만 된 것이 아니라 실제로 실행됐는지 살펴보세요.
- 컴퓨터가 절전 모드이거나 클라이언트가 종료된 동안에는 GUI 클라이언트의 예약 작업이 보통 실행되지 않습니다. 절전 해제 후 바로 업데이트되는지는 구현에 따라 다르므로 필요하면 수동으로 업데이트하세요.
mihomo 설정에서 HTTP 유형의 proxy-providers와 rule-providers는 각각 자체 interval 필드를 사용하며 단위는 초입니다. 예를 들어 interval: 21600은 6시간을 뜻합니다. 이 설정은 노드 목록이나 규칙 목록을 업데이트하며 클라이언트에 저장된 원격 구독 전체를 새로 고치는 것과는 다릅니다. 노드 상태 확인 주기인 health-check.interval도 별도로 설정됩니다.
모든 클라이언트에서 0을 자동 업데이트 끄기로 사용하는 것은 아닙니다. 비활성화 방법, 최소 허용 간격, 재시도 정책은 화면 안내를 따르세요. 구독 트래픽과 만료일은 보통 서버가 반환하는 정보이며 모든 제공처에서 확인할 수 있는 것은 아닙니다. 표시되지 않는다고 해서 설정이 잘못됐다고 단정할 수는 없습니다.
자주 발생하는 오류: 요청, 파싱, 활성화 순으로 확인
다운로드 실패: HTTP 상태 코드와 네트워크부터 확인
- 401 또는 403: 토큰이 만료됐는지, 구독 기간이 끝났는지, 서버에서 접근을 제한하는지 확인하세요. 403은 접근 정책 때문에 발생할 수도 있으므로 상태 코드만으로 원인을 단정하지 마세요.
- 404: 주소 경로를 빠짐없이 복사했는지, 서비스 제공업체가 구독 주소를 변경했는지 확인하세요.
- 시간 초과 또는 인증서 오류: 네트워크, 시스템 시간, 요청 경로를 확인하세요. 인증서 검증을 계속 꺼 두는 방식으로 문제를 가리지 마세요.
파싱 실패: 오류가 발생한 줄 주변의 원본 내용 확인
YAML 오류가 발생하면 들여쓰기, 콜론 뒤 공백, HTML 문구가 섞였는지 확인하세요. 알 수 없는 프록시 유형이나 필드 오류라면 코어와의 호환성을 확인해야 합니다. 서버가 요청의 User-Agent에 따라 다른 형식을 반환할 수 있으므로 브라우저에서 정상적으로 열리더라도 클라이언트가 같은 내용을 받았다고 볼 수 없습니다. 클라이언트 다운로드 로그도 함께 확인하세요.
설정은 유효하지만 연결되지 않을 때: 적용된 설정과 트래픽 처리 방식 확인
새 설정을 선택했는지, 정책 그룹이 실제로 사용할 수 있는 노드를 가리키는지 확인한 다음 시스템 프록시나 TUN이 예상대로 트래픽을 처리하는지 살펴보세요. 구독 가져오기, 설정 파싱, 노드 연결, DNS 조회는 각각 다른 단계입니다. 노드 하나의 지연 시간 테스트 결과만으로 모든 사이트에 접속할 수 있다고 판단할 수는 없습니다. 연결 패널에서 대상 도메인, 일치한 규칙, 아웃바운드 정책을 확인하면 반복해서 다시 가져오는 것보다 원인을 좁히기 쉽습니다.
정상 작동이 확인된 설정을 하나 보관하고 업데이트 전후의 설정 이름, 업데이트 시간, 오류 메시지를 기록해 두세요. 도움을 요청할 때는 클라이언트 이름, 코어 유형, 가져오기 경로, 민감 정보를 가린 로그를 제공하면 됩니다. 전체 구독 주소와 노드 비밀번호는 문의 내용에 공개하지 마세요.