Плавающие IP, или floating IPs — это публичные IP-адреса, которые могут перенаправляться системой на приватные IP.
Преимущества плавающих IP-адресов
- На VPS может не быть настроенного публичного IP, если он создан в приватной сети. Но при помощи плавающего IP он будет доступен из мира по статическому публичному IP.
- Полезно, когда нужно построить отказоустойчивую инфраструктуру.
- К примеру, все домены и сервисы можно направить на плавающий IP, который будет закреплен за VPS. В случае недоступности этого VPS, IP можно закрепить на другую VPS-копию первого сервера через панель управления. Таким образом, VPS будет недоступен в течение минимального времени, так как для мира публичный IP-адрес остается неизменным.
Что нужно, чтобы добавить плавающий IP
- VPS должен находиться в приватной сети с доступом в мир. Если приватной сети еще нет, ее можно создать по инструкции.
- Если приватная сеть с выходом в мир есть — можно сразу переходить к подключению плавающего IP.
Как подключить плавающий IP
Чтобы подключить плавающий IP, его нужно сначала выделить для проекта.
1. Переходите в раздел Проект -> Сеть -> Плавающие IP и нажимаете на кнопку Выделить IP проекту:
2. В поле Пул оставляете публичную сеть, откуда будет выделен публичный IP.
Если нужно, заполняете описание и нажимаете на Выделить IP:
3. Видите выделенный IP в списке. Напротив него нажимаете кнопку Назначить:
- Поле IP-адрес оставляете по умолчанию
- В поле Порт для назначения указываете сервер с IP приватной сети, которому назначаете плавающий IP
Нажимаете Назначить в меню и ждете, пока операция закончится:
4. IP закреплен за сервером и доступен из мира. Если нужно, его можно отвязать от текущего сервера и назначить другому в этом же разделе.
Как поменять сеть для сервера, созданного в публичной сети
Если сервер изначально создан в публичной сети — можно поменять для него сеть, заменив сетевой интерфейс карты:
1. Убираете текущий интерфейс публичной сети.
В меню Проект -> Вычислительные ресурсы -> Серверы из выпадающего меню напротив нужного сервера выбираете пункт Отсоединить интерфейс.
Из выпадающего списка выбираете IP публичной сети и нажимаете Отсоединить интерфейс.
2. После удаления добавляете новый интерфейс приватной сети. Для этого выбираете опцию Подключить интерфейс из выпадающего меню напротив сервера:
- Из выпадающего списка выбираете нужную приватную сеть
- Поле IP оставляете пустым — адрес будет выделен автоматически
- Нажимаете кнопку Подключить интерфейс:
3. Чтобы изменения применились, перезагружаете сервер любым удобным способом.
4. Назначаете плавающий IP по инструкции в начале статьи.
Как проверить смену IP на сервере для Linux
Для Linux нужно дополнительно проверить, изменился ли IP на сервере:
1. Подключаетесь к серверу через консоль.
2. От имени root или через sudo — пишете sudo su перед работой — вводите команду: Ifconfig
3. Если сразу видите в выдаче адрес из нужной приватной сети — интерфейс заменился:
4. Если по какой-то причине видите только один локальный адрес 127.0.0.1, нужно вручную поменять карту.
Выполняете команду: ip l
Видите текущие подключенные карты lo и ens3. В разных дистрибутивах карты могут называться по-разному, не ens. lo нас не интересует, работаем с ens3.
У ens3 указан MAC-адрес fa:16:3e:a5:0f:c3:
5. Проверяете текущее udev-правило:
cat /etc/udev/rules.d/70-persistent-net.rules
Вывод:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="fa:16:3e:a5:0f:c3", NAME="ens3"
Видите, что имя сетевого интерфейса определяется на основании MAC-адреса.
6. Удаляете данное правило:
rm /etc/udev/rules.d/70-persistent-net.rules
7. Повторно перезагружаете сервер или выполняете команду: dhclient ens3
8. Проверяете, что отображается сетевой интерфейс с новым IP. Для этого повторно вводите Ifconfig
Если все сделано правильно, видите IP нужной приватной сети:
10. Если имя интерфейса не изменилось, дополнительные изменения в конфигурационных файлах не требуются. Проверить это можно с помощью команды ip l.