Использование продвинутого маршрутизатора

Обновлена 21 мая 2024 г. в 10:03

Использование продвинутого маршрутизатора

Продвинутый маршрутизатор позволяет связать сеть, которая находится в вашей локальной инфраструктуре, с виртуальными сетями и подсетями VK Cloud без использования выделенной виртуальной машины в качестве маршрутизатора. Это упрощает обмен данными за счет возможности динамической маршрутизации по протоколу BGP.

Чтобы показать настройку продвинутого маршрутизатора, по BGP-протоколу будут связаны две независимые сети:

Клиентская сеть — внутренняя сеть заказчика, которая может не иметь доступа к интернету.
Виртуальная сеть — находится в VK Cloud и подключена к платформенному маршрутизатору.

Убедитесь, что клиент OpenStack установлен, и пройдите аутентификацию в проекте.

Выберите клиентскую сеть в вашей локальной инфраструктуре:

Сеть должна быть подключена к маршрутизатору, который:

поддерживает соединение по BGP-протоколу;
(опционально) может поддерживать BFD-протокол: это позволит сократить время сходимости протоколов маршрутизации;
может быть устройством или виртуальной машиной в клиентской сети.

Сеть может не иметь доступа к интернету.

Если подходящей сети нет, создайте ее.

Запишите следующую информацию:

имя и IP-адрес подсети;
имя сети, в которой находится подсеть;
IP-адрес машины в подсети, которая будет использоваться для проверки связи между сетями;
имя BGP-маршрутизатора.

Выберите или создайте виртуальную сеть с доступом к интернет в VK Cloud. Используйте уже существующий маршрутизатор с подключением к внешней сети или создайте новый.

Запишите следующую информацию:

имя и IP-адрес подсети;
имя сети, в которой находится подсеть;
имя маршрутизатора.

Создайте виртуальную машину в выбранной сети. Добавьте доступ по SSH и отключите резервное копирование.

Запишите IP-адрес ВМ.

Обратитесь в техническую поддержку, чтобы подключить в ваш проект сеть для организации выделенного канала подключения (сетевой стык).

Когда сеть будет предоставлена, запишите ее имя, имя и IP-адрес подсети.

Убедитесь, что собраны все сведения, необходимые для дальнейшей работы.

Для примера далее используются следующие данные:

| Объект | Клиентская сеть | Виртуальная сеть | Сетевой стык |
| --- | --- | --- | --- |
| Имя сети | customer-net | vkcloud-net | x-net |
| Имя и IP-адрес подсети | customer-subnet, 10.0.0.0/24 | vkcloud-subnet, 172.17.0.0/24 | x-subnet, 172.20.2.0/24 |
| IP-адрес машины в подсети | 10.0.0.5 | 172.17.0.8 | |
| Имя BGP-маршрутизатора | MikroTik | | |

Схема предварительной подготовки сетей выглядит следующим образом:

В личном кабинете перейдите в раздел Виртуальные сети → Маршрутизаторы.
Нажмите кнопку Добавить маршрутизатор.
Выберите тип Продвинутый. Если в проекте не доступен продвинутый маршрутизатор, обратитесь в техническую поддержку.
Введите название маршрутизатора. В этом примере — advanced-router.
Нажмите кнопку Создать.

Чтобы организовать передачу данных между независимыми сетями, нужно добавить интерфейсы продвинутому маршрутизатору:

Направленные в сеть, где расположен маршрутизатор — vkcloud-net. Эти интерфейсы используются для подключения к машинам внутри сети. Количество таких интерфейсов зависит от структуры сети.
Направленный в сетевой стык — x-net. Этот интерфейс поможет организовать связность между VK Cloud и локальной сетью заказчика.

Для добавления интерфейсов:

Перейдите на вкладку маршрутизатора Интерфейсы.
Добавьте интерфейс в виртуальную сеть:

Нажмите кнопку Добавить интерфейс.

Укажите параметры интерфейса:

Название: vkcloud-net-iface;
Подсеть: vkcloud-subnet;
IP-адрес интерфейса: 172.17.0.100.

Нажмите кнопку Создать.

Добавьте интерфейс в сетевой стык:

Нажмите кнопку Добавить интерфейс.

Укажите параметры интерфейса:

Название: x-net-iface;
Подсеть: x-subnet;
IP-адрес интерфейса: 172.20.2.215.

Нажмите кнопку Создать.

Добавьте сетевые интерфейсы:

Направленный в сетевой стык — x-net. Этот интерфейс поможет организовать связность между VK Cloud и локальной сетью заказчика.
Направленные в клиентскую сеть, где расположен BGP-маршрутизатор Эти интерфейсы используются для подключения к ресурсам внутри сети. Количество таких интерфейсов зависит от структуры сети.

В этом примере:

172.20.2.204/24 — интерфейс в сетевой стык x-net;
10.0.0.15/24 — интерфейс в клиентскую сеть до виртуальной машины 10.0.0.5.

Настройте интерфейсы с использованием DHCP.

Настройте системный идентификатор (System ID).

Подготовьте список сетей для BGP-анонса.

(Опционально) Если маршрутизатор поддерживает BFD, настройте BFD-протокол.

Чтобы настроить связь по BGP-протоколу, нужно добавить динамические маршруты и указать BGP-соседей. Для динамической маршрутизации требуются номера автономных сетей — ASN. Если вашей сети присвоен ASN, используйте его. Если ASN не присвоен, используйте номер из диапазона 64512–65534 — эти номера могут быть назначены для приватных автономных сетей. В примере будут использованы следующие номера:

65512 для сети customer-net;
64512 для сети vkcloud-net.

Чтобы настроить динамические маршруты для advanced-router:

В личном кабинете перейдите в раздел Виртуальные сети → Маршрутизаторы.

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

Нажмите кнопку Создать BGP маршрутизатор.

Укажите параметры BGP-маршрутизатора:

Название: to-MikroTik;
Router ID: 172.20.2.215;
ASN: 64512.

Нажмите кнопку Создать.

Откройте добавленный BGP-маршрутизатор и перейдите на вкладку BGP соседи.

Добавьте BGP-соседа. Укажите параметры:

Название: MikroTik;
Remote neighbor: 172.20.2.204;
Remote ASN: 65512.

Нажмите кнопку Создать.

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

Продвинутый маршрутизатор начнет передавать BGP-анонсы своему соседу. Перейдите на вкладку BGP анонсы и убедитесь, что маршрутизатор передает анонсы всех сетей, в которые направлены его интерфейсы:

172.17.0.0/24;
172.20.2.0/24.

Оба анонса должны иметь зеленые маркеры.

Подключитесь в маршрутизатору в вашей локальной сети.

Укажите параметры для подключения по BGP-протоколу:

ASN локальной сети: 65512;
ID маршрутизатора: 172.20.2.204;
ASN внешней сети: 64512;
ID BGP-соседа: 172.20.2.215;
использовать BFD.

(Опционально) Проверьте, что установлена связь по BFD-протоколу.

Проверьте, что установлена связь с BGP-соседом. Если BGP соединение установлено, в ответе должны прийти значения keepalive-time и uptime, отличные от нуля.

Просмотрите все доступные BGP-маршруты. В списке маршрутов должны быть указаны сети 172.17.0.0/24 и 172.20.2.0/24.

Настройте статический маршрут от виртуальной сети vkcloud-net до клиентской сети customer-net через продвинутый маршрутизатор:

В личном кабинете перейдите в раздел Виртуальные сети → Сети.
Выберите сеть vkcloud-net и откройте свойства подсети.
Выберите Показывать поле статических маршрутов.
Укажите маршрут: 10.0.0.0/24 - 172.17.0.100.
Нажмите кнопку Сохранить.

Настройте статический маршрут от клиентской сети customer-net до виртуальной сети vkcloud-net через BGP-маршрутизатор клиентской сети. Маршрут должен быть к 172.17.0.0/24 через 10.0.0.15.

Перезагрузите машины 172.17.0.8 и 10.0.0.5, чтобы маршруты попали в их маршрутную сеть.

Проверьте, что статические маршруты прописаны на ВМ 172.17.0.8, которая находится в виртуальной сети vkcloud-net:

Откройте сессию терминала с ВМ vkcloud-vm.

Выполните команду:

В списке маршрутов должны быть указаны сети 10.0.0.0/24 и 172.20.2.0/24.

Проверьте список маршрутов для машины 10.0.0.5, которая находится в клиентской сети customer-net. В списке маршрутов должны быть указаны сети 172.17.0.0/24 и 172.20.2.0/24.

Для проверки отправьте ping или traceout до машины в противоположной сети. Если из другой сети приходит ответ, то настройка связности сетей выполнена правильно.

Например, выполните пинг с машины 172.17.0.8 в виртуальной сети до машины 10.0.0.5 в клиентской сети:

Откройте сессию терминала с ВМ vkcloud-vm.

Выполните пинг внутреннего IP-адреса машины в клиентской сети:

IP-адрес должен отвечать на пинг.

Схема выстроенного взаимодействия между сетями и машинами внутри сетей выглядит следующим образом:

Если созданные ресурсы вам больше не нужны, удалите их:

Удалите виртуальную машину.
Удалите маршрутизаторы.
Удалите подсеть и сеть, в которой была размещена ВМ.