문서 설정 프록시 프로바이더

프록시 프로바이더

proxy-providers를 사용하면 구독 링크를 통해 여러 노드를 동적으로 가져올 수 있어, 각 노드를 proxies에 일일이 작성할 필요가 없습니다. 프록시 그룹은 use 필드로 프록시 프로바이더를 가져옵니다.

설정 예시

config.yaml YAML
proxy-providers:
  provider1:
    type: http
    url: "http://test.com"
    path: ./proxy_providers/provider1.yaml
    interval: 3600
    health-check:
      enable: true
      url: https://www.gstatic.com/generate_204
      interval: 300
      lazy: true
    filter: "(?i)港|hk|hongkong|hong kong"
    override:
      additional-prefix: "[provider1] "
      udp: true

기본 필드

키 이름(예: provider1)필수

프로바이더 이름으로, 중복될 수 없으며 프록시 그룹 이름과 구분하는 것을 권장합니다.

type필수

선택 가능한 값: http/file/inline.

urltype이 http일 때 필수

구독 주소입니다.

path선택

다운로드 후 저장할 파일 경로로, 입력하지 않으면 URL의 MD5를 파일명으로 사용합니다. 보안상의 이유로 경로는 HomeDir 내부에서만 허용되며, 다른 위치를 사용하려면 SAFE_PATHS 환경 변수를 설정해야 합니다.

interval선택

프로바이더를 업데이트하는 시간 간격입니다(단위: 초).

proxy선택

지정한 프록시를 경유해 다운로드/업데이트합니다.

size-limit기본값 0

다운로드 파일의 최대 크기를 제한합니다(단위: 바이트). 0은 제한 없음을 의미합니다.

header선택

사용자 지정 HTTP 요청 헤더로, 예를 들어 인증이 필요한 구독 주소에 Authorization을 추가할 수 있습니다.

payloadtype이 inline일 때 필수

노드 내용을 인라인으로 직접 작성하며, 형식은 proxies와 동일합니다. http/file 해석에 실패했을 때 대체 노드로도 사용됩니다.

health-check 헬스체크

필드설명
enable활성화 여부
url헬스체크 주소로, https://www.gstatic.com/generate_204 또는 https://cp.cloudflare.com을 권장합니다
interval검사 간격(단위: 초)
timeout타임아웃(단위: 밀리초)
lazy기본값 true, 프로바이더 내 노드가 사용되지 않을 때는 테스트하지 않습니다
expected-status기대하는 HTTP 응답 상태 코드로, 작성법은 프록시 그룹 공통 필드를 참고하세요

override 오버라이드

이 프로바이더 내 모든 노드의 필드를 일괄적으로 덮어씁니다. 자주 사용하는 방법은 다음과 같습니다:

필드설명
additional-prefix / additional-suffix노드 이름에 접두사/접미사를 일괄 추가
proxy-name정규식으로 노드 이름을 치환합니다. pattern으로 매칭하고 target으로 치환합니다($1 그룹 참조 지원)
udp / tfo / mptcp / skip-cert-verify / dialer-proxy / interface-name / routing-mark / ip-version공통 필드를 일괄로 덮어쓰며, 의미는 각각의 공통 필드 설명과 동일합니다
up / down대역폭을 일괄 설정합니다(Hysteria/Hysteria2 전용)
udp-over-tcpUDP over TCP를 일괄 설정합니다(Shadowsocks 전용)

필터링과 복호화

filter / exclude-filter선택

키워드나 정규식으로 노드를 필터링/제외합니다. 여러 정규식은 `로 구분합니다.

exclude-type선택

정규식을 지원하지 않으며 |로 구분합니다. 노드 유형별로 제외하며, 예: "ss|http".

age-secret-key선택

구독 파일이 age로 암호화되어 있다면 여기에 키를 입력하면 자동으로 복호화됩니다. mihomo age keygen으로 해당 키를 생성할 수 있습니다.

프로바이더 파일 자체의 작성법(YAML / URI / Base64 세 가지 형식)은 프록시 프로바이더 콘텐츠를 참고하세요.