TGViewer
Записки IT специалиста Записки IT специалиста @interface31 · 9.02K subscribers
Post #4402 2.93K
​​Вернемся к вчерашнему вопросу про OpenVPN и два маршрута.

Правильный ответ: препятствует переопределению нулевого маршрута

Почему так? Давайте разбираться. Пример таблицы маршрутов с активным OpenVPN соединением показан на рисунке ниже.

Сразу же в очередной раз вспоминаем, как идет поиск маршрута в таблице:

1️⃣ Сначала ищется маршрут к узлу назначения с самой узкой маской

2️⃣Затем определяется интерфейс выхода среди непосредственно присоединенных сетей, который позволяет достичь указанного в маршруте шлюза.

Если к одному узлу назначения ведут несколько маршрутов с одинаковой шириной маски, то выбирается маршрут с лучшей метрикой .

Теперь давайте смотреть: прежде всего обратим внимание на маршрут xx.xx.254.75/32 который указывает на сам OpenVPN сервер через основной шлюз. Так как это наиболее узкая из всех возможных масок, то поиск маршрута на этом прекращается и пакет к серверу уходит через основное подключение.

Затем у нас есть два маршрута к непосредственно присоединенным сетям 10.8.0.0/24 и 192.168.0.0/24. Эти маршруты обеспечат правильное направление пакетов для локальной сети и внутренней сети VPN.

Остальной трафик не попадает ни под один из указанных выше маршрутов и поиск для него продолжается дальше.

В результате будет найдет один из двух маршрутов 0.0.0.0/1 или 128.0.0.0/1, которые делят пополам все доступное адресное пространство. И по совокупности представляют собой нулевой маршрут, куда будет уходить весь трафик, для которого не будет найдено отдельного маршрута.

А так как маска /1 уже маски /0, то поиск никогда не дойдет до маршрута 0.0.0.0/0, поэтому ответ «сохраняет для клиента нулевой маршрут» неверен.

Потому что даже если мы не будем делить маршруты на два диапазона и пропишем еще один нулевой, то в системе появится два нулевых маршрута с разными шлюзами и разными метриками. Но использоваться будет тот, чья метрика меньше.

Основной недостаток такого подхода – это переопределение нулевого маршрута другим подключением. Например, вы присоединили 4G модем, переподключились к другой беспроводной сети или подключили еще один VPN.

Как минимум это потребует переподключения OpenVPN, а в иных случаях ручного переопределения приоритетов маршрутов.

Чтобы избежать подобных ситуаций OpenVPN использует два маршрута с более узкой маской вместо одного нулевого, в этом случае даже при переопределении нулевого маршрута в системе трафик пользователя все равно будет уходить в VPN-туннель.
  • 👍 38
  • ❤ 5
More from @interface31
  1. Oct 15, 2026И еще немного про алиасы в PowerShell PowerShell предлагает большой набор встроенных алиас…
  2. Oct 15, 2026Post #6883
  3. Oct 15, 2026Настраиваем политику паролей в Linux Во многих дистрибутивах Linux (а более подробно мы бу…
  4. Oct 15, 2026Post #6881
  5. Oct 14, 2026Mageia 10 - такое волшебство нам не нужно! В мире Linux есть различные дистрибутивы, больш…
  6. Oct 14, 2026Post #6879
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →