빠른 설정
처음부터 설정을 작성하고 싶지 않으신가요? 이 템플릿은 구독, 지역별 그룹, 흔한 스트리밍/소셜 앱의 라우팅 규칙을 이미 모두 설정해두었으니, proxy-providers의 구독 주소만 자신의 것으로 바꾸면 바로 사용할 수 있습니다.
이 템플릿이 하는 일
-
proxy-providers구독 링크를 통해 노드를 동적으로 가져옵니다. 예시에는 두 개의 구독 슬롯(provider1/provider2)이 마련되어 있으니 자신의 구독 주소를 입력하면 됩니다. 이름은 중복될 수 없습니다.
-
지역별 자동 그룹화
include-all: true와filter정규식을 사용해 모든 노드를 이름의 키워드에 따라 홍콩/대만/일본/싱가포르/미국/기타 지역으로 자동 분류합니다. 노드 목록을 수동으로 관리할 필요가 없습니다. -
앱/지역별 라우팅
GEOSITE와GEOIP규칙 세트를 사용해 Google, Telegram, YouTube, Netflix, 빌리빌리, 국내(중국) 트래픽 등을 해당 프록시 그룹으로 자동 라우팅하며, 매칭되지 않는 규칙은 기본적으로 "기타" 그룹으로 이동합니다.
완전한 예시(GEOSITE / GEOIP 버전)
이 버전은 mihomo에 내장된 GEOSITE/GEOIP 데이터베이스로 라우팅을 판단하므로 설정이 가장 간단하며 별도의 규칙 프로바이더 파일이 필요 없습니다.
config.yaml YAML
# url에 자신의 구독을 입력하세요. 이름은 중복될 수 없습니다 proxy-providers: provider1: url: "" type: http interval: 86400 health-check: { enable: true, url: "https://www.gstatic.com/generate_204", interval: 300 } proxies: - name: "직접연결" type: direct udp: true mixed-port: 7890 ipv6: true allow-lan: true unified-delay: false tcp-concurrent: true external-controller: 127.0.0.1:9090 external-ui: ui external-ui-url: "https://github.com/MetaCubeX/metacubexd/archive/refs/heads/gh-pages.zip" find-process-mode: strict global-client-fingerprint: chrome profile: store-selected: true store-fake-ip: true sniffer: enable: true sniff: HTTP: ports: [80, 8080-8880] override-destination: true TLS: ports: [443, 8443] QUIC: ports: [443, 8443] tun: enable: true stack: mixed dns-hijack: - "any:53" auto-route: true auto-detect-interface: true dns: enable: true ipv6: true enhanced-mode: fake-ip fake-ip-filter: - "*" - "+.lan" - "+.local" default-nameserver: - tls://223.5.5.5 nameserver: - https://doh.pub/dns-query - https://dns.alidns.com/dns-query proxy-groups: - name: 기본 type: select proxies: [자동선택, 직접연결, 홍콩, 대만, 일본, 싱가포르, 미국, 기타 지역, 전체 노드] - name: Google type: select proxies: [기본, 홍콩, 대만, 일본, 싱가포르, 미국, 기타 지역, 전체 노드, 자동선택, 직접연결] # Telegram / Twitter / 빌리빌리 / 바하무트 / YouTube / NETFLIX / Spotify / Github도 마찬가지입니다 - name: 국내 type: select proxies: [직접연결, 기본, 홍콩, 대만, 일본, 싱가포르, 미국, 기타 지역, 전체 노드, 자동선택] - name: 기타 type: select proxies: [기본, 홍콩, 대만, 일본, 싱가포르, 미국, 기타 지역, 전체 노드, 자동선택, 직접연결] # 구분선, 아래는 지역별 그룹으로 filter 정규식에 의해 자동으로 분류되며 노드를 수동으로 관리할 필요가 없습니다 - name: 홍콩 type: select include-all: true exclude-type: direct filter: "(?i)港|hk|hongkong|hong kong" # 대만/일본/싱가포르/미국 그룹도 작성법은 같으며 filter 키워드만 다릅니다 - name: 기타 지역 type: select include-all: true exclude-type: direct filter: "(?i)^(?!.*(?:港|hk|台|tw|日|jp|新|sg|美|us)).*" - name: 전체 노드 type: select include-all: true exclude-type: direct - name: 자동선택 type: url-test include-all: true exclude-type: direct tolerance: 10 rules: - GEOIP,lan,직접연결,no-resolve - GEOSITE,github,Github - GEOSITE,youtube,YouTube - GEOSITE,google,Google - GEOSITE,telegram,Telegram - GEOSITE,netflix,NETFLIX - GEOSITE,bilibili,Bilibili - GEOSITE,CN,국내 - GEOSITE,geolocation-!cn,기타 - GEOIP,CN,국내 - MATCH,기타
고급: RULE-SET 버전으로 변경
위에서는 코어에 내장된 GEOSITE/GEOIP 데이터베이스를 사용했는데, 설정이 간단하다는 장점이 있지만 업데이트 빈도가 코어 버전을 따라갑니다. 더 최신의 규칙 데이터를 원한다면 GEOSITE/GEOIP를 RULE-SET으로 바꿔 MetaCubeX 커뮤니티가 관리하는 규칙 세트를 참조할 수 있습니다(매일 자동 업데이트):
config.yaml YAML
rule-anchor: ip: &ip { type: http, interval: 86400, behavior: ipcidr, format: mrs } domain: &domain { type: http, interval: 86400, behavior: domain, format: mrs } rule-providers: cn_domain: <<: *domain url: "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/meta/geo/geosite/cn.mrs" github_domain: <<: *domain url: "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/meta/geo/geosite/github.mrs" cn_ip: <<: *ip url: "https://raw.githubusercontent.com/MetaCubeX/meta-rules-dat/meta/geo/geoip/cn.mrs" rules: - RULE-SET,private_ip,직접연결,no-resolve - RULE-SET,github_domain,Github - RULE-SET,cn_domain,국내 - RULE-SET,cn_ip,국내 - MATCH,기타
핵심 아이디어는 GEOSITE 버전과 같지만, 내장 데이터베이스를 온라인으로 가져오는 규칙 파일로 바꾼 것입니다(&domain/&ip 앵커는 공통의 http/interval/behavior/format 필드를 재사용합니다. 문법 섹션의 앵커 사용법을 참고하세요). 더 많은 작성법은 규칙 프로바이더 페이지를 참고하세요.