# ============================================================================ # ШАБЛОН STARGATE-NANO # Облегчённая конфигурация Mihomo/Meta без сервисов # Подходит для устройств с ограниченными ресурсами (роутеры, Raspberry Pi) # Документация: https://github.com/MetaCubeX/mihomo/blob/Meta/docs/config.yaml # Источник: https://raw.githubusercontent.com/Viktor45/mh-templates/refs/heads/main/stargate-nano.yaml # ============================================================================ # ============================================================================ # === ОСНОВНЫЕ ПАРАМЕТРЫ === # ============================================================================ # Разрешить подключения из локальной сети (например, с других устройств дома) # Если true — другие устройства в вашей сети смогут использовать этот прокси # Если false — только локальное устройство имеет доступ к прокси-серверу allow-lan: true # Режим работы ядра: определяет логику маршрутизации всего трафика # "rule" — трафик распределяется по правилам (рекомендуется для гибкости) # "global" — весь трафик идёт через выбранный прокси-сервер # "direct" — весь трафик идёт напрямую без использования прокси mode: rule # Уровень подробности логирования событий в журнале работы # Доступные значения: silent (тихо), error (ошибки), warning (предупреждения), # info (информация), debug (отладка - максимальная детализация) log-level: $LOG_LEVEL # Включить поддержку IPv6 ipv6: $IPV6 # Делать задержки более естественными (чтобы не выдавать автоматизацию) # Улучшает точность тестирования скорости прокси-серверов # Рекомендуется держать включённым для стабильной работы unified-delay: $UNIFIED_DELAY # Одновременные TCP-соединения, которые будут использовать все IP-адреса, # разрешенные DNS для соединений, используя первое успешное соединение. tcp-concurrent: $TCP_CONCURRENT # Максимальное время бездействия TCP Keep Alive keep-alive-idle: $KEEP_ALIVE_IDLE # Интервал отправки пакетов TCP Keep Alive в секундах keep-alive-interval: $KEEP_ALIVE_INTERVAL # Адрес и порт для управления через веб-интерфейс (например: 0.0.0.0:9090) # 0.0.0.0 — слушать все сетевые интерфейсы (доступ из сети) external-controller: $EXTERNAL_CONTROLLER_ADDRESS:$UI_PORT # Путь к папке с веб-интерфейсом на диске (локальная версия UI) # Если папка существует, интерфейс загрузится оттуда без скачивания external-ui: $EXTERNAL_UI_PATH # Ссылка на архив с интерфейсом в интернете (скачается автоматически при старте) # Используется, если локальная папка пуста или отсутствует external-ui-url: $EXTERNAL_UI_URL # Секретный ключ для защиты доступа к веб-панели (API Secret) # Рекомендуется использовать сложную строку для безопасности # Без этого ключа любой в локальной сети сможет управлять прокси secret: $UI_SECRET profile: store-selected: $STORE_SELECTED # Сохранение выбора API для групп политик (селекторы в веб-панели) для использования при следующем запуске # ============================================================================ # === DNS НАСТРОЙКИ === # ============================================================================ # Конфигурация DNS-резолвера для преобразования доменов в IP-адреса # Отвечает за разрешение доменных имён в сетевые адреса dns: enable: $DNS_ENABLE # Включить собственный DNS-резолвер use-system-hosts: $DNS_USE_SYSTEM_HOSTS # Использовать системный файл hosts listen: $DNS_LISTEN # DNS-сервис cache-algorithm: $DNS_CACHE_ALGORITHM # Алгоритм кеширования prefer-h3: $DNS_PREFER_H3 # Предпочитать использование http/3 для DOH enhanced-mode: $DNS_ENHANCED_MODE # Режим обработки DNS fake-ip-range: $DNS_FAKE_IP_RANGE # Настройка диапазона IP для режима fakeip fake-ip-ttl: $DNS_FAKE_IP_TTL # TTL, возвращаемый запросами fakeip fake-ip-filter: # Исключить из fake-ip ресурсы lan/captive/time/stun - +.lan - +.local - +.localhost - +.msftconnecttest.com - +.msftncsi.com - dns.msftnsci.com - captive.apple.com - connectivitycheck.gstatic.com - time.windows.com - time.apple.com - +.ntp.org - +.stun.*.* - +.stun.*.*.* nameserver: - system # Использовать системный DNS (от роутера/провайдера) # ============================================================================ # === СЛУШАТЕЛИ (LISTENERS) === # ============================================================================ # Точки входа для принятия трафика от приложений и системы # Mihomo поддерживает множественные слушатели разных типов # Каждый слушатель работает независимо и может иметь свои настройки listeners: - name: mixed-in # Смешанный прокси (HTTP + SOCKS5) type: mixed # Тип: mixed (принимает оба протокола) port: $MIXED_PORT # Порт для приложений (обычно 1080) $TUN_IN_AUTOCONFIG # inbound name: tun-in (для автонастройки более производительного варианта tproxy на поддерживаемом оборудовании) # ============================================================================ # === ПОДПИСКИ НА ПРОКСИ (PROXY PROVIDERS) === # ============================================================================ # Источники прокси-серверов (подписки) # PROVIDERS_BLOCK — автоматически подставляемые подписки из скрипта настройки # Формат подписок должен быть совместим с Mihomo/Meta proxy-providers: $PROVIDERS_BLOCK # ============================================================================ # === ОБЩИЕ ПАРАМЕТРЫ ПРОВЕРКИ (ANCHORS) === # ============================================================================ # Базовая конфигурация проверки здоровья прокси (health check) # Используется для fallback-групп (автоматическое переключение при отказе) # Проверяет доступность прокси-сервера по указанному URL health_check: &health_check url: $HEALTH_CHECK_URL # URL для проверки доступности прокси interval: $HEALTH_CHECK_INTERVAL # Интервал проверки в секундах expected-status: $HEALTH_CHECK_EXPECTED_STATUS # Ожидаемый HTTP-статус ответа lazy: $HEALTH_CHECK_LAZY # Тестировать сразу при запуске timeout: $HEALTH_CHECK_TIMEOUT # Таймаут ожидания ответа в секундах enable: $HEALTH_CHECK_ENABLE # Включить проверку доступности прокси (true/false) # Конфигурация URL-тестирования для выбора fastest-прокси # Используется для url-test-групп (автоматический выбор по скорости) # Измеряет задержку до указанного URL для каждого прокси url_test: &url_test url: $HEALTH_CHECK_URL # URL для измерения задержки interval: 300 # Интервал тестирования в секундах lazy: false # Тестировать сразу при запуске expected-status: $HEALTH_CHECK_EXPECTED_STATUS # Ожидаемый HTTP-статус tolerance: 50 # Допустимая разница задержки (мс) # ============================================================================ # === СПИСКИ ПРОВАЙДЕРОВ И ФИЛЬТРЫ (ANCHORS) === # ============================================================================ # Список провайдеров для основных прокси # Используется в группах типа url-test и fallback providers_list: &providers_list $PROVIDERS_LIST # Регулярное выражение для исключения российских прокси # Используется в группах для иностранного трафика exclude_ru: &exclude_ru '(?i)🇷🇺|RU' # ============================================================================ # === СПИСКИ ПРОКСИ-ГРУПП (ANCHORS) === # ============================================================================ # Полный список всех прокси-групп для основного селектора # Определяет порядок отображения групп в веб-интерфейсе proxy_list_all: &proxy_list_all - SELECTOR - AUTO - LOADBALANCE - MANUAL - DIRECT # ============================================================================ # === ГРУППЫ ПРОКСИ (PROXY GROUPS) === # ============================================================================ # Группы определяют логику выбора прокси для различных сценариев # Типы групп: select (ручной), url-test (автоматический по скорости), fallback (резервный) proxy-groups: # -------------------------------------------------------------------------- # ГЛАВНЫЙ СЕЛЕКТОР — основная точка выбора в веб-интерфейсе # -------------------------------------------------------------------------- - name: SELECTOR type: select # Ручной выбор пользователем include-all: true # Включить все доступные прокси proxies: - AUTO - LOADBALANCE - MANUAL - DIRECT # -------------------------------------------------------------------------- # БАЗОВЫЕ АВТОМАТИЧЕСКИЕ ГРУППЫ (ИНОСТРАННЫЕ ПРОКСИ) # -------------------------------------------------------------------------- # AUTO — полностью автоматический выбор (иностранные) # Приоритет: FASTEST → FAILOVER → MANUAL → DIRECT - name: AUTO type: fallback # Переключение при отказе proxies: - FASTEST - FAILOVER - MANUAL - DIRECT <<: *health_check # Параметры проверки # FASTEST — автоматически выбирает самый быстрый прокси по задержке - name: FASTEST type: url-test # Тестирование скорости use: *providers_list # Использовать провайдеры exclude-filter: *exclude_ru # Исключить российские серверы <<: *url_test # Параметры тестирования # FAILOVER — резервный прокси при отказе основного - name: FAILOVER type: fallback # Переключение при отказе use: *providers_list # Использовать провайдеры exclude-filter: *exclude_ru # Исключить российские серверы <<: *health_check # Параметры проверки # LOADBALANCE — балансировка по нагрузке - name: LOADBALANCE type: load-balance # Балансировка нагрузки strategy: $LOADBALANCE_STRATEGY # Стратегия балансировки (round-robin, consistent-hashing, sticky-sessions) use: *providers_list # Использовать провайдеры exclude-filter: *exclude_ru # Исключить российские серверы <<: *health_check # Параметры тестирования hidden: false # Скрыть из интерфейса # MANUAL — ручной выбор иностранного прокси - name: MANUAL type: select # Ручной выбор use: *providers_list # Использовать провайдеры exclude-filter: *exclude_ru # Исключить российские серверы # -------------------------------------------------------------------------- # -------------------------------------------------------------------------- # СИСТЕМНЫЕ ГРУППЫ # -------------------------------------------------------------------------- # GLOBAL — глобальная группа для правил - name: GLOBAL type: select # Ручной выбор proxies: *proxy_list_all # Список доступных опций # ============================================================================ # === ПРАВИЛА МАРШРУТИЗАЦИИ (RULES) === # ============================================================================ # Основной список правил маршрутизации # Правила обрабатываются сверху вниз, первое совпадение применяется rules: # Локальная сеть — всегда напрямую (без прокси) # Эти правила имеют высший приоритет для безопасности и производительности - IP-CIDR,10.0.0.0/8,DIRECT,no-resolve # Частная сеть Class A, RFC1918 - IP-CIDR,100.64.0.0/10,DIRECT,no-resolve # Сеть оператора RFC6598 - IP-CIDR,127.0.0.0/8,DIRECT,no-resolve # Loopback (localhost), RFC1700 - IP-CIDR,169.254.0.0/16,DIRECT,no-resolve # Link local, RFC3330 - IP-CIDR,172.16.0.0/12,DIRECT,no-resolve # Частная сеть Class B, RFC1918 - IP-CIDR,192.0.0.0/24,DIRECT,no-resolve # Reserved, RFC3330 - IP-CIDR,192.0.2.0/24,DIRECT,no-resolve # Testnet, RFC3330 - IP-CIDR,192.88.99.0/24,DIRECT,no-resolve # Anycast 6to4, RFC3068 - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve # Частная сеть Class C, RFC1918 - IP-CIDR,198.18.0.0/15,DIRECT,no-resolve # Benchmark, RFC3330 - IP-CIDR,198.51.100.0/24,DIRECT,no-resolve # Testnet, RFC5735 - IP-CIDR,203.0.113.0/24,DIRECT,no-resolve # Testnet, RFC5735 - IP-CIDR,224.0.0.0/4,DIRECT,no-resolve # Multicast, RFC3171 - DOMAIN-SUFFIX,home.arpa,DIRECT # Локальный префикс RFC8375 - DOMAIN-SUFFIX,internal,DIRECT # Локальный префикс - DOMAIN-SUFFIX,localdomain,DIRECT # Локальный префикс - DOMAIN-SUFFIX,local,DIRECT # Локальный префикс - DOMAIN-SUFFIX,lan,DIRECT # Локальный префикс # Безопасность: блокировка уязвимых UDP портов # - AND,((NETWORK,udp),(DST-PORT,135)),REJECT # - AND,((NETWORK,udp),(DST-PORT,137)),REJECT # - AND,((NETWORK,udp),(DST-PORT,138)),REJECT # - AND,((NETWORK,udp),(DST-PORT,139)),REJECT # QUIC-трафик (UDP/443) — специальная обработка # Трафик от TUN и mixed-интерфейсов — в главный селектор - IN-NAME,tun-in,SELECTOR - IN-NAME,mixed-in,SELECTOR # Правило по умолчанию — весь остальной трафик - MATCH,SELECTOR # ============================================================================ # КОНЕЦ КОНФИГУРАЦИИ # ============================================================================