1. Что такое config.yaml?
config.yaml — это основной файл конфигурации ядра Clash. Он написан в формате YAML и определяет все параметры работы: прокси-узлы, группы политик, правила маршрутизации и DNS. При запуске ClashX на macOS этот файл загружается автоматически, обычно из ~/.config/clash/config.yaml.
Освоив config.yaml, вы получите полный контроль над сетевым трафиком — какие запросы идут через прокси, какие напрямую, а какие блокируются.
- Гибкость: больше расширенных опций, чем в графическом интерфейсе
- Портативность: одна конфигурация для нескольких устройств
- Контроль версий: отслеживайте изменения с помощью Git
2. Основы синтаксиса YAML
YAML (YAML Ain't Markup Language) — удобный для человека формат сериализации данных. Перед написанием config.yaml необходимо знать основные правила:
- Отступы: используйте пробелы (не табуляцию), обычно 2 пробела на уровень
- Пары ключ-значение:
key: value— пробел после двоеточия обязателен - Списки: начинаются с
-, обозначая элемент массива - Комментарии: начинаются с
#
# Пример базовой конфигурации
port: 7890 # Порт HTTP-прокси
socks-port: 7891 # Порт SOCKS5-прокси
allow-lan: false # Разрешить подключения из LAN
mode: rule # Режим: rule/global/direct
log-level: info # Уровень логов: silent/error/warning/info/debug
external-controller: 127.0.0.1:9090 # Адрес RESTful API
Внимание: YAML крайне чувствителен к отступам. Ошибка в отступах приведёт к сбою всего файла конфигурации. Используйте редактор с подсветкой синтаксиса YAML (например, VS Code).
3. Конфигурация прокси-узлов (proxies)
В разделе proxies вы определяете все прокси-серверы. Clash поддерживает множество протоколов: Shadowsocks (SS), VMess, Trojan и другие. Для каждого узла нужно указать имя, тип, адрес сервера и порт.
Узел Shadowsocks (SS)
proxies:
- name: "HK-Node-SS"
type: ss
server: hk.example.com
port: 8388
cipher: aes-256-gcm
password: "your-password-here"
udp: true
Узел VMess
- name: "JP-Node-VMess"
type: vmess
server: jp.example.com
port: 443
uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890
alterId: 0
cipher: auto
tls: true
network: ws
ws-opts:
path: /path
headers:
Host: jp.example.com
Узел Trojan
- name: "US-Node-Trojan"
type: trojan
server: us.example.com
port: 443
password: "your-trojan-password"
sni: us.example.com
skip-cert-verify: false
udp: true
4. Группы политик (proxy-groups)
Группы политик — одна из самых мощных функций Clash. Они позволяют объединять узлы и задавать стратегию выбора. Основные типы:
- select: ручной выбор для точного контроля
- url-test: автотест скорости — периодически проверяет задержку и выбирает самый быстрый узел
- fallback: отказоустойчивость — пробует узлы по порядку, автоматически переключается при сбое
- load-balance: балансировка нагрузки — распределяет трафик между узлами
proxy-groups:
- name: "🚀 Выбор прокси"
type: select
proxies:
- "♻️ Авто лучший"
- "HK-Node-SS"
- "JP-Node-VMess"
- "US-Node-Trojan"
- DIRECT
- name: "♻️ Авто лучший"
type: url-test
proxies:
- "HK-Node-SS"
- "JP-Node-VMess"
- "US-Node-Trojan"
url: http://www.gstatic.com/generate_204
interval: 300
tolerance: 50
- name: "🛡️ Отказоустойчивость"
type: fallback
proxies:
- "HK-Node-SS"
- "JP-Node-VMess"
- "US-Node-Trojan"
url: http://www.gstatic.com/generate_204
interval: 300
- name: "⚖️ Балансировка"
type: load-balance
proxies:
- "HK-Node-SS"
- "JP-Node-VMess"
strategy: consistent-hashing
url: http://www.gstatic.com/generate_204
interval: 300
5. Правила маршрутизации (rules)
Правила маршрутизации определяют направление каждого сетевого запроса. Clash проверяет правила сверху вниз и выполняет первое совпадение. Основные типы правил:
- DOMAIN-SUFFIX: совпадение по суффиксу домена, например
google.com - DOMAIN-KEYWORD: совпадение по ключевому слову в домене
- IP-CIDR: совпадение по диапазону IP-адресов
- GEOIP: совпадение по геолокации IP
- MATCH: правило по умолчанию для всех необработанных запросов
rules:
# Прямое подключение
- DOMAIN-SUFFIX,cn,DIRECT
- DOMAIN-SUFFIX,local,DIRECT
- DOMAIN-KEYWORD,baidu,DIRECT
# Через прокси
- DOMAIN-SUFFIX,google.com,🚀 Выбор прокси
- DOMAIN-SUFFIX,youtube.com,🚀 Выбор прокси
- DOMAIN-SUFFIX,github.com,🚀 Выбор прокси
- DOMAIN-KEYWORD,telegram,🚀 Выбор прокси
# Правила IP
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
- GEOIP,CN,DIRECT
# Правило по умолчанию (должно быть последним)
- MATCH,🚀 Выбор прокси
Совет: порядок правил имеет значение. Более конкретные правила размещайте выше, а правило MATCH — обязательно последним. Несколько тысяч правил обычно не влияют на производительность благодаря эффективным алгоритмам Clash.
6. Конфигурация DNS
Настройки DNS напрямую влияют на скорость и безопасность сетевого доступа. Clash предоставляет богатые возможности DNS: nameserver, fallback и режим fake-ip.
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip # redir-host или fake-ip
fake-ip-range: 198.18.0.1/16
fake-ip-filter:
- "*.lan"
- "*.local"
- "localhost.ptlogin2.qq.com"
nameserver:
- https://doh.pub/dns-query # Tencent DoH
- https://dns.alidns.com/dns-query # Alibaba DoH
- 114.114.114.114
fallback:
- https://dns.google/dns-query # Google DoH
- https://cloudflare-dns.com/dns-query
- tls://8.8.4.4:853
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4
- Режим fake-ip: возвращает поддельные IP, уменьшает утечки DNS, работает быстрее — рекомендуется для большинства пользователей
- Режим redir-host: возвращает реальные IP, лучшая совместимость — используйте, когда приложениям нужны настоящие IP
- fallback: когда результаты nameserver загрязнены, серверы fallback повторно разрешают запрос
7. Часто задаваемые вопросы
Q1: Изменения конфигурации не применяются после сохранения?
Убедитесь, что формат YAML правильный (без табуляции, пробел после двоеточия), затем нажмите «Конфигурация» → «Перезагрузить конфигурацию» в меню ClashX. Используйте онлайн-валидатор YAML для проверки синтаксиса.
Q2: Как использовать подписки и пользовательские правила одновременно?
Используйте функцию proxy-providers для импорта узлов подписки, а затем напишите собственные группы политик и правила в локальном файле конфигурации. Оба варианта прекрасно сосуществуют.
Q3: Много правил влияет на производительность?
Обычно несколько тысяч правил минимально влияют на производительность. Clash использует эффективные алгоритмы сопоставления, но избегайте дублирования и размещайте часто срабатывающие правила ближе к началу.
Q4: fake-ip или redir-host — что выбрать?
Рекомендуем fake-ip: быстрее и предотвращает утечки DNS. Переключайтесь на redir-host только при проблемах совместимости. Используйте fake-ip-filter для доменов, которым нужны реальные IP.
Q5: Как найти путь к текущему файлу конфигурации?
Нажмите «Конфигурация» → «Открыть папку конфигурации» в меню ClashX, чтобы увидеть расположение текущего файла config.yaml.