구독 내용을 먼저 확인한 뒤 가져오기 방법을 선택하세요
구독 주소를 받았다면 클라이언트에서 원격 URL 가져오기를 이용하는 것이 가장 간단합니다. QR 코드는 기기 간 주소를 전달할 때, 로컬 YAML은 오프라인으로 설정을 옮기거나 내용을 확인할 때 적합합니다. 세 방법은 설정을 클라이언트에 전달하는 방식만 다르며, 클라이언트 코어가 지원하는 프로토콜을 바꾸거나 구독 형식을 자동으로 수정하지는 않습니다.
가져오기 전에 구독 제공업체 페이지에서 Clash 또는 Clash Meta / mihomo 형식을 선택한 다음 전체 주소를 복사하세요. 계정 로그인 페이지나 요금제 관리 페이지는 구독 주소와 다릅니다. 주소의 물음표 뒤에 붙는 쿼리 매개변수에는 인증 토큰이 포함될 수 있으므로 복사할 때 삭제하지 말고, 끝에 문장 부호가 붙지 않도록 주의하세요.
| 방법 | 적합한 상황 | 업데이트 방식 |
|---|---|---|
| 원격 URL | 접속 가능한 Clash 설정 주소가 있는 경우 | 원본 주소를 유지해 수동으로 업데이트할 수 있습니다. 자동 업데이트는 클라이언트 설정에 따라 달라집니다. |
| QR 코드 | 다른 기기에서 구독 주소나 노드 정보를 읽어 올 때 | QR 코드에 원격 주소가 담겨 있다면 가져온 뒤 원격 설정으로 업데이트할 수 있습니다. |
| 로컬 YAML | 다운로드한 전체 설정을 옮기거나 설정 내용을 점검할 때 | 로컬 설정은 일반적으로 원래 구독 주소에서 자동으로 업데이트되지 않습니다. 설정에 포함된 원격 provider는 별도로 업데이트할 수 있습니다. |
URL 가져오기: 설정을 다운로드한 뒤 활성화하세요
데스크톱 클라이언트에서는 원격 설정을 보통 시스템 프록시 설정이 아닌 ‘구독’ 또는 ‘설정’ 페이지에서 관리합니다. 아래 설명은 일반적인 메뉴 이름을 기준으로 합니다. 버전이나 인터페이스 언어에 따라 버튼 이름이 다를 수 있으니 현재 클라이언트에 표시되는 내용을 확인하세요.
Windows·macOS·Linux 데스크톱
- Clash Verge Rev를 예로 들면, 사이드바에서 ‘구독’을 열고 구독 링크 입력란에 전체 URL을 붙여 넣은 다음 ‘가져오기’를 클릭합니다. ‘새로 만들기’ 대화상자가 표시되면 원격 유형을 선택하고 URL을 입력하세요.
- 다운로드와 파싱이 끝날 때까지 기다립니다. 목록에 새 설정이 나타나고 업데이트 시간이 변경됐는지 확인하세요. 빈 설정 카드만 표시된다고 해서 내용까지 정상적으로 가져온 것은 아닙니다.
- 해당 설정을 클릭해 현재 설정으로 지정한 다음 ‘프록시’ 페이지에서 정책 그룹을 확인하세요. 설정을 바꾸면 정책 그룹 이름과 규칙이 달라질 수 있으므로 이전에 선택한 노드만 확인해서는 안 됩니다.
- ‘설정’에서 시스템 프록시를 켜거나 필요에 따라 TUN을 활성화하세요. 먼저 네트워크 옵션을 여러 개 동시에 바꾸지 말고, 명확한 트래픽 처리 방식 하나만 사용해 확인하는 것이 좋습니다.
FlClash 같은 클라이언트도 설정 관리에서 원격 설정을 추가한 뒤 현재 사용할 항목으로 지정해야 합니다. macOS에서 ClashX Meta를 사용하는 경우 메뉴 막대 앱의 ‘설정’ → ‘관리형 설정’에서 관리 메뉴를 찾을 수 있습니다. 클라이언트마다 메뉴 경로가 다르므로 다른 앱의 경로를 그대로 적용하지 마세요. ‘코어가 실행 중’이라는 표시만으로 새 구독이 활성화됐다고 판단해서도 안 됩니다.
Android·iOS 모바일
- Clash for Android의 일반적인 경로는 ‘설정’ → ‘+’ → ‘URL에서 가져오기’입니다. 이름과 구독 주소를 입력해 저장한 뒤 원격 설정 다운로드가 완료될 때까지 기다리세요.
- 설정 목록으로 돌아가 새 항목을 선택한 다음 홈 화면에서 시작하세요. Android에서 처음 VPN 연결을 만들 때는 시스템 권한이 필요합니다. 다른 VPN이 연결을 사용 중이라면 먼저 연결을 끊으세요.
- 다른 Android 또는 iOS 클라이언트를 사용한다면 ‘설정’이나 ‘구독’에서 URL 가져오기를 선택하고, 먼저 해당 구독 형식과 노드 프로토콜을 지원하는지 확인하세요. iOS 클라이언트가 반드시 Clash YAML을 사용하는 것은 아니므로 ‘구독’ 버튼이 있다는 이유만으로 호환된다고 판단할 수 없습니다.
원격 가져오기가 실패하면 먼저 구체적인 오류를 확인하세요. 연결 시간 초과는 네트워크 경로 문제일 가능성이 높습니다. HTTP 401 또는 403은 인증 정보 만료, 접근 제한, 서버 차단 등이 원인일 수 있습니다. 다운로드는 성공했지만 파싱 오류가 발생한다면 응답 내용과 코어 호환성을 점검하세요. 원인마다 해결 방법이 다르므로 운에 맡기고 가져오기를 반복해서는 안 됩니다.
QR 코드 가져오기: 구독 주소와 단일 노드 구분
QR 코드는 텍스트를 담는 수단일 뿐입니다. HTTPS 구독 주소가 들어 있을 수도 있고, ss://, vmess://, trojan://로 시작하는 단일 노드 URI가 들어 있을 수도 있습니다. 스캔에 성공했다는 것은 텍스트를 읽었다는 뜻이지, 클라이언트에서 전체 설정으로 사용할 수 있다는 뜻은 아닙니다.
- 클라이언트의 설정 추가 화면에서 QR 코드 스캔 메뉴를 찾으세요. 카메라 권한을 요청하면 시스템 안내에 따라 허용합니다. QR 코드가 사진첩에 저장돼 있다면 이미지 인식 기능을 제공하는 클라이언트에서 사진을 선택해 불러오세요.
- 인식한 뒤 내용의 유형을 확인하세요. HTTPS 주소라면 신뢰할 수 있는 구독 출처인지 확인하고 원격 설정으로 저장합니다. 단일 노드 URI라면 클라이언트에서 지원하는 노드 가져오기 기능을 이용하세요.
- 가져온 뒤 설정 목록과 정책 그룹을 확인하세요. 단일 노드만 가져오면 노드 하나만 추가될 수 있으며 규칙, DNS, 정책 그룹은 포함되지 않습니다. 이 경우 클라이언트에서 제공하는 설정 템플릿과 함께 사용해야 합니다.
같은 기기에 사진 인식 기능이 없다면 원본 구독 URL을 직접 복사하는 편이 안전합니다. QR 코드를 스캔하려고 공개 인식 사이트에 구독 QR 코드를 업로드하지 마세요. 클라이언트에서 ‘지원하지 않는 QR 코드 내용’이라고 표시되면 구독 페이지에서 Clash 형식을 선택하세요. 노드 QR 코드를 원격 설정 메뉴에 반복해서 가져오지 마세요.
로컬 YAML 가져오기와 설정 이전
먼저 파일을 UTF-8 인코딩의 .yaml 또는 .yml로 저장한 다음 클라이언트에서 ‘로컬 파일’, ‘파일에서 가져오기’ 등의 메뉴를 선택하세요. Clash for Android에서는 보통 ‘설정’ → ‘+’에서 파일 가져오기를 찾을 수 있습니다. 데스크톱에서는 설정 관리 페이지에서 로컬 설정을 새로 만들거나 파일을 가져오면 됩니다.
파일 확장자가 실제 내용을 결정하지는 않습니다. 브라우저에서 받은 로그인 페이지의 이름을 config.yaml로 바꿔도 설정으로 사용할 수 없습니다. 텍스트 편집기로 파일의 첫 부분을 확인하세요. <!DOCTYPE html>, 로그인 양식 또는 웹사이트 오류가 보이면 YAML 들여쓰기를 계속 수정하지 말고 구독 제공처에서 다시 받아야 합니다.
이전 전 확인할 세 가지 항목
- 구성: 설정에 사용할 수 있는 아웃바운드 정의와 해당 정책이 있어야 합니다.
proxies:만 있는 노드 조각은 정책 그룹과 규칙이 포함된 전체 구독 설정과 다릅니다. - 종속 파일:
proxy-providers와rule-providers에 지정된 로컬 경로를 확인하세요. 기본 파일을 복사해도 참조되는 규칙 파일과 노드 파일까지 자동으로 복사되지는 않습니다. - 호환성: Clash Meta / mihomo의 확장 필드와 프로토콜을 구형 Clash 코어가 지원하지 않을 수 있습니다. ‘지원하지 않는 프록시 유형’ 오류가 나타나면 코어의 지원 범위를 확인하세요. 필드 이름만 삭제해서는 해결되지 않습니다.
로컬 파일을 가져온 뒤에도 해당 설정을 직접 선택해야 합니다. 외부 편집기에서 파일을 수정했다면 클라이언트에서 제공하는 다시 불러오기 기능도 실행하세요. 일부 클라이언트는 가져올 때 파일을 복사하므로 원래 경로의 파일을 계속 읽지 않을 수 있습니다.
Clash YAML과 Base64 구독의 차이
‘구독 링크’는 가져오는 경로를 뜻할 뿐, 특정 파일 형식을 가리키는 말이 아닙니다. 같은 HTTPS 주소라도 서버 매개변수에 따라 Clash YAML, Base64로 인코딩된 노드 목록, 다른 클라이언트용 JSON 설정이 반환될 수 있습니다. 브라우저에서 열린다고 해서 현재 클라이언트가 파싱할 수 있는 것은 아닙니다.
| 내용 유형 | 일반적인 특징 | 가져올 때 주의할 점 |
|---|---|---|
| Clash YAML | 주요 키: proxies, proxy-groups, rules | 전체 설정인지 provider 노드 목록인지 확인하고 코어의 지원 범위도 살펴보세요. |
| Base64 노드 목록 | 디코딩하면 보통 노드 URI가 한 줄씩 나열됩니다. | 전체 라우팅 규칙이 없는 경우가 많으며, 파일 확장자만 바꿔 YAML로 변환할 수 없습니다. |
| 단일 노드 URI | ss://, trojan:// 등의 프로토콜 접두사로 시작합니다. | 클라이언트의 노드 가져오기 기능이 필요합니다. 원격 설정 주소로 간주해서는 안 됩니다. |
| 기타 JSON 설정 | JSON 객체 또는 배열로 노드와 설정을 구성합니다. | 해당 코어를 사용하거나 이 형식을 명시적으로 지원하는 가져오기 기능을 이용하세요. |
Base64는 인코딩 방식이지 노드 프로토콜이나 암호화 보호 기능이 아닙니다. 서비스 제공업체가 여러 내보내기 형식을 제공한다면 기본 Clash 또는 mihomo 설정을 우선 사용하세요. 변환이 꼭 필요하다면 신뢰할 수 있는 로컬 도구나 직접 구축한 변환 서비스를 이용하는 것이 좋습니다. 전체 구독 주소를 전달받는 변환 서비스는 노드 인증 정보에도 접근할 수 있습니다.
혼동하기 쉬운 또 다른 항목은 proxy-provider 파일입니다. 유효한 YAML 파일일 수 있지만, 일반적으로 proxies 목록만 포함하며 기본 설정에서 proxy-providers로 참조해야 합니다. 이를 전체 설정으로 직접 활성화하면 기대한 정책 그룹과 규칙이 없을 수 있습니다. 반대로 전체 설정이 provider에 크게 의존해 노드를 직접 나열하지 않을 수도 있으므로, 특정 키 하나만 찾아 파일의 유효성을 판단해서는 안 됩니다.
가져온 설정이 적용되지 않을 때 확인할 네 가지 지점
1. 설정이 실제로 로드됐나요?
현재 선택된 설정 이름과 가장 최근의 로드 로그부터 확인하세요. 로그에 YAML 파싱 오류가 표시되면 오류 행의 들여쓰기, 콜론, 따옴표를 점검합니다. YAML 들여쓰기에는 탭이 아닌 공백을 사용해야 합니다. 규칙에서 참조하는 정책 그룹 이름도 설정에 적힌 이름과 일치해야 합니다. 다운로드는 성공했지만 로드에 실패하면 클라이언트가 이전 설정을 계속 사용할 수 있습니다.
2. 앱이 올바른 프록시 포트에 연결됐나요?
시스템 프록시가 꺼져 있으면 설정을 가져왔다는 이유만으로 일반 브라우저 트래픽이 자동으로 코어에 전달되지는 않습니다. 아래는 포트 관계를 설명하기 위한 설정 일부이며, 단독으로 실행할 수 있는 구독 설정은 아닙니다.
mixed-port: 7890
mode: rule
log-level: info
mixed-port: 7890은 하나의 수신 포트에서 HTTP와 SOCKS 프록시 연결을 모두 받을 수 있다는 뜻입니다. 현재 설정에서 이 포트를 실제로 사용한다면 앱 프록시를 직접 설정할 때 127.0.0.1:7890을 입력할 수 있습니다. 실제 값은 클라이언트의 실행 설정을 확인하세요. 일부 클라이언트는 구독 설정의 포트를 덮어씁니다. 컨트롤 인터페이스 포트는 트래픽 프록시 포트와 다르므로 브라우저 프록시 설정에 입력하면 안 됩니다.
3. 정책 그룹에 사용할 수 있는 출구가 있나요?
정책 그룹에서 실제 노드를 선택한 다음 지연 시간을 테스트하세요. 결과가 timeout이면 먼저 테스트 주소와 노드 연결 상태를 확인합니다. 120 ms 같은 값이 표시되더라도 해당 테스트 요청이 완료됐다는 뜻일 뿐, 모든 웹사이트에 접속할 수 있다는 보장은 아닙니다. 대상 웹사이트를 열면서 연결 기록의 규칙, 정책 그룹, 최종 출구를 확인해야 해당 요청이 어떤 경로를 거쳤는지 알 수 있습니다.
4. 트래픽 처리 방식과 DNS가 일치하나요?
규칙 모드에서는 규칙 순서에 따라 출구가 결정됩니다. 대상이 DIRECT에 매칭되면 프록시 노드를 선택했더라도 직접 연결될 수 있습니다. TUN 모드는 라우팅 조건에 맞는 트래픽을 처리하지만 적절한 권한과 라우팅 설정이 필요합니다. 호환되지 않는 구독을 사용할 수 있는 설정으로 바꿔 주지는 않습니다. DNS 오류가 발생하면 먼저 확인 로그를 살펴본 뒤 설정의 DNS 업스트림, Fake-IP 옵션, 필터 항목을 점검하세요. 여러 매개변수를 무작정 바꾸는 것은 피해야 합니다.
- 목록에 설정이 없음: 다운로드 결과와 구독 주소, 형식을 확인하세요.
- 설정은 있지만 예상한 정책 그룹이 없음: 노드 조각만 가져왔거나 이전 설정을 사용 중인지 확인하세요.
- 정책 그룹에 노드는 있지만 연결 시간 초과: 노드 상태와 프로토콜 호환성, 기본 네트워크를 점검하세요.
- 테스트는 성공했지만 브라우저에 변화가 없음: 시스템 프록시, TUN 트래픽 처리, 브라우저 자체 프록시 설정, 연결 로그를 확인하세요.
업데이트를 유지하고 이전 설정으로 되돌릴 수 있게 준비하세요
첫 가져오기가 정상적으로 작동하는지 확인한 뒤 자동 업데이트를 설정하세요. 설정 전체의 구독 새로고침과 provider의 interval은 서로 다른 기능입니다. 전자는 클라이언트가 원격 설정 전체를 가져오고, 후자는 코어가 설정에서 참조하는 원격 리소스를 업데이트합니다. provider의 초 단위 간격을 클라이언트 구독 업데이트 주기로 착각하지 마세요. 클라이언트 인터페이스에서는 분이나 시간 단위로 표시될 수 있습니다.
먼저 전체 구독의 업데이트 간격을 24시간으로 설정하고 제공업체의 안내에 맞게 조정할 수 있습니다. 모바일 백그라운드 새로고침은 시스템 절전 정책의 영향을 받으므로 주기를 설정해도 앱이 종료된 뒤 정시에 실행된다는 보장은 없습니다. 업데이트 전에 정상적으로 작동하는 설정을 백업하세요. 업데이트 후에는 정책 그룹과 규칙, 현재 출구를 확인합니다. 다시 가져오거나 클라이언트를 바꿔야 한다면 사용 가이드의 구독 설정 방법을 참고한 뒤 연결을 확인하세요.