Управление статическими маршрутами
Также можно настроить статические маршруты, вручную добавив записи в таблицу маршрутизации. Это может пригодиться, например, если вам не нужно двустороннее соединение между двумя виртуальными сетями, а требуется только доступ к одной виртуальной сети из другой.
Рассмотрим следующий пример:
- Виртуальная машина VM1 подключена к виртуальной сети private1 (192.168.128.0/24) через сетевой интерфейс с IP-адресом 192.168.128.10.
- Виртуальная машина VM2 подключена к виртуальной сети private2 (192.168.30.0/24) через сетевой интерфейс с IP-адресом 192.168.30.10.
- Маршрутизатор router1 соединяет сеть private1 с физической сетью через внешний шлюз с IP-адресом 10.94.129.73.
- Маршрутизатор router2 соединяет сеть private2 с физической сетью через внешний шлюз с IP-адресом 10.94.129.74.
Для обеспечения доступа к VM2 с VM1 необходимо добавить статический маршрут для router1, указав CIDR сети private2, то есть 192.168.30.0/24, в качестве целевой подсети и IP-адрес внешнего шлюза router2, то есть 10.94.129.74, в качестве IP-адреса следующего транзитного участка. В этом случае, когда IP-пакет для 192.168.30.10 поступает на маршрутизатор router1, он перенаправляется на router2, а затем на VM2.
Предварительные требования
- Создан виртуальный маршрутизатор, как описано в разделе Создание виртуальных маршрутизаторов.
Как создать статический маршрут для маршрутизатора
Панель администратора
- На странице Маршрутизаторы щелкните по имени маршрутизатора. Откройте вкладку Статические маршруты и нажмите Добавить на панели справа. Если не отображается ни одного маршрута, нажмите Добавить статический маршрут.
-
В окне Добавить статический маршрут укажите диапазон и маску целевой подсети в нотации CIDR и IP-адрес следующего транзитного участка. IP-адрес следующего транзитного участка должен принадлежать одной из сетей, к которым подключен маршрутизатор.
-
Нажмите Добавить.
Интерфейс командной строки
Используйте следующую команду:
vinfra service compute router set --route <destination=destination,
nexthop=nexthop> <router>
--route <destination=destination,nexthop=nexthop>-
Статический маршрут для маршрутизатора. Этот параметр можно использовать несколько раз.
destination— целевая подсеть в нотации CIDR.nexthop— IP-адрес следующего транзитного участка в одной из сетей, к которым подключен маршрутизатор.
<router>- Имя или идентификатор виртуального маршрутизатора.
Например, чтобы создать статический маршрут для виртуального маршрутизатора myrouter с подсетью назначения 192.128.30.0/24 и IP-адресом следующего транзитного участка 10.94.129.74, выполните:
# vinfra service compute router set myrouter --route destination=192.128.30.0/24,nexthop=10.94.129.74 +-----------------------+--------------------------------------------------+ | Field | Value | +-----------------------+--------------------------------------------------+ | external_gateway_info | enable_snat: false | | | ip_addresses: | | | - 10.94.129.76 | | | network_id: 720e45bc-4225-49de-9346-26513d8d1262 | | id | b9d8b000-5d06-4768-9f65-2715250cda53 | | name | myrouter | | project_id | 894696133031439f8aaa7e4868dcbd4d | | routes | - destination: 192.128.30.0/24 | | | nexthop: 10.94.129.74 | | status | ACTIVE | +-----------------------+--------------------------------------------------+
Как изменить статический маршрут
Панель администратора
- Щелкните по значку многоточия рядом с нужным статическим маршрутом и выберите Изменить.
- В окне Изменить статический маршрут измените нужные параметры и нажмите Сохранить.
Интерфейс командной строки
Используйте следующую команду:
vinfra service compute router set --route <destination=destination,
nexthop=nexthop> <router>
--route <destination=destination,nexthop=nexthop>-
Статический маршрут для маршрутизатора. Этот параметр можно использовать несколько раз.
destination— целевая подсеть в нотации CIDR.nexthop— IP-адрес следующего транзитного участка в одной из сетей, к которым подключен маршрутизатор.
<router>- Имя или идентификатор виртуального маршрутизатора.
Например, чтобы задать статический маршрут для виртуального маршрутизатора myrouter с подсетью назначения 192.168.30.0/24 и IP-адресом следующего транзитного участка 10.94.129.15, выполните:
# vinfra service compute router set myrouter --route destination=192.168.30.0/24,nexthop=10.94.129.15 +-----------------------+--------------------------------------------------+ | Field | Value | +-----------------------+--------------------------------------------------+ | external_gateway_info | enable_snat: false | | | ip_addresses: | | | - 10.94.129.76 | | | network_id: 720e45bc-4225-49de-9346-26513d8d1262 | | id | b9d8b000-5d06-4768-9f65-2715250cda53 | | name | myrouter | | project_id | 894696133031439f8aaa7e4868dcbd4d | | routes | - destination: 192.168.30.0/24 | | | nexthop: 10.94.129.15 | | status | ACTIVE | +-----------------------+--------------------------------------------------+
Как удалить статический маршрут
Панель администратора
Щелкните по значку многоточия рядом со статическим маршрутом, который следует удалить, и выберите Удалить.
Интерфейс командной строки
Используйте следующую команду:
vinfra service compute router set --no-route <router>
--no-route- Очистка маршрутов, связанных с маршрутизатором.
<router>- Имя или идентификатор виртуального маршрутизатора.
Например, чтобы удалить все статические маршруты виртуального маршрутизатора myrouter, выполните:
# vinfra service compute router set myrouter --no-route +-----------------------+--------------------------------------------------+ | Field | Value | +-----------------------+--------------------------------------------------+ | external_gateway_info | enable_snat: false | | | ip_addresses: | | | - 10.94.129.76 | | | network_id: 720e45bc-4225-49de-9346-26513d8d1262 | | id | b9d8b000-5d06-4768-9f65-2715250cda53 | | name | myrouter | | project_id | 894696133031439f8aaa7e4868dcbd4d | | routes | [] | | status | ACTIVE | +-----------------------+--------------------------------------------------+