Транзитные шлюзы#

Общая информация#

Транзитные шлюзы позволяют организовать взаимодействие между ресурсами в различных VPC. Благодаря возможности предоставления доступа к транзитному шлюзу из других проектов они могут связывать VPC в различных проектах, в том числе принадлежащих разным компаниям.

Транзитный шлюз функционирует как виртуальный маршрутизатор между VPC. Он получает пакеты из одного VPC через её подключение к шлюзу и пересылает их на подключение другого VPC в зависимости от IP-адреса получателя.

Для определения подключения, на который надо переслать трафик, транзитный шлюз использует собственные таблицы маршрутизации — таблицы маршрутизации транзитного шлюза. В них в качестве шлюза указывается подключение к VPC.

Основные понятия#

Подключения — Через них VPC подключаются к транзитному шлюзу. Каждое подключение транзитного шлюза служит источником и адресатом пакетов.

Таблица маршрутизации транзитного шлюза — Таблицы маршрутизации относятся к конкретному транзитному шлюзу и могут назначаться только подключениям этого шлюза. В качестве шлюза в таблице маршрутизации указывается подключение транзитного шлюза (опционально может быть задан «тупиковый маршрут» — blackhole).

Назначения — Каждому подключению транзитного шлюза может быть назначена только одна таблица маршрутизации транзитного шлюза. В свою очередь каждая таблица маршрутизации может быть назначена произвольному числу подключений.

Распространение маршрутов — Маршруты из выбранных подключений могут динамически устанавливаться в таблицу маршрутизации транзитного шлюза. Например, при включении распространения маршрутов из подключения к VPC в таблицу маршрутизации будет добавлен CIDR данного VPC (маршрут до данного CIDR через указанное подключение). Маршруты из одного подключения могут устанавливаться в разные таблицы маршрутизации.

Основная таблица маршрутизации для назначения подключениям — Если для транзитного шлюза задана соответствующая основная таблица, то она назначается по умолчанию его подключениям при их создании.

Основная таблица маршрутизации для распространения маршрутов — Если для транзитного шлюза задана соответствующая основная таблица, то маршруты из создаваемых подключений автоматически устанавливаются в эту таблицу.

Основная таблица маршрутизации транзитного шлюза — Одна и та же таблица маршрутизации транзитного шлюза можно быть основной как для назначения подключениям, так и для распространения маршрутов. Таблица маршрутизации, которая создаётся вместе с транзитным шлюзом, по-умолчанию является основной и для назначения подключениям, и для распространения маршрутов.

Квоты на транзитные шлюзы#

Для транзитных шлюзов предоставляются следующие квоты:

  • до 5 транзитных шлюзов в одном проекте;

  • до 5 подключений разных шлюзов к одному VPC;

  • до 50 статических маршрутов в одной таблице маршрутизации транзитного шлюза;

  • до 100 динамических маршрутов в одной таблице маршрутизации транзитного шлюза;

  • до 20 таблиц маршрутизации на один транзитный шлюз;

  • до 20 подключений всех транзитных шлюзов в одном проекте.

При необходимости вы можете расширить квоты — для этого обратитесь в службу поддержки.

Использование транзитных шлюзов#

Для организации взаимодействия между VPC необходимо создать подключения транзитного шлюза в каждом из связываемых VPC. При создании подключений они привязываются к конкретным подсетям в VPC.

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

Чтобы трафик из некоторой подсети передавался через транзитный шлюз в другое VPC, в таблицу маршрутизации, которая ассоциирована с этой подсетью, необходимо кроме того добавить маршрут, где в качестве шлюза указан данный транзитный шлюз.

Внимание

Если подсеть подключена непосредственно к транзитному шлюзу и ей назначен список контроля доступа, то входящие правила ACL не будут применяться к трафику, поступающему из транзитного шлюза.

Подробнее как связать VPC с помощью транзитного шлюза см. в инструкции.

Операции с транзитными шлюзами#

Создать транзитный шлюз#

Чтобы создать транзитный шлюз:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы и откройте одноимённый подраздел.

  2. Нажмите Создать.

  3. В открывшемся окне вы можете задать тег Name и описание шлюза.

    По умолчанию опция Сделать таблицу маршрутизации основной включена. Если она выбрана, то будет создана пустая таблица маршрутизации и назначена основной для транзитного шлюза. Данная таблица является основной и для назначения подключениям, и для распространения маршрутов. Вы можете отключить опцию и назначить основную таблицу маршрутизации позже.

    Кроме того, вы можете предоставить доступ к создаваемому транзитному шлюзу из других проектов. Для этого укажите проекты в поле Доступ к транзитному шлюзу в формате project@customer. Если потребуется, вы можете предоставить доступ позднее.

  4. Если необходимо добавить дополнительные теги, нажмите Добавить теги для перехода на следующий шаг и назначьте теги.

  5. Нажмите Создать для создания шлюза.

Назначить основную таблицу маршрутизации#

Примечание

Если транзитному шлюзу была ранее назначена основная таблица маршрутизации для назначения подключениям, то задание новой основной таблицы — как и отключение имеющейся — не повлияет на сделанные ранее назначения. Новая таблица будет автоматически назначаться только новым подключениям.

Аналогично, задание другой основной таблицы для распространения маршрутов — или отключение имеющейся — влияет только на новые подключения, т.е. по умолчанию в неё будут устанавливаться маршруты только из новых подключений, тогда как в прежнюю основную таблицу будут по-прежнему добавляться маршруты из существующих подключений.

Если вы хотите назначить новую основную таблицу уже существующим подключениям, то необходимо сделать это вручную.

Если вы хотите назначить транзитному шлюзу основную таблицу маршрутизации для назначения подключений и/или распространения маршрутов, либо отключить её, то для этого выполните следующие шаги:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы и откройте одноимённый подраздел.

  2. Выберите транзитный шлюз в таблице ресурсов.

  3. Нажмите Назначить основную таблицу маршрутизации.

  4. Чтобы задать основную таблицы для назначения подключениям и/или распространения маршрутов, выберите в соответствующем поле таблицу маршрутизации из списка. Вы можете выбрать одну и ту же таблицу в качестве основной и для назначения подключениям, и для распространения маршрутов Чтобы отключить какую-либо основную таблицу маршрутизации, нажмите на рядом с идентификатором таблицы.

  5. Нажмите Назначить для подтверждения выбора.

Кроме того, чтобы назначить другую основную таблицу маршрутизации, вы можете перейти на страницу транзитного шлюза и на вкладке Информация отредактировать соответствующее поле — Основная таблица для назначения маршрутам и/или Основная таблица для распространения маршрутов.

Предоставить доступ к транзитному шлюзу#

Если необходимо подключить VPC из других проектов, в том числе других компаний, то вы можете предоставить доступ из этих проектов к транзитному шлюзу. При наличии доступа пользователи других проектов могут добавлять и удалять подключения к вашему транзитному шлюзу в своих проектах. Все остальные операции с транзитным шлюзом и его ресурсами может выполнять только владелец шлюза.

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы и откройте одноимённый подраздел.

  2. Выберите транзитный шлюз в таблице ресурсов.

  3. Нажмите Настроить доступ.

  4. В открывшемся окне укажите проекты в поле Проекты, которым предоставлен доступ в формате project@customer.

  5. Нажмите Применить.

Задать теги для транзитного шлюза#

Чтобы добавить, изменить или удалить теги транзитного шлюза:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы и откройте одноимённый подраздел.

  2. Выберите в таблице ресурсов транзитный шлюз, для которого необходимо задать теги, и нажмите на идентификатор шлюза для перехода на его страницу.

  3. Откройте вкладку Теги.

  4. Для добавления тега нажмите Добавить тег и задайте поля Ключ и Значение.

    Для изменения тега отредактируйте требуемые поля (Значение и/или Ключ) у изменяемого тега.

    Для удаления тега нажмите на иконку рядом с ненужным тегом.

    Примечание

    Если ни один тег не был ранее задан, то вы можете добавить тег Name, нажав Добавить тег Name.

    Примечание

    Тег Name можно также изменить на вкладке Информация, отредактировав соответствующее поле.

  5. Нажмите Применить для сохранения изменений.

Удалить транзитный шлюз#

Примечание

Если вам предоставлен доступ к шлюзу из другого проекта, то удалить такой шлюз может только его владелец.

Если вы хотите удалить транзитный шлюз, то сначала необходимо удалить все его подключения.

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы и откройте одноимённый подраздел.

  2. Выберите транзитный шлюз в таблице ресурсов. Вы можете выбрать сразу несколько шлюзов для удаления.

  3. Нажмите Удалить.

  4. Подтвердите действие в открывшемся окне.

Операции с таблицами маршрутизации транзитных шлюзов#

Таблицы маршрутизации транзитных шлюзов всегда привязаны к конкретному шлюзу и не могут быть созданы сами по себе.

Создать таблицу маршрутизации транзитного шлюза#

Если у вас нет ни одного транзитного шлюза, то сначала создайте его.

Если необходимо, помимо основной таблицы маршрутизации вы можете создать дополнительные. Чтобы создать таблицу маршрутизации транзитного шлюза:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Нажмите Создать.

  3. В открывшемся окне выберите транзитный шлюз, для которого хотите создать таблицу маршрутизации. Чтобы было проще идентифицировать таблицу, задайте тег Name.

  4. Если необходимо добавить дополнительные теги, нажмите Добавить теги для перехода на следующий шаг и назначьте теги.

  5. Нажмите Создать для создания таблицы маршрутизации транзитного шлюза.

Добавить маршрут#

Маршруты в таблице маршрутизации транзитных шлюзов задаются аналогично тому, как это делается в случае обычных таблиц маршрутизации. В качестве шлюза для трафика указывается подключение транзитного шлюза. Кроме того, вы можете выбрать тупиковый маршрут (blackhole route), при использовании которого отбрасывается весь трафик, предназначенный указанной сети.

Чтобы задать маршрут:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите в таблице ресурсов таблицу маршрутизации, для которой необходимо создать маршрут, и нажмите на идентификатор таблицы для перехода на её страницу.

  3. Откройте вкладку Маршруты и нажмите Добавить.

  4. В открывшемся окне укажите:

    Примечание

    Опции Blackhole и Подключение взаимоисключающие.

    • Сеть назначения в нотации CIDR.

    • Blackhole, если трафик, предназначенный указанной сети, нужно отбросить.

    • Подключение, к которому подключено VPC, где находится сеть назначения.

  5. Нажмите Создать.

Назначить таблицу маршрутизации подключению#

В подразделе Таблицы маршрутизации можно назначить подключению таблицу маршрутизации, только когда у подключения нет назначенной таблицы маршрутизации. Иначе, чтобы воспользоваться данной инструкцией, вам сначала придётся отменить назначение. Если подключению уже назначена таблица маршрутизации транзитного шлюза, то удобнее её поменять на странице подключения.

Чтобы назначить подключению таблицу маршрутизации:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите таблицу маршрутизации транзитного шлюза в таблице ресурсов.

  3. Нажмите Создать назначения.

  4. В открывшемся окне выберите из списка одно или несколько подключений, которым хотите её назначить.

  5. Нажмите Создать.

Таблицу маршрутизации транзитного шлюза можно также назначить подключению на вкладке Назначения на странице этой таблицы маршрутизации.

Включить распространение маршрутов из подключения#

Чтобы не добавлять в таблицу маршрутизации транзитного шлюза маршруты через данное подключение вручную, включите распространение маршрутов.

Примечание

Если задана основная таблица маршрутизации для распространения маршрутов, то для неё распространение маршрутов из всех новых подключений включается автоматически.

  1. Перейдите в раздел Транзитные шлюзы Таблицы маршрутизации.

  2. Найдите таблицу маршрутизации, для которой хотите включить распространение маршрутов, в таблице ресурсов и нажмите на её идентификатор для перехода на страницу этой таблицы маршрутизации.

  3. Перейдите на вкладку Распространение маршрутов и нажмите Включить распространение маршрутов.

  4. В открывшемся окне выберите подключение транзитного шлюза из списка. Одновременно можно выбрать несколько подключений.

  5. Нажмите Включить для завершения операции.

Распространение маршрутов для конкретной таблицы маршрутизации можно также включить, выбрав её в таблице ресурсов и нажав Включить распространение маршрутов.

Задать теги для таблицы маршрутизации#

Чтобы добавить, изменить или удалить теги таблицы маршрутизации:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите в таблице ресурсов таблицу маршрутизации, для которой необходимо задать теги, и нажмите на идентификатор таблицы для перехода на её страницу.

  3. Откройте вкладку Теги.

  4. Для добавления тега нажмите Добавить тег и задайте поля Ключ и Значение.

    Для изменения тега отредактируйте требуемые поля (Значение и/или Ключ) у изменяемого тега.

    Для удаления тега нажмите на иконку рядом с ненужным тегом.

    Примечание

    Если ни один тег не был ранее задан, то вы можете добавить тег Name, нажав Добавить тег Name.

    Примечание

    Тег Name можно также изменить на вкладке Информация, отредактировав соответствующее поле.

  5. Нажмите Применить для сохранения изменений.

Удалить маршрут#

Чтобы удалить один или несколько маршрутов:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите в таблице ресурсов таблицу маршрутизации, из которой необходимо удалить маршрут, и нажмите на идентификатор таблицы для перехода на её страницу.

  3. Откройте вкладку Маршруты.

  4. Выберите удаляемые маршруты и нажмите Удалить.

  5. Подтвердите удаление.

Удалить назначения#

Если вы хотите отменить назначения таблицы маршрутизации транзитного шлюза, то выполните следующие шаги:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите в таблице ресурсов таблицу маршрутизации транзитного шлюза, для которой необходимо отменить назначение.

  3. Нажмите Удалить назначения.

  4. В открывшемся окне выберите из списка одно или несколько подключений, которым назначена эта таблица.

  5. Нажмите Удалить для отмены назначений.

Назначения можно также отменить на вкладке Назначения на странице таблицы маршрутизации транзитного шлюза.

Выключить распространение маршрутов#

Примечание

При выключении распространения маршрутов из таблицы маршрутизации будут удалены установленные в неё маршруты из соответствующих подключений.

  1. Перейдите в раздел Транзитные шлюзы Таблицы маршрутизации.

  2. Найдите таблицу маршрутизации, в которой хотите выключить распространение маршрутов, в таблице ресурсов и нажмите на её идентификатор для перехода на страницу этой таблицы маршрутизации.

  3. Перейдите на вкладку Распространение маршрутов и выберите подключения, для которых необходимо выключить распространение маршрутов.

  4. Нажмите Выключить распространение маршрутов и подтвердите действие в открывшемся окне.

Удалить таблицу маршрутизации транзитного шлюза#

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

Чтобы удалить таблицу маршрутизации транзитного шлюза:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Таблицы маршрутизации.

  2. Выберите одну или несколько удаляемых таблиц маршрутизации транзитного шлюза в таблице ресурсов. Вы можете удалить одновременно таблицы маршрутизации разных транзитных шлюзов.

  3. Нажмите Удалить.

  4. Подтвердите действие в открывшемся окне.

Конкретную таблицу маршрутизации вы можете также удалить на её странице на вкладке Информация.

Операции с подключениями транзитных шлюзов#

Подключения всегда привязаны к конкретному шлюзу и не могут быть созданы сами по себе.

Создать подключение транзитного шлюза#

Если у вас нет ни одного транзитного шлюза, то сначала создайте его.

При создании подключения достаточно выбрать одну подключаемую подсеть в любой зоне доступности, чтобы трафик из остальных подсетей и зон доступности можно было маршрутизировать через транзитный шлюз в другие VPC и пересылался им из этих VPC. Однако если трафик требуется направлять через транзитный шлюз в подсети в других зонах доступности или из них, то лучше указать подключаемую подсеть в каждой зоне доступности. Это позволяет сократить задержку при доставке трафика за счёт устранения промежуточных узлов и, кроме того, повышает отказоустойчивость транзитного шлюза в целом — при проблемах с подключением в какой-либо зоне доступности связность будет обеспечиваться через другие.

На подключаемые подсети налагаются следующие ограничения:

  • CIDR-блоки подсетей, которые подключены к транзитному шлюзу, не должны пересекаться.

  • Если у вас уже создано подключение для выбранного шлюза, то подсети нового подключения этого шлюза к другим VPC должны находиться в тех же зонах доступности.

  • В каждой зоне доступности можно подключить не более одной подсети.

После создания подключения, изменить подключённые подсети нельзя. Если вам потребуется изменить их, то придётся удалить подключение и создать его заново.

Если у транзитного шлюза имеется основная таблица маршрутизации, то она будет назначена создаваемому подключению. Если потребуется, вы можете впоследствии назначить подключению другую таблицу маршрутизации.

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Подключения.

  2. Нажмите Создать.

  3. В открывшемся окне задайте следующие параметры:

    • Тег Name для идентификации подключения (опционально).

    • Транзитный шлюз, для которого создаётся подключение.

    • Тип ресурса. Пока его изменить нельзя — транзитный шлюз можно подключать только к VPC.

    • VPC, к которому будет подключён транзитный шлюз.

    • Подсети в этом VPC, к которым будет подключён транзитный шлюз.

  4. Если необходимо добавить дополнительные теги, нажмите Добавить теги для перехода на следующий шаг и назначьте теги.

  5. Нажмите Создать для создания подключения.

Изменить назначенную таблицу маршрутизации#

Чтобы назначить подключению другую таблицу маршрутизации транзитного шлюза:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Подключения.

  2. Выберите в таблице ресурсов подключение, которому необходимо назначить другую таблицу маршрутизации, и нажмите на идентификатор подключения для перехода на его страницу.

  3. На вкладке Информация отредактируйте поле Таблица маршрутизации.

    Примечание

    Редактирование недоступно, если шлюз создан в другом проекте. Если у вас есть в нём необходимые права, то для редактирования вы можете перейти на страницу подключения в проекте, где был создан шлюз. Для этого нажмите Редактировать в проекте владельца.

Задать теги для подключения#

Чтобы добавить, изменить или удалить теги подключения:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Подключения.

  2. Выберите в таблице ресурсов подключение, для которого необходимо задать теги, и нажмите на идентификатор подключения для перехода на его страницу.

  3. Откройте вкладку Теги.

  4. Для добавления тега нажмите Добавить тег и задайте поля Ключ и Значение.

    Для изменения тега отредактируйте требуемые поля (Значение и/или Ключ) у изменяемого тега.

    Для удаления тега нажмите на иконку рядом с ненужным тегом.

    Примечание

    Если ни один тег не был ранее задан, то вы можете добавить тег Name, нажав Добавить тег Name.

    Примечание

    Тег Name можно также изменить на вкладке Информация, отредактировав соответствующее поле.

  5. Нажмите Применить для сохранения изменений.

Удалить подключение транзитного шлюза#

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

Примечание

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

Чтобы удалить одно или несколько подключений:

  1. Перейдите в раздел Сетевые соединения Транзитные шлюзы Подключения.

  2. Выберите подключения в таблице ресурсов.

  3. Нажмите Удалить.

  4. Подтвердите удаление.

Отдельное подключение можно также удалить на вкладке Информация на его странице.