Larofly

Рабочий VPN и Karing на одном Mac: почему рвётся соединение и как настроить

Если при включённых рабочем VPN и Karing рвутся Codex и ChatGPT или не открываются внутренние сайты, дело почти всегда в том, куда идёт соединение рабочего VPN. Пошаговая настройка и проверка одной командой.

Многие работают так: Karing включён на Mac постоянно, а рабочий VPN (чаще всего OpenVPN) нужен, чтобы попасть в сеть компании. По отдельности обе программы работают. А вместе начинается странное: длинная задача в Codex обрывается на середине, ChatGPT пишет «stream disconnected before completion», внутренняя Jira не открывается, рабочий VPN сам переподключается. При этом серверы исправны, скорость в тестах нормальная.

Причина почти всегда одна, и её можно найти и исправить за несколько минут.

Рабочий VPN внутри Karing и мимо него
Рабочий VPN внутри Karing и мимо него

Почему два VPN мешают друг другу?

Karing на Mac работает как системный туннель: он забирает себе весь трафик компьютера. Весь — значит и соединение самого рабочего VPN с его сервером. Получается «VPN внутри VPN»: рабочий туннель едет через Karing.

Пока всё стабильно, это почти незаметно. Но стоит Karing переподключиться (например, когда он сам обновляет подписку), рабочий VPN теряет свой сервер и переподключается. Karing видит, что сетевые настройки поменялись, и сбрасывает свои соединения. Рабочий VPN снова переподключается, и так по кругу. Каждый такой сброс рвёт всё, что было открыто: ответ Codex, загрузку, звонок.

Правильная схема другая: рабочий VPN ходит к своему серверу напрямую через Wi-Fi или кабель, мимо Karing. Тогда два туннеля стоят рядом и не трогают друг друга.

Как проверить, куда идёт рабочий VPN?

Нужен адрес сервера рабочего VPN. Он записан в файле настроек .ovpn в строке remote, например remote 203.0.113.10 1194. Ещё его можно найти в журнале программы рабочего VPN.

Откройте «Терминал» (через Spotlight: ⌘ + пробел, наберите «Терминал») и выполните:

```

route -n get 203.0.113.10

```

Вместо 203.0.113.10 подставьте адрес своего сервера. Смотрите на строку interface:

Что в interfaceЧто это значит
en0 (или en1)Рабочий VPN идёт напрямую через Wi-Fi или кабель — так и должно быть
utun с цифрой (utun5 и т.п.)Рабочий VPN идёт внутри туннеля Karing — отсюда и обрывы

Как настроить, чтобы не рвалось?

1. Соблюдайте порядок: сначала Karing, потом рабочий VPN. Рабочий VPN при подключении прописывает себе маршрут к своему серверу. Если Karing подключится позже, он может перехватить этот маршрут. Поэтому сначала включите Karing, дождитесь подключения и только потом подключайте рабочий VPN.

2. Если Karing переподключился — переподключите рабочий VPN. Karing иногда переподключается сам, например после обновления подписки или смены сети. После этого отключите рабочий VPN и включите его снова. Karing при этом не трогайте.

3. Проверьте маршрут ещё раз. Выполните route -n get с адресом сервера. Если в interface по-прежнему utun, добавьте маршрут вручную. Сначала узнайте адрес роутера:

```

route -n get default

```

Нужна строка gateway, например 192.168.1.1. Затем:

```

sudo route -n add -host 203.0.113.10 192.168.1.1

```

Первый адрес — сервер рабочего VPN, второй — ваш роутер. Mac попросит пароль от учётной записи. После этого route -n get должен показать en0. Такой маршрут держится до перезагрузки Mac или смены сети, потом команду нужно повторить.

4. Если рабочий VPN работает по UDP, выбирайте в Karing серверы на TCP. Протоколы на UDP вроде Hysteria плохо уживаются с рабочим OpenVPN по UDP: туннель поднимается, но внутренние сайты зависают на загрузке. Посмотреть протокол рабочего VPN можно в .ovpn, в строке proto.

5. Если не открываются внутренние сайты, выключите FakeIP. В Karing: «Настройки» → DNS → выключить FakeIP. При включённом FakeIP браузер получает от Karing подставной адрес вида 198.18.x.x, и запрос к внутреннему сайту уходит в Karing, а не в рабочий VPN. Проверить легко: ping -c 1 jira.ваша-компания не должен показывать 198.18.

А если рабочий VPN заворачивает в себя весь трафик?

Бывает и обратная ситуация: рабочий VPN настроен забирать весь трафик компьютера, и тогда уже Karing едет внутри него. Решение зеркальное: в .ovpn добавляют по строке на каждый сервер, к которому подключается Karing:

```

route <адрес сервера> 255.255.255.255 net_gateway

```

Адреса серверов можно уточнить в поддержке. Если .ovpn выдаёт и обновляет администратор компании, такие строки лучше согласовать с ним.

Короткий чек-лист

  • Сначала Karing, потом рабочий VPN. Karing переподключился — переподключите рабочий VPN.
  • route -n get <сервер рабочего VPN> показывает en0, а не utun.
  • Рабочий VPN по UDP — в Karing серверы на TCP.
  • Не открываются внутренние сайты — выключите FakeIP.

Если обрывы остались, напишите в поддержку время обрыва и вывод route -n get для сервера рабочего VPN. По этим данным причину обычно видно сразу.

Если соединение не рвётся, но медленное, пригодится наша статья о том, как проверить скорость и стабильность соединения. А с самого начала Karing настраивается по инструкции о безопасном соединении на компьютере и телефоне. Разницу между протоколами мы разбирали в статье WireGuard или OpenVPN.

Та же настройка для Windows — в статье о рабочем VPN и Karing на Windows.

7 дней бесплатно, карта не нужна. Подключение занимает две минуты.

Начать в Telegram