Маршрутизация с помощью NAT-инстанса

В Яндекс.Облаке можно настроить связь нескольких виртуальных машин с интернетом через NAT-инстанс c помощью статической маршрутизации. При этом будет использован только один публичный IP-адрес — тот, который присвоен виртуальной машине.

Чтобы настроить маршрутизацию через NAT-инстанс:

  1. Подготовьте облако к работе.
  2. Создайте и настройте NAT-инстанс.
  3. Настройте статическую маршрутизацию в облачной сети.
  4. Проверьте работу NAT-инстанса.

Если NAT-инстанс больше не нужен, удалите его.

Подготовьте облако к работе

Перед тем, как разворачивать сервер, нужно зарегистрироваться в Облаке и создать платежный аккаунт:

  1. Перейдите в консоль управления, затем войдите в Облако или зарегистрируйтесь, если вы еще не зарегистрированы.
  2. На странице биллинга убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его.

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

Подробнее об облаках и каталогах.

В стоимость поддержки NAT-инстанса входит:

Создайте сеть, подсеть и тестовую ВМ

  1. Создайте облачную сеть с любым именем, например my-vpc.
  2. Создайте в облачной сети подсеть для NAT-инстанса с любым именем, например public-subnet. Не привязывайте к ней таблицы маршрутизации.
  3. Создайте в облачной сети еще одну подсеть, например private-subnet.
  4. Создайте тестовую виртуальную машину без публичного IP-адреса и подключите ее к подсети private-subnet.

Создайте NAT-инстанс

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

  1. Откройте ваш каталог и нажмите кнопку Создать ресурс. Выберите пункт Виртуальная машина.
  2. Укажите имя виртуальной машины, например nat-instance.
  3. Выберите зону доступности, где находится подсеть public-subnet.
  4. В блоке Публичные образы нажмите кнопку Выбрать и выберите образ NAT-инстанс.
  5. В блоке Сетевые настройки выберите требуемую сеть, подсеть и назначьте NAT-инстансу публичный IP-адрес из списка или автоматически.
  6. В поле Доступ укажите логин и SSH-ключ для доступа к ВМ.
  7. Нажмите кнопку Создать ВМ.

Настройте статическую маршрутизацию

Настройте маршрутизацию между NAT-инстансом и тестовой виртуальной машиной.

Создайте таблицу маршрутизации и добавьте в нее статический маршрут:

  1. Откройте раздел Virtual Private Cloud в каталоге, где требуется создать статический маршрут.

  2. Выберите сеть my-vpc.

  3. Нажмите кнопку imageСоздать таблицу маршрутизации.

  4. Задайте имя таблицы маршрутизации, например nat-instance-route.

    • Длина — от 3 до 63 символов.
    • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
    • Первый символ — буква. Последний символ — не дефис.
  5. Нажмите кнопку Добавить маршрут.

  6. В открывшемся окне введите префикс подсети назначения 0.0.0.0/0.

  7. В поле Next hop укажите внутренний IP-адрес NAT-инстанса. Нажмите кнопку Добавить.

  8. Нажмите кнопку Создать таблицу маршрутизации.

Чтобы использовать статические маршруты, необходимо привязать таблицу маршрутизации к подсети, где находятся виртуальные машины, в примере — private-subnet. Для этого:

  1. В строке подсети c тестовой ВМ нажмите кнопку image.
  2. В открывшемся меню выберите пункт Привязать таблицу маршрутизации.
  3. В открывшемся окне выберите таблицу nat-instance-route из списка.
  4. Нажмите кнопку Привязать.

Созданный маршрут можно применять и к другим подсетям в той же сети, кроме подсети, где находится NAT-инстанс.

Проверьте работу NAT-инстанса

  1. Подключитесь по ssh к NAT-инстансу:

    $ ssh <публичный IP-адрес NAT-инстанса>
    
  2. Через NAT-инстанс подключитесь по SSH к тестовой ВМ в той же подсети:

    $ ssh <внутренний IP-адрес ВМ>
    
  3. Убедитесь, что доступ в интернет ВМ получает через публичный IP-адрес NAT-инстанс. Введите в терминале команду:

    $ curl ifconfig.co
    

    Если команда вернет публичный IP-адрес NAT-инстанса, то все настроено правильно.

Удалите созданные ресурсы

Если вам больше не нужен NAT-инстанс, удалите ВМ nat-instance.