Что такое mihomo: ядро и графические клиенты Clash Meta
Содержание
- Что делает ядро mihomo
- Почему у mihomo нет графического интерфейса
- Как графические клиенты используют ядро
- Когда ядро запускают отдельно
- Что скачивать обычному пользователю
- Частые вопросы
- mihomo и Clash — это одно и то же?
- Нужно ли ставить ядро отдельно, если установлен Clash Verge Rev?
- Подойдёт ли моя подписка Clash для mihomo?
mihomo — это открытое ядро сетевого прокси: программа, которая принимает трафик приложений, применяет правила маршрутизации и направляет соединения через выбранные серверы. До 2023 года проект был известен как Clash.Meta — форк оригинального Clash, который сообщество MetaCubeX продолжило развивать после остановки исходного проекта. Переименование не изменило сути: это то же ядро, только под новым именем.
Главный источник путаницы для новичков — отношения между ядром mihomo и «программами Clash» с окнами и кнопками. В этой статье разложим всё по полочкам: что именно делает ядро, почему у него нет интерфейса и почему в большинстве случаев скачивать его отдельно не нужно.
Что делает ядро mihomo
Если убрать детали, у ядра четыре задачи:
- Чтение конфигурации. mihomo разбирает файл
config.yaml, где описаны серверы, группы прокси, правила и настройки DNS. Формат совместим с классическим Clash и расширяет его. - Приём и пересылка трафика. Ядро поднимает локальные порты (HTTP, SOCKS или смешанный) и передаёт входящие соединения дальше по нужному протоколу.
- Правила маршрутизации. Каждый запрос сверяется со списком правил: этот домен — через прокси, тот — напрямую, а этот заблокировать.
- Обработка DNS. Встроенный DNS-модуль с режимами fake-ip и redir-host помогает избегать утечек запросов и ускоряет работу.
Собрать это в одну картину помогает путь обычного запроса. Браузер обращается к локальному порту ядра, ядро определяет имя или адрес назначения, сверяет его с правилами и выбирает адресата: конкретную группу прокси, прямое подключение или отказ. Дальше соединение уходит через выбранный сервер по его протоколу, а ответ возвращается тем же путём. Всё это происходит для каждого соединения отдельно — потому в одном браузере одна вкладка может идти напрямую, а другая через зарубежный узел.
Почему у mihomo нет графического интерфейса
mihomo — консольная программа. После запуска она молча работает в фоне и пишет логи; всё управление сводится к параметрам командной строки и файлу конфигурации. Это осознанное архитектурное решение: ядро спроектировано как универсальный «двигатель», который встраивают в другие приложения. Один и тот же код работает на ноутбуке с Windows, на домашнем сервере с Linux и внутри Android-приложения. Исходники открыты и опубликованы в репозитории MetaCubeX/mihomo.
У такого разделения есть и техническая сторона. Помимо параметров командной строки у ядра предусмотрен управляющий интерфейс — HTTP-API, адрес которого задаётся полем external-controller. Именно через него внешние программы узнают список групп и узлов, переключают выбранный сервер, запускают тест задержки и читают поток соединений. Графический клиент, по сути, — это удобный собеседник для этого API плюс механизм подготовки конфигурации.
Как графические клиенты используют ядро
Графический клиент — это оболочка, которая запускает mihomo, готовит для него конфигурацию из вашей подписки и показывает состояние в удобном виде. Все основные клиенты уже содержат ядро внутри:
| Клиент | Платформы | Ядро |
|---|---|---|
| Clash Verge Rev | Windows, macOS, Linux | встроенный mihomo |
| FlClash | Android, Windows, macOS, Linux | встроенный mihomo |
| Clash Meta for Android | Android | встроенный mihomo |
Когда вы переключаете узел или включаете системный прокси в интерфейсе, клиент на самом деле правит конфигурацию ядра или обращается к его управляющему API. Чем оболочки различаются между собой, мы разобрали в сравнении популярных клиентов.
Когда ядро запускают отдельно
Есть сценарии, где интерфейс не нужен или невозможен в принципе. Там mihomo ставят как самостоятельную программу:
- Сервер без рабочего стола. Ядро оформляют системным сервисом, и оно поднимается вместе с машиной — как это делается, показано в развёртывании mihomo на Linux.
- Контейнеры и домашние устройства. Один исполняемый файл без внешних зависимостей удобно класть в образ или на маломощное устройство.
- Отладка конфигурации. Когда нужно понять, почему правило не срабатывает, вывод ядра в консоли информативнее любого интерфейса.
- Своя автоматизация. Скрипты и сторонние панели работают с ядром через тот же управляющий API.
Во всех остальных случаях отдельное ядро добавляет ручной работы: конфигурацию придётся получать и обновлять самому, системный прокси включать вручную, а следить за обновлениями — вместо вас этого никто не сделает.
Что скачивать обычному пользователю
Короткий ответ: только графический клиент из нашего центра загрузок. Отдельная установка ядра оправдана в специфических сценариях — на сервере без рабочего стола, в контейнере или при ручной отладке конфигураций. Если сомневаетесь, какой файл подходит вашей системе и процессору, поможет руководство по выбору версии.
Совет. Версию встроенного ядра видно в настройках клиента — при обращении за помощью указывайте её вместе с версией самого клиента.
Частые вопросы
mihomo и Clash — это одно и то же?
Не совсем. Clash — оригинальный проект, разработка которого прекратилась в 2023 году. mihomo — его активно развиваемый преемник, выросший из форка Clash.Meta. Формат конфигурации совместим, поэтому в обиходе названия часто употребляют как синонимы, но живой проект сегодня один — mihomo.
Нужно ли ставить ядро отдельно, если установлен Clash Verge Rev?
Нет. Клиент уже включает сборку mihomo и обновляет её вместе со своими релизами. Отдельно скачанное ядро понадобится только для запуска из командной строки без клиента.
Подойдёт ли моя подписка Clash для mihomo?
В подавляющем большинстве случаев — да. mihomo понимает конфигурации классического Clash, а провайдеры давно выдают подписки, рассчитанные именно на этот формат.