Плавающий IP-адрес

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

Описание

Плавающий IP — статический публичный адрес, который можно назначить инстансу проекта. Доступ реализуется через трансляцию сетевых адресов SNAT: при исходящей передаче заменяется адрес источника, а в ответном пакете — адрес назначения.

Квота плавающих IP-адресов

Плавающие IP-адреса выделяются проекту при активации. Их количество ограничено квотой публичных адресов, заданной владельцем при заказе SIM-Cloud. Чтобы изменить доступное количество, сначала измените квоту, а затем выделите или освободите адреса.

Назначение и отвязка адреса

Выделенный проекту адрес можно назначить активному инстансу через Dashboard, OpenStack CLI или API.

В веб-интерфейсе назначить или отвязать адрес можно в двух разделах:

  • ComputeInstancesAssociate Floating IP;

  • NetworkFloating IPsAssociate.

Для назначения выберите доступный публичный адрес и целевой порт инстанса.

Предупреждение

Плавающий IP можно назначить только порту из подсети, подключённой к маршрутизатору провайдера, поскольку только он имеет доступ к публичной сети. Подключите интерфейс нужной подсети к маршрутизатору и используйте его как шлюз.

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

Если условия не выполнены, назначить адрес нужному порту не удастся.

Для назначения и отвязки в OpenStack CLI используйте:

Назначение плавающего IP через OpenStack CLI:

Синтаксис:

openstack floating ip set [-h] --port <port>
                          [--fixed-ip-address <ip-address>]
                          [--qos-policy <qos-policy> | --no-qos-policy]
                          <floating-ip>

openstack floating ip set --port <port> --fixed-ip-address <ip-address> <floating-ip>

Пример:

openstack floating ip set --port qbfb9cad-f582-41c8-b821-910a4df65b3t --fixed-ip-address 20.20.20.11 156.67.54.xxx
где:

     * ``qbfb9cad-f582-41c8-b821-910a4df65b3t`` — целевой порт;
     * ``--fixed-ip-address 20.20.20.11`` — фиксированный адрес порта;
     * ``156.67.54.xxx`` — назначаемый публичный адрес; последний октет скрыт.

Отвязка адреса через OpenStack CLI:

Синтаксис:

openstack floating ip unset [--port] <floating-ip>


Пример:

openstack floating ip unset --port  156.67.54.122

Основные особенности плавающих IP-адресов

  • адреса не назначаются инстансам автоматически;

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

  • назначение доступно через веб-интерфейс, OpenStack CLI и API;

  • фактически адрес назначается порту инстанса;

  • адрес можно переназначить другому инстансу, если подсеть его порта подключена к внутреннему маршрутизатору;

  • количество адресов ограничено заказанной квотой;

  • для плавающего адреса можно создать DNS-запись типа PTR.

Примечание

Для публичного доступа к SSH, RDP, HTTP, SMTP, FTP, DNS и другим сервисам они должны прослушивать частный IP-адрес порта, которому назначен плавающий адрес. Не указывайте публичный плавающий IP в конфигурации сервиса: доступ обеспечивается трансляцией SNAT.