Маршрутизация в СКАТ
Роутинг в СКАТ осуществляется посредством обмена маршрутами между СКАТ и Soft-Router с использованием Linux kernel route table. Подробнее ознакомиться с этим можно в нашей базе знаний.
Основные возможности СКАТ в роли роутера включают:
- Поддержку протоколов маршрутизации BGP и OSPF.
- Реализацию VRF Lite, при которой СКАТ разделяет таблицы маршрутизации, но не создаёт уникальные туннели для трафика каждого VRF (например, MPLS, VXLAN). VRF Lite позволяет изолировать предоставляемые сервисы и оптимизировать маршрутизацию при использовании различных каналов.
- Поддержку Equal Cost Multi-Path (ECMP) и Link Aggregation Group (LAG).
С выходом версии 13.1 СКАТ может использоваться в роли Border Router (пограничного маршрутизатора).
Оптимизация маршрутизации в СКАТ с ARP-менеджером
Рассмотрим типовую схему построения сети оператора связи, где СКАТ выполняет роль DPI/NAT/BRAS/Border Router. СКАТ терминирует на себе абонентский L2-сегмент для IPoE/PPPoE-подключений со стороны входных интерфейсов. Out-интерфейсы включены в коммутатор, к которому подключены Uplink и внутренние маршрутизаторы.
В данной схеме СКАТ принимает BGP Full View от магистрального оператора (BGP Router) и по OSPF связан с маршрутизатором (OSPF Router), за которым находятся локальные сервисы оператора связи.
Особенность данной схемы заключается в том, что BGP Router анонсирует в качестве nexthop не себя, а другие роутеры, такие как Router 1 или Router 2. Таким образом вышестоящий провайдер реализует резервирование uplink-канала и дополнительно централизованное управление анонсированием маршрутов для нижестоящего провайдера.
До версии 13.1 СКАТ не мог самостоятельно отправить ARP-запрос для получения MAC-адресов роутеров Router 1 и Router 2, что не позволяло сформировать пакет в сторону nexthop. Ранее СКАТ заполнял свою ARP-таблицу путем анализа ARP-запросов из network name space и ответов на эти запросы. Однако в данном сценарии сетевой стек Linux не формирует ARP-запросы к Router 1 и Router 2, так как в этом нет необходимости. Для решения этой задачи в СКАТ был добавлен ARP-менеджер. Теперь СКАТ может формировать ARP-запросы к необходимым IP-адресам. Формируя ARP-запрос, СКАТ в качестве src IP использует адрес, указанный в параметре bras_arp_ip.
Подробнее про ARP-менеджер вы можете прочитать в нашей базе знаний.
Заключение
Мы продолжим работу над ARP-менеджером и его улучшением. В ближайших планах — добавить возможность формирования ARP-запросов с различными src IP-адресами, помимо адреса, указанного в параметре bras_arp_ip. Это позволит устанавливать несколько BGP-сессий с разными провайдерами.