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

Нажмите Добавить.
Используйте следующую команду:
vinfra service compute floatingip create [--floating-ip <floating-ip>]
[--port-id <port-id>]
[--fixed-ip <fixed-ip>]
[--description <description>]
--network <network>
--floating-ip <floating-ip>Плавающий IP-адрес.
--port-id <port-id>Идентификатор порта, который будет связан с плавающим IP-адресом. Чтобы узнать идентификатор порта выбранной виртуальной машины, используйте команду
vinfra service compute server iface list.--fixed-ip <fixed-ip>IP-адрес порта (требуется, только если у порта несколько IP-адресов).
--description <description>Описание плавающего IP-адреса.
--network <network>Идентификатор или имя сети, из которой будет выделен плавающий IP-адрес.
Например, чтобы создать плавающий IP-адрес из физической сети public и назначить его виртуальной машине на порт с идентификатором 418c8c9e-aaa5-42f2-8da7-24bfead6f28b и виртуальным IP-адресом 192.168.128.5, выполните:
# vinfra service compute floatingip create public --port-id 418c8c9e-aaa5-42f2-8da7-24bfead6f28b \
--fixed-ip-address 192.168.128.5
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| attached_to | a172cb6a-1c7b-4157-9e86-035f3077646f |
| description | |
| fixed_ip_address | 192.168.128.5 |
| floating_ip_address | 10.94.129.72 |
| floating_network_id | 720e45bc-4225-49de-9346-26513d8d1262 |
| id | a709f884-c43f-4a9a-a243-a340d7682ef8 |
| port_id | 418c8c9e-aaa5-42f2-8da7-24bfead6f28b |
| project_id | 894696133031439f8aaa7e4868dcbd4d |
| router_id | f7f86029-a553-4d61-b7ec-6f581d9c5f5f |
| status | DOWN |
+---------------------+--------------------------------------+
Созданный плавающий IP-адрес появится в выводе команды vinfra service compute floatingip list:
# vinfra service compute floatingip list -c id -c fixed_ip_address -c port_id -c floating_ip_address
+----------------+------------------+----------------+---------------------+
| id | fixed_ip_address | port_id | floating_ip_address |
+----------------+------------------+----------------+---------------------+
| a709f884-<...> | 192.168.128.5 | 418c8c9e-<...> | 10.94.129.72 |
+----------------+------------------+----------------+---------------------+
Как получить сведения о плавающем IP-адресе
Используйте следующую команду:
vinfra service compute floatingip show <floating-ip>
<floating-ip>Идентификатор плавающего IP-адреса.
Например, чтобы вывести сведения о плавающем IP-адресе с идентификатором a709f884-c43f-4a9a-a243-a340d7682ef8, выполните:
# vinfra service compute floatingip show a709f884-c43f-4a9a-a243-a340d7682ef8
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| attached_to | a172cb6a-1c7b-4157-9e86-035f3077646f |
| description | |
| fixed_ip_address | 192.168.128.5 |
| floating_ip_address | 10.94.129.72 |
| floating_network_id | 720e45bc-4225-49de-9346-26513d8d1262 |
| id | a709f884-c43f-4a9a-a243-a340d7682ef8 |
| port_id | 418c8c9e-aaa5-42f2-8da7-24bfead6f28b |
| project_id | 894696133031439f8aaa7e4868dcbd4d |
| router_id | f7f86029-a553-4d61-b7ec-6f581d9c5f5f |
| status | ACTIVE |
+---------------------+--------------------------------------+
Как переназначить плавающий IP-адрес другой виртуальной машине
Нажмите значок многоточия напротив плавающего IP-адреса и выберите Снять назначение.
Когда имя ВМ исчезнет из столбца Назначен, снова нажмите значок многоточия и выберите Назначить.
В окне Назначить плавающий IP-адрес выберите сетевой интерфейс ВМ с фиксированным частным IP-адресом.
Нажмите Назначить.
Используйте следующую команду:
vinfra service compute floatingip set [--port-id <port-id>] [--fixed-ip <fixed-ip>]
[--description <description>] <floating-ip>
--port-id <port-id>Идентификатор порта, который будет связан с плавающим IP-адресом.
--fixed-ip <fixed-ip>IP-адрес порта (требуется, только если у порта несколько IP-адресов).
--description <description>Описание плавающего IP-адреса.
<floating-ip>Идентификатор плавающего IP-адреса.
Например, чтобы назначить плавающий IP-адрес с идентификатором a709f884-c43f-4a9a-a243-a340d7682ef8 виртуальной машине на порт с идентификатором 8c11c29b-9a73-4017-baff-1e872b18b54b и виртуальным IP-адресом 192.128.30.15, выполните:
# vinfra service compute floatingip set a709f884-c43f-4a9a-a243-a340d7682ef8 \
--port-id 8c11c29b-9a73-4017-baff-1e872b18b54b --fixed-ip-address 192.128.30.15
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| attached_to | 3a092f6f-bbaf-47a9-bcc7-f86223aacb55 |
| description | |
| fixed_ip_address | 192.128.30.15 |
| floating_ip_address | 10.94.129.72 |
| floating_network_id | 720e45bc-4225-49de-9346-26513d8d1262 |
| id | a709f884-c43f-4a9a-a243-a340d7682ef8 |
| port_id | 8c11c29b-9a73-4017-baff-1e872b18b54b |
| project_id | 894696133031439f8aaa7e4868dcbd4d |
| router_id | f7f86029-a553-4d61-b7ec-6f581d9c5f5f |
| status | ACTIVE |
+---------------------+--------------------------------------+
Как удалить плавающий IP-адрес
Отмените его назначение виртуальной машине. Нажмите значок многоточия напротив плавающего IP-адреса и выберите Снять назначение.
Снова нажмите значок многоточия и выберите Удалить.
Используйте следующую команду:
vinfra service compute floatingip delete <floating-ip>
<floating-ip>Идентификатор плавающего IP-адреса.
Например, чтобы удалить плавающий IP-адрес с идентификатором a709f884-c43f-4a9a-a243-a340d7682ef8, выполните:
# vinfra service compute floatingip delete a709f884-c43f-4a9a-a243-a340d7682ef8
Operation successful