입문 가이드 예상 읽기 시간 10분

Clash 구독 링크 가져오기: YAML 설정과 Base64 구독 형식 차이

구독 URL 복사부터 클라이언트에서 업데이트하는 방법까지 단계별로 안내합니다. Clash YAML과 Base64 노드 목록의 형식 호환성, 업데이트 주기도 함께 알아봅니다.

가져오기 전에 구독 URL, 설정 파일, 노드 링크부터 구분하기

Clash 구독을 가져오지 못하는 흔한 원인은 네트워크가 끊긴 것이 아니라, 서로 다른 종류의 데이터를 같은 메뉴에서 불러오려는 데 있습니다. 구독 URL은 데이터를 가져오는 주소이고, YAML은 설정을 구성하는 형식이며, Base64는 인코딩 방식입니다. 이 셋은 서로 다른 계층이므로 링크 모양이 비슷하다고 호환된다고 판단할 수 없습니다.

  • 원격 구독 URL: 보통 https://로 시작하며, 클라이언트가 접속해 설정이나 노드 목록을 가져옵니다. URL에 계정 토큰이 포함될 수 있으므로 인증 정보처럼 안전하게 보관하세요.
  • 로컬 설정 파일: 일반적인 확장자는 .yaml 또는 .yml이며, ‘파일 가져오기’나 로컬 설정 메뉴에서 불러옵니다. 로컬 사본만 가져오므로 보통 원래 서비스 제공업체의 업데이트를 자동으로 받지 않습니다.
  • 단일 노드 공유 링크: ss://, vmess:// 또는 trojan://으로 시작하는 문자열이 이에 해당합니다. 일부 클라이언트는 별도의 링크 해석 기능을 제공하지만, 그렇다고 Clash 코어가 이를 완전한 YAML 설정으로 바로 읽을 수 있는 것은 아닙니다.

작업을 시작하기 전에 클라이언트 이름과 ‘정보’ 화면에 표시된 코어 이름을 확인하세요. Clash, Clash Meta(현재 mihomo) 및 다른 프록시 코어는 지원하는 프로토콜과 설정 항목이 완전히 같지 않습니다. 서비스 제공업체가 ‘Clash’, ‘Clash Meta’, ‘범용 구독’ 등의 형식을 제공한다면 현재 코어에 맞는 형식을 선택한 다음 URL을 복사하세요.

YAML 설정과 Base64 구독 형식의 차이

완전한 Clash YAML 설정에는 보통 노드, 프록시 그룹, 규칙이 포함되며 각각 proxies, proxy-groups, rules 등의 필드로 구성됩니다. proxy-providers를 사용해 외부 노드 리소스를 참조할 수도 있습니다. 반면 Base64 노드 구독은 여러 줄의 공유 링크를 통째로 인코딩하는 방식이 일반적이며, 완전한 Clash 라우팅 규칙과 프록시 그룹 구조는 보통 포함하지 않습니다.

데이터 유형구분 방법가져올 메뉴
완전한 Clash YAML노드 또는 provider 정의가 있고 프록시 그룹, 규칙 등이 설정됨원격 설정 또는 로컬 설정 가져오기
Base64 노드 목록긴 문자열인 경우가 많으며 디코딩하면 여러 줄의 프로토콜 공유 링크가 나타남해당 형식을 명시적으로 지원하는 클라이언트에서 해석하거나 신뢰할 수 있는 변환 절차 사용
노드 provider YAML일반적으로 최상위 proxies:와 노드 항목만 포함설정 내 proxy-providers
로그인 페이지 또는 오류 페이지HTML 태그, 로그인 안내 또는 JSON 오류 메시지가 나타남프록시 설정으로 가져올 수 없음

완전한 설정과 provider 파일은 서로 바꿔 쓸 수 없습니다

proxies:만 있는 파일은 유효한 노드 리소스일 수 있지만, 바로 사용할 수 있는 완전한 설정은 아닐 수 있습니다. 이를 완전한 설정으로 불러오면 구문 분석에 성공하더라도 예상한 프록시 그룹과 규칙이 없을 수 있습니다. 반대로 노드 리소스만 받는 메뉴에 완전한 설정을 넣으면 형식 오류가 발생할 수 있습니다. 파일 확장자만 보지 말고 가져오기 메뉴가 어떤 형식을 요구하는지 확인하세요.

아래는 구조를 확인하기 위한 최소한의 로컬 설정 예시입니다. 프록시 노드는 포함하지 않으며 모든 연결은 직접 연결됩니다. YAML의 계층 구조를 보여 주기 위한 예시일 뿐, 서비스 제공업체 구독을 대신하는 인터넷 연결 설정은 아닙니다.

mixed-port: 7890
mode: rule
log-level: info

proxy-groups:
  - name: 수동 선택
    type: select
    proxies:
      - DIRECT

rules:
  - MATCH,수동 선택

Base64 디코딩은 Clash 설정 변환이 아닙니다

Base64 디코딩은 원래 텍스트를 복원할 뿐, 프록시 그룹이나 DNS 설정, 라우팅 규칙을 자동으로 생성하지 않습니다. 형식을 제대로 변환하려면 노드 필드를 해석해 대상 코어가 받아들일 수 있는 설정을 만들어야 합니다. 변환에 성공해도 대상 코어가 해당 프로토콜이나 매개변수를 지원하지 않으면 노드를 사용할 수 없습니다. 중간 변환으로 설정 항목이 누락되는 일을 줄이려면 서비스 제공업체에 기본 Clash 또는 mihomo 형식을 요청하세요.

Clash 구독 링크 가져오기: URL 복사부터 설정 적용까지

클라이언트 버전에 따라 메뉴 이름이 달라질 수 있습니다. 아래 안내는 ‘구독’ 또는 ‘설정’ 화면에서 원격으로 가져오는 절차를 기준으로 합니다. 파일만 받는 메뉴라면 이전 화면으로 돌아가 URL 입력란을 찾으세요. 링크를 텍스트 파일로 저장해 YAML인 것처럼 불러오면 안 됩니다.

  1. 맞는 형식의 URL을 복사합니다. 서비스 제공업체 페이지에서 Clash 또는 Clash Meta/mihomo 메뉴를 선택하세요. 구독 URL을 복사해야 하며, 관리 페이지 첫 화면이나 결제 페이지, 문서 URL을 복사하면 안 됩니다. 앞뒤에 공백이나 줄바꿈, 한국어 문장부호가 섞이지 않았는지도 확인하세요.
  2. 원격 설정 메뉴로 이동합니다. 클라이언트에서 ‘구독’ 또는 ‘설정’ 화면을 여세요. URL 입력란이 있으면 붙여 넣고 ‘가져오기’를 선택합니다. ‘새로 만들기’로 추가하는 화면이라면 원격 유형을 선택하고 URL을 입력한 뒤 저장하세요. 로컬 파일 유형은 선택하지 마세요.
  3. 다운로드와 구문 분석이 끝날 때까지 기다립니다. 설정 카드가 생성됐는지, 업데이트 시간이 표시되는지, 알림 영역에 YAML 구문 분석 오류가 있는지 확인하세요. 카드가 하나 나타났다고 다운로드가 완료된 것은 아니므로 상태를 살펴봐야 합니다.
  4. 새 설정을 선택해 적용합니다. 설정 목록에 여러 항목을 저장할 수 있지만 실제로 적용되는 것은 현재 선택된 설정입니다. 가져온 뒤 선택 표시를 확인하고, 프록시 화면에 예상한 노드와 프록시 그룹이 나타나는지도 살펴보세요.
  5. 규칙 모드를 사용하고 출구 노드를 선택합니다. 먼저 실행 모드를 ‘규칙’로 설정한 다음 구독에 정의된 선택 그룹에서 노드를 고르세요. 일부 구독은 기본값이 DIRECT일 수 있습니다. 이 경우 트래픽이 직접 연결된다고 해서 노드가 작동하지 않는다는 뜻은 아닙니다.
  6. 앱 트래픽을 확인합니다. 시스템 프록시를 사용하는 경우 클라이언트의 ‘시스템 프록시’를 켠 다음 시스템 프록시를 따르는 브라우저에서 테스트하세요. TUN으로 트래픽을 처리한다면 TUN 권한과 라우팅 상태를 별도로 확인해야 합니다. 구독을 가져왔다고 TUN까지 자동으로 활성화되는 것은 아닙니다.

로컬 수신 포트와 구독 URL은 서로 다릅니다. 예시의 7890은 혼합 프록시 수신 포트이지 구독 서버 포트가 아닙니다. 로그에 address already in use가 표시되면 구독 토큰을 반복해서 재설정하지 말고, 다른 프록시 프로세스가 같은 포트를 사용 중인지 확인하세요.

구독 업데이트 주기: 클라이언트 업데이트와 provider 업데이트 구분하기

원격 설정 업데이트는 보통 클라이언트 외부 프로그램이 담당합니다. 설정 전체를 주기적으로 다시 다운로드한 다음 클라이언트 로직에 따라 다시 불러옵니다. 설정의 proxy-providers는 해당 기능을 지원하는 코어가 노드 리소스를 업데이트합니다. 두 기능은 별도의 타이머로 작동하므로 화면에 표시된 ‘업데이트 주기’를 YAML의 interval과 같은 의미로 보면 안 됩니다.

클라이언트의 원격 설정 업데이트

  • 처음 가져온 뒤: 먼저 수동으로 한 번 업데이트해 URL이 유효하고 구문 분석이 정상인지 확인한 다음 자동 업데이트를 켜세요.
  • 일반적인 사용: 24시간마다 한 번 업데이트하는 것으로 시작하고, 서비스 제공업체의 안내를 따르세요. 노드가 자주 바뀐다면 6시간 주기를 고려할 수 있지만 특별한 이유 없이 매분 업데이트하도록 설정하지 마세요.
  • 입력 단위를 확인하세요: 24시간은 1440분, 86400초입니다. 입력 단위가 분인 화면에 86400을 넣으면 하루 주기가 아닙니다.
  • 실행 조건에 유의하세요: 일부 클라이언트는 앱이 실행 중일 때만 예약 작업을 수행합니다. 기기 절전, 네트워크 연결 끊김, 백그라운드 제한으로 업데이트가 지연될 수 있으므로 마지막으로 업데이트에 성공한 시간을 기준으로 확인하세요.

mihomo 노드 provider 업데이트

mihomo의 HTTP 유형 노드 provider는 interval로 리소스 업데이트 주기를 설정하며 단위는 초입니다. 예를 들어 하루는 interval: 86400입니다. 이 설정은 해당 provider가 참조하는 노드 리소스만 업데이트하며, 상위 설정의 모든 규칙을 새로고침하지는 않습니다. health-check의 주기는 노드 연결 상태를 확인하는 간격이므로 구독 업데이트 주기와도 다릅니다.

구독에 proxy-providers가 없다면 ‘자동 업데이트’를 켜려고 이 항목을 임의로 추가하지 마세요. 클라이언트의 원격 설정 예약 업데이트 기능을 사용하면 됩니다. 여러 단계로 설정을 참조한다면 상위 설정과 각 provider의 마지막 업데이트 시간을 각각 확인하세요.

구독 가져오기 오류 해결: HTTP, YAML, 코어 호환성 점검

한 번에 한 단계씩 확인하세요. 먼저 요청으로 올바른 데이터를 받았는지 살펴보고, 현재 코어가 해당 데이터를 해석할 수 있는지 확인한 다음 노드 연결을 점검합니다. 아래 오류 메시지를 확인하면 막연히 ‘가져오기가 안 된다’고 할 때보다 원인을 좁히기 쉽습니다.

증상 또는 오류우선 확인할 항목다음 조치
HTTP 401 또는 403토큰 만료, 권한 제한, 계정 상태 또는 접근 정책관리 페이지에서 URL을 다시 복사하고 서비스 제공업체의 공지를 확인하세요
HTTP 404URL이 잘렸거나 경로가 바뀌었거나 구독 메뉴가 폐지됨전체 URL을 다시 받아오고 API 경로를 임의로 추측하지 마세요
HTTP 429짧은 시간에 요청이 많아 제한에 걸림연속으로 누르지 말고 서버 안내에 따라 기다린 뒤 다시 시도하세요
시간 초과 또는 DNS 조회 실패구독 도메인의 DNS 조회와 현재 네트워크에서 서버까지의 연결 상태네트워크, 시스템 시간, 클라이언트 로그를 확인하세요
YAML 구문 분석 오류HTML이 반환됐거나 Base64 텍스트 또는 잘못된 들여쓰기가 포함됨구독 형식과 오류가 표시된 줄 주변의 내용을 확인하세요
지원하지 않는 프록시 유형코어가 노드 프로토콜을 지원하지 않거나 설정 형식을 잘못 선택함코어의 지원 범위를 확인하고 호환되는 구독 메뉴를 다시 선택하세요

브라우저에서 열린다고 해서 클라이언트도 같은 데이터를 받는 것은 아닙니다

브라우저는 로그인 쿠키를 보낼 수 있지만 클라이언트 요청에는 보통 쿠키가 없습니다. 일부 서버는 User-Agent에 따라 다른 내용을 반환하기도 합니다. HTTP 200은 요청에 대한 응답을 받았다는 뜻일 뿐, 응답이 Clash 설정이라는 의미는 아닙니다. 본문이 <!DOCTYPE html>로 시작한다면 로그인 리디렉션, 접근 확인 또는 잘못된 URL부터 해결하세요. YAML 들여쓰기를 고쳐도 해결되지 않습니다.

YAML 오류는 규칙을 고치기 전에 원문부터 확인하세요

YAML 계층 구조에는 공백 들여쓰기를 사용하며 탭으로 대체할 수 없습니다. 채팅 앱에 복사하면 영문 콜론이 전각 콜론으로 바뀌거나 들여쓰기가 사라질 수 있습니다. 원격 구독 원문에 문법 오류가 있다면 오류가 난 줄을 개인정보가 드러나지 않도록 처리해 제공업체에 문의하세요. 실행되게 하려고 설정 블록 전체를 삭제하면 규칙이나 DNS 설정이 사라질 수 있습니다.

구독은 정상인데 웹페이지가 열리지 않을 때

먼저 클라이언트의 연결 기록을 확인하세요. 대상 요청이 없다면 시스템 프록시나 TUN이 트래픽을 처리하는지 점검합니다. 요청이 있다면 적용된 규칙, 프록시 그룹, 실제 출구를 확인하세요. 노드 지연 시간 테스트가 성공해도 특정 테스트 요청만 연결된다는 뜻이며, 모든 도메인이나 UDP 트래픽, 앱의 연결까지 보장하지는 않습니다. 구독 다운로드 성공, 노드 사용 가능 여부, 앱의 프록시 사용 여부는 각각 별도로 확인해야 합니다.

형식 변환 및 업데이트 후 최종 점검

서비스 제공업체가 원하는 형식을 제공하지 않고 클라이언트도 원본 형식을 지원하지 않을 때만 구독 변환을 고려하세요. 변환기가 전체 구독 URL과 노드 인증 정보를 처리할 수 있으므로 로컬에서 실행할 수 있고 출처가 분명한 도구를 우선 사용하세요. URL 하나를 시험하려고 익숙하지 않은 변환 사이트 여러 곳에 인증 정보를 입력하지 마세요.

  1. 대상 코어를 확인합니다: 출력 형식이 기존 Clash 호환 설정인지 mihomo 설정인지 확인하고 대상 프로토콜의 지원 여부도 점검하세요. 변환은 표현 형식만 바꿀 수 있으며 오래된 코어에 새 프로토콜 구현을 추가하지는 못합니다.
  2. 규칙 출처를 확인합니다: 변환 과정에서 프록시 그룹과 라우팅 규칙이 바뀔 수 있습니다. 기본 출구, 마지막 MATCH의 연결 대상, 원래 필요한 직접 연결 규칙이 유지되는지 확인하세요.
  3. 이후 업데이트 방법을 확인합니다: 변환한 로컬 파일을 한 번 가져오면 일반적으로 그 시점의 정적 사본만 사용할 수 있습니다. 계속 업데이트하려면 원본 구독을 가져오고 변환한 뒤 설정을 다시 불러오는 작업을 누가 정기적으로 수행할지 정해야 합니다.
  4. 업데이트 결과를 확인합니다: 수동 업데이트 후 성공 시간이 바뀌었는지, 노드 수가 적절한지, 현재 설정이 계속 선택되어 있는지 확인하세요. 그런 다음 직접 연결되어야 하는 대상과 프록시를 사용해야 하는 대상을 각각 테스트하고 연결 기록에서 출구를 확인합니다.

실행 모드, DNS 또는 TUN의 세부 설정을 확인하려면 기술 참고 자료를 참고하세요. 처음 사용하는 방법을 단계별로 따라 하려면 입문 튜토리얼부터 시작하세요. 먼저 구독 형식과 설정 선택을 확인한 다음 트래픽 처리 방식을 점검하면 문제 해결 과정이 훨씬 간단해집니다.

Clash 다운로드플랫폼에 맞는 클라이언트 선택