VK Private Cloud logo
Помощь
Обновлена 10 августа 2026 г. в 09:51

Способы подключения ВМ к внешней сети

Доступные способы подключения ВМ к внешней сети приведены в таблице 1.

Таблица 1 — Способы подключения ВМ к внешней сети

Способ

Преимущества

Недостатки

Только внутренняя сеть без подключения к внешней сети

  • Полная изоляция от внешних ресурсов.
  • Не требуются внешние IP-адреса
  • Нет доступа к DNS, NTP, публичным репозиториям.
  • Подключение по SSH только через другую ВМ, которая подключена к этой же сети и к сети с внешним доступом

Подключение через Floating IP-адрес.

ВМ подключается к внутренней сети, а из внешней сети выделяется Floating IP-адрес, который через DNAT транслируется на ВМ

  • ВМ доступна из корпоративной сети по внешнему IP-адресу.
  • ВМ не знает о Floating IP-адресе — сетевые настройки ВМ не меняются.
  • Можно назначать и снимать Floating IP-адрес без перенастройки ВМ
  • Расходует много внешних IP-адресов (минимум 6 на первую ВМ, подключенную через Floating IP-адрес).
  • Требует виртуальный маршрутизатор с подключением к внешней сети.
  • На служебные цели потребляются дополнительные IP-адреса на порты floatingip_agent_gateway

Прямое подключение к внешней сети.

ВМ подключается напрямую к внешней сети, IP-адрес назначается на интерфейс в операционной системе ВМ

  • Минимальный расход внешних IP-адресов.
  • Не требуется внутренняя сеть и маршрутизатор.
  • Простая конфигурация

ВМ напрямую работает с внешним IP-адресом. Изменения в конфигурации сети потребуют действия и на самой ВМ

Только внутренняя сеть

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

Особенности:

  • DNS-серверы по умолчанию нацелены на DHCP-агенты, на которых работает локальный DNS.
  • Общий шлюз не указывается или указывается, но фиктивный, поэтому ВМ не может выйти во внешнюю сеть.
  • Доступ к ВМ возможен только с других ВМ в той же сети или через ВМ с внешним доступом.

Работа подобной сети ограничивается только портами DHCP-агентов (network:dhcp) и портами ВМ (compute:<ЗОНА_ДОСТУПНОСТИ>).

Схема подключения к внутренней сети приведена на рисунке 1.

Подключение к внутренней сети
Рисунок 1 — Подключение к внутренней сети

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

Схема подключения к внутренней сети с маршрутизатором приведена на рисунке 2.

Подключение к внутренней сети с маршрутизатором
Рисунок 2 — Подключение к внутренней сети с маршрутизатором

Подключение через Floating IP-адрес

В проекте выделяется Floating IP-адрес из внешней сети и назначается на определенную ВМ, которая подключена к внутренней сети. Для назначения Floating IP-адреса на ВМ нужно создать виртуальный маршрутизатор с включенной опцией Подключение к внешней сети.

При включении опции Подключение к внешней сети:

  • Виртуальный маршрутизатор получит внешний IP-адрес и порт Router Gateway (network:router_gateway).
  • Появится SNAT-порт (network:router_centralized_snat), через который будет проходить исходящий трафик (NAT) всех ВМ.
  • Все ВМ во внутренней сети получат выход во внешнюю сеть, но подключиться к ним извне не получится, пока виртуальной машине не будет назначен Floating IP-адрес.

Floating IP-адрес работает как DNAT/SNAT:

  • Входящий трафик на внешний IP-адрес перенаправляется на внутренний IP-адрес ВМ.
  • В исходящем трафике от ВМ IP-адрес источника подменяется на Floating IP-адрес.

ВМ не знает о существовании Floating IP-адреса, но через OpenStack CLI можно проверить его наличие.

При назначении Floating IP-адреса создается цепочка портов:

Схема подключения ВМ к внешней сети через Floating IP-адрес приведена на рисунке 3.

Подключение ВМ к внешней сети через Floating IP-адрес
Рисунок 3 — Подключение ВМ к внешней сети через Floating IP-адрес

Подключение ВМ к внешней сети через Floating IP-адрес — самый затратный способ подключения по количеству используемых внешних IP-адресов. Для такого подключения требуются:

  • IP-адреса для DHCP-агентов. Количество IP-адресов равно количеству запущенных DHCP-агентов (порты network:dhcp).
  • Один IP-адрес для инфраструктурного маршрутизатора, через который трафик отправляется в корпоративную сеть.
  • Один IP-адрес для виртуального маршрутизатора (порт network:router_gateway).
  • Один IP-адрес для ВМ (порт network:floatingip).
  • Один IP-адрес для порта Floating IP Agent Gateway network:floatingip_agent_gateway.
  • По одному IP-адресу на порт Floating IP Agent Gateway network:floatingip_agent_gateway за каждую миграцию ВМ.

Для провайдерской сети учитывайте IP-адреса под планируемое потребление проекта и IP-адреса на порты network:floatingip_agent_gateway. Рекомендуемая подсеть — /24.

Для общей сети с Floating IP-адресами на большом количестве ВМ рекомендуемая подсеть — /16. Основные потребители IP-адресов в этом случае — ВМ, а количество портов network:floatingip_agent_gateway стабилизируется по мере заполнения вычислительных узлов.

Прямое подключение к внешней сети

При прямом подключении IP-адрес из внешней сети назначается на сетевой интерфейс в операционной системе ВМ. Это самая простая конфигурация, которая не требует создания внутренней сети и виртуального маршрутизатора.

При необходимости к ВМ можно добавить второй интерфейс во внутреннюю сеть через кнопку Добавить подключение на Портале самообслуживания.

При прямом подключении к внешней сети из нее для ВМ выделяется порт, который обслуживается DHCP-агентами внешней подсети. В этой конфигурации ВМ получает сетевые настройки из внешней сети: внешний IP-адрес, внешний общий шлюз, внешние DNS-серверы и прочее.