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

Итак, задача первая – анонсировать под всем роутерам компании адреса, которые выдаются VPN-клиентам. Иначе придется либо городить NAT из VPN’а в локалку, либо ничего работать не будет. NAT плох тем, что все подключенные ходят по одному адресу и доступа к компам снаружи нету. Сложность в том, что второй роутер находится в локалке, а OSPF-интерфейс в локальную сеть на основной железке находится в пассивном режиме – зачем в принтеры спамить маршрутной информацией?

Вариант первый описан в упомянутой статье – добавить статичный маршрут в VPN-подсеть на основном роутере плюс маршрут вида “вся локалка” на втором. Технически, это всё работает и более того – единственный вариант для тех “вторых” серверов, которые не умеют в динамическую маршрутизацию.

Вариант второй более правильный, но применим, в целом только если VPN-сервер умеет OSPF. Для этого OSPF-интерфейс переводим из пассивного режима в режим NBMA и на вкладке NBMA Neighbors добавляем адрес второго роутера, на котором делаем аналогичную настройку.

Всё! Маршруты распространяются, всё бегает корректно. Единственное, что есть смысл не забыть сделать VPN-интерфейсы пассивными, в них спамить маршрутной информацией ни к чему. Для этого добавляем новый интерфейс “All’ и делаем его пассивным. Вот теперь точно всё.

Теперь вторая часть марлезонского балета. Дело в том, что маршрутная информация обновляется по всем роутерам при изменении маршрутов на любом из них. А в условиях, когда у нас есть VPN-сервер, на котором люди бегают туда-сюда и маршруты на VPN-сервере постоянно меняются. Чтобы оптимизировать это, будем из VPN-сервера делать Border Router, который еще вдобавок будет заниматься суммированием подсети.

Для этого нам нужна новая область. Называем её по вкусу и выставляем тип NSSA, хотя вполне можно использовать менее универсальный STUB. Указываем очередной свободный Area ID и всё остальное оставляем по умолчанию. Маршруты мы туда никакие слать не собираемся, поэтому настраивать там просто нечего. Далее для всей VPN-подсети указываем новую область и в разделе Area Ranges тоже добавляем новую область с указанием все той же VPN-подсети.

Теперь роутер, он же VPN-сервер по совместительству, будет сообщать не “я обслуживаю 100500 подсетей из одного адреса, которые меняются постоянно”, а “я обслуживаю подсеть такую-то” и всё. Дальнейшее исключительно его забота и всех остальных волновать не должно.

Нужные, вероятно, замечания:

  • Если не включить суммирование, а просто настроить Border Router – он продолжит анонсировать сети из одного адреса
  • Если включить суммирование, но не настраивать Border Router – он продолжит анонсировать сети из одного адреса
  • Если сделать распространение статических маршрутов и не морочиться с настройкой OSPF на VPN-сервере – могут вылезти интересные артефакты, когда ВСЯ сеть ходит через роутер, где этот маршрут добавлен, хотя в этом нет великой нужды

Добавить комментарий