Перейти к основному содержимому

Руководство пользователя mudfish-exclude

к сведению

Утилита mudfish-exclude поддерживается начиная с Mudfish Cloud VPN v6.5.4.

mudfish-exclude запускает выбранную программу в Linux вне политики маршрутизации Mudfish.

Используйте её, чтобы Mudfish продолжал работать, но отдельные программы — браузер, мессенджер, игровой лаунчер или средство обновления — подключались через обычный интернет-маршрут.

Поддерживаемая среда​

mudfish-exclude предназначен только для Linux.

В системе должны быть доступны следующие компоненты.

  • Mudfish для Linux
  • sudo или права root
  • cgroup v2, смонтированный в /sys/fs/cgroup
  • Команда ip
  • iptables
  • Маршрут IPv4 по умолчанию

Утилита работает с IPv4-трафиком. Для IPv6 mudfish-exclude не выполняет обход Mudfish.

Основное использование​

Запускайте программу, добавив перед ней mudfish-exclude.

sudo mudfish-exclude firefox

Аргументы программы указываются после её имени как обычно.

sudo mudfish-exclude firefox --private-window
sudo mudfish-exclude curl https://mudfish.net

Если аргументов много или нужно явно обозначить границу параметров, укажите программу после --.

sudo mudfish-exclude -- firefox --private-window

Даже при запуске через sudo целевая программа обычно возвращается к правам текущего пользователя. Поэтому графические приложения используют привычный домашний каталог, сеанс рабочего стола и файлы настроек, а не окружение root.

Поведение во время работы​

При запуске команды mudfish-exclude создаёт временную сетевую политику только для неё. Трафик этой команды помечается и выходит через обычный системный маршрут IPv4 по умолчанию.

После завершения команды утилита ждёт, пока соответствующая группа процессов опустеет, затем удаляет временные правила.

Сам Mudfish не выключается. Другие программы продолжают работать с прежними настройками Mudfish.

Примеры использования​

Запуск Firefox в обход Mudfish:

sudo mudfish-exclude firefox

Запуск Discord в обход Mudfish:

sudo mudfish-exclude discord

Запуск Steam в обход Mudfish:

sudo mudfish-exclude steam

Скачивание из командной строки в обход Mudfish:

sudo mudfish-exclude wget https://example.com/file.zip

Ручная настройка и очистка​

При обычном использовании это не требуется: mudfish-exclude автоматически создаёт и удаляет политику.

Если нужно создать одну политику и запустить с ней несколько программ, используйте следующий порядок.

sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup firefox
sudo mudfish-exclude --no-setup discord
sudo mudfish-exclude --cleanup

После ручной настройки обязательно выполните --cleanup для очистки.

Дополнительные параметры​

Большинству пользователей подходят значения по умолчанию.

ПараметрНазначениеЗначение по умолчанию
--cgroup NAMEИмя cgroup v2 для исключаемой программыmudfish-exclude
--mark VALUEЗначение метки межсетевого экрана0x6d660001
--priority VALUEПриоритет правила IPv48252
--table VALUEНомер таблицы маршрутизации IPv48252
--setupСоздать политику и завершить работуВыключено
--cleanupУдалить политику и завершить работуВыключено
--no-setupЗапустить команду в уже созданной политикеВыключено

Меняйте стандартные значения метки, приоритета и таблицы только при конфликте с другими сетевыми инструментами или по указанию поддержки Mudfish.

Пример:

sudo mudfish-exclude --table 9000 --priority 9000 firefox

Особенности графических приложений​

Некоторые приложения повторно используют уже работающий процесс. Например, если браузер открыт, команда sudo mudfish-exclude firefox может лишь попросить его создать новое окно. В таком случае прежний процесс браузера может не попасть под исключение.

Рекомендуемый порядок:

  • Полностью закройте программу и запустите заново через mudfish-exclude.
  • Если браузеру нужно одновременно использовать маршрут Mudfish и прямой маршрут, используйте отдельные профили.
  • Запускайте настоящую команду программы, а не только ярлык рабочего стола.

Решение проблем​

network policy setup requires root​

Добавьте sudo перед командой запуска.

sudo mudfish-exclude firefox

cgroup v2 is required at /sys/fs/cgroup​

Система Linux не использует cgroup v2 в ожидаемом месте. Настройте cgroup v2 или используйте дистрибутив, где он включён по умолчанию.

failed to find the IPv4 default route​

В системе нет доступного маршрута IPv4 по умолчанию. Сначала проверьте обычное подключение к Интернету.

Приложение, по-видимому, всё ещё использует Mudfish​

Полностью закройте приложение и запустите заново через mudfish-exclude. Это особенно важно для браузеров, игровых лаунчеров и мессенджеров, которые сохраняют фоновые процессы.

После аварийного завершения остались сетевые правила​

Выполните ручную очистку.

sudo mudfish-exclude --cleanup

Если вы вручную изменили --mark, --priority, --table или --cgroup, укажите те же значения и для --cleanup.

Краткая справка по командам​

sudo mudfish-exclude COMMAND [ARGS...]
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup COMMAND [ARGS...]
sudo mudfish-exclude --cleanup