Облачные роутеры
С помощью облачного роутера можно:
- маршрутизировать трафик между приватными подсетями. Все приватные подсети, подключенные к одному роутеру, могут общаться между собой и использовать IP-адрес роутера как маршрут по умолчанию;
- настроить доступ в интернет для устройств в приватной подсети (исходящий трафик) и из интернета (входящий трафик), подробнее в инструкции Настроить доступ в интернет и из интернета. Облачный роутер выполняет функцию 1:1 NAT через внешний IP-адрес, который выделяется при подключении роутера к внешней сети: организовывает доступ в интернет из приватной подсети и обрабатывает пакеты входящего трафика для публичных IP-адресов.
На облачном роутере можно настроить статические маршруты.
Облачный роутер можно использовать только внутри одного проекта и одного пула.
Для облачных роутеров есть ограничения на объем трафика — пропускная способность. Ее можно посмотреть в таблице Пропускная способность.
Работать с облачными роутерами можно в панели управления, с помощью OpenStack CLI или Terraform.
Создать облачный роутер
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройт е вкладку Облачные роутеры.
- Нажмите Создать роутер.
- Выберите пул, в котором будет создан облачный роутер.
- Введите имя роутера.
- Опционально: отметьте чекбокс Подключить роутер к внешней сети — для роутера будет выделен внешний IP-адрес.
- Нажмите Создать.
-
Создайте облачный роутер:
openstack router create <router_name>
Укажите
<router_name>
— имя облачного роутера. -
Опционально: подключите облачный роутер к внешней сети — для роутера будет выделен внешний IP-адрес:
openstack router set --external-gateway external-network <router>
Укажите
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
Подключить подсеть к облачному роутеру
Чтобы приватные подсети могли общаться между собой, их нужно подключить к одному облачному роутеру. Подсети должны иметь разные CIDR.
Чтобы настроить доступ в интернет и из интернета для устройств в приватных подсетях с помощью облачного роутера, используйте инструкцию Настроить доступ в интернет и из интернета.
Панель управления
OpenStack CLI
-
В панели управления перейдите в раздел Облачная платформа → Сеть.
-
Откройте вкладку Облачные роутеры.
-
Откройте карточку роутера.
-
Нажмите Добавить подсеть.
-
Выберите приватную подсеть или подсеть глобального роутера.
-
Введите IP-адрес роутера. IP-адрес облачного роутера должен совпадать с шлюзом по умолчанию приватной подсети. Посмотреть шлюз по умолчанию в приватной подсети можно на вкладке Приватные сети → страница сети → вкладка Подсети → карточка подсети → блок Автоматические сетевые настройки → поле Шлюз подсети.
Если вы подключаете подсеть глобального роутера, IP-адрес облачного роутера должен совпадать со шлюзом по умолчанию подсети глобального роутера и отличаться от IP-адреса глобального роутера, IP-адресов устройств в сети и служебных адресов
.253
и.254
. -
Нажмите Добавить подсеть.
-
Подключите подсеть к облачному роутеру:
openstack router add subnet <router> <subnet>
Укажите:
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
;<subnet>
— ID или имя приватной подсети, можно посмотреть с помощью командыopenstack subnet list
Отключить подсеть от облачного роутера
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- Откройте карточку роутера.
- В меню приватной подсети выберите Удалить порт.
- Нажмите Удалить.
-
Отключите подсеть от облачного роутера:
openstack router remove subnet <router> <subnet>
Укажите:
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
;<subnet>
— ID или имя подсети, можно посмотреть с помощью командыopenstack subnet list
Подключить облачный роутер к внешней сети
Чтобы настроить доступ в интернет для устройств в приватной подсети, подсеть должна быть подключена к облачному роутеру с выходом во внешнюю сеть (external-network
). При подключении роутера к внешней сети для него будет выделен внешний IP-адрес, через который роутер будет выполнять функцию 1:1 NAT.
Если роутер объединяет несколько приватных подсетей, устройства во всех подсетях будут иметь доступ в интернет.
Чтобы настроить доступ из интернета для устройств в приватных подсетях с помощью облачного роутера, используйте инструкцию Настроить доступ в интернет и из интернета.
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- В меню облачного роутера выберите Подключить к внешней сети.
-
Подключите облачный роутер к внешней сети:
openstack router set --external-gateway external-network <router>
Укажите
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
Отключить облачный роутер от внешней сети
Если вы отключите облачный роутер от внешней сети, его внешний IP-адрес вернется в пул адресов. После повторного подключения IP-адрес изменится.
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- В меню облачного роутера выберите Отключить от внешней сети.
-
Отключите облачный роутер от внешней сети:
openstack router unset --external-gateway <router>
Укажите
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
Назначить файрвол на порт облачного роутера
Входящий и исходящий трафик, который не разрешен в правилах облачного файрвола, будет запрещен на порте облачного роутера. На роутере прервутся активные сессии, которые нельзя устанавливать по новым правилам.
На один порт роутера нельзя назначить более одного файрвола.
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- Откройте карточку облачного роутера.
- В строке приватной подсети, для которой нужно настроить фильтрацию трафика, в столбце Файрвол нажмите Подключить.
- Выберите файрвол.
- Нажмите Назначить.
-
Назначьте файрвол на порт облачного роутера:
openstack firewall group set --port <router_port> <firewall>
Укажите:
<router_port>
— ID или имя порта роутера, на который будет назначен файрвол, можно посмотреть с помощью командыopenstack port list
. Чтобы назначить файрвол на несколько портов роутера, перечислите их ID или имена через пробел;<firewall>
— ID или имя файрвола, можно посмотреть с помощью командыopenstack firewall group list
Отключить файрвол от порта облачного роутера
Правила облачного файрвола перестанут действовать — весь входящий и исходящий трафик, который проходит через порт облачного роутера, будет разрешен.
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- Откройте карточку роутера.
- В меню приватной подсети, для которой была настроена фильтрация трафика, выберите Отключить порт от порта.
- Нажмите Отключить.
-
Отключите файрвол от порта роутера:
openstack firewall group unset --port <router_port> <firewall>
Укажите:
<router_port>
— ID или имя порта роутера, от которого будет отключен файрвол, можно посмотреть с помощью командыopenstack port list
;<firewall>
— ID или имя файрвола, можно посмотреть с помощью командыopenstack firewall group list
Включить облачный роутер
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- В карточке облачного роутера включите роутер.
-
Включите облачный роутер:
openstack router set --enable <router>
Укажите
<router>
— ID или имя роутера, можно посмотреть с помощью командыopenstack router list
Выключить облачный роутер
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- В карточке облачного роутера отключите роутер.
-
Отключите облачный роутер:
openstack router set --disable <router>
Укажите
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
Удалить облачный роутер
Панель управления
OpenStack CLI
- В панели управления перейдите в раздел Облачная платформа → Сеть.
- Откройте вкладку Облачные роутеры.
- Если к роутеру подключены подсети, удалите порты роутера в подсетях. Для этого откройте карточку роутера и в меню подсети выберите Удалить порт.
- В меню роутера выберите Удалить роутер.
- Нажмите Удалить.
-
Если к роутеру подключены подсети, удалите порты роутера:
openstack router remove port <router> <port_id>
Укажите:
<router>
— ID или имя облачного роутера, можно посмотреть с помощью командыopenstack router list
;<port_id>
— ID порта, подключенного к роутеру, можно посмотреть с помощью командыopenstack port list --router <router>
-
Удалите роутер:
openstack router delete <router>