Облачные роутеры
С помощью облачного роутера можно:
- маршрутизировать трафик между приватными подсетями. Все приватные подсети, подключенные к одному роутеру, могут общаться между собой и использовать 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>