Дата обновления статьи: 13.08.2026
Плавающий IP (Floating IP) – это публичный статический IP-адрес, который логически не привязан к конкретному физическому серверу или сетевой карте. В отличие от стандартного IP, его можно за доли секунды перенаправить с одного сервера на другой внутри облачной инфраструктуры или кластера. Эта технология является стандартом для построения отказоустойчивых систем, проведения регламентных работ без простоя и балансировки нагрузки.
Содержание
- Чем плавающий IP отличается от статического и динамического?
- Зачем нужен Floating IP: основные сценарии
- Как устроена работа плавающего IP?
- Как создать и привязать плавающий IP
- Настройка автоматического переключения с помощью Keepalived и API провайдера
- Выводы
- Ответы на частые вопросы
Чем плавающий IP отличается от статического и динамического?
Чтобы избежать путаницы, важно разделять три типа адресов:
| Параметр | Плавающий IP (Floating IP) | Статический IP (Static IP) | Динамический IP (Dynamic IP) |
| Суть адреса | Постоянный адрес с гибкой привязкой | Постоянный адрес с жесткой привязкой | Меняющийся адрес при каждой сессии |
| Где используется | Облака (OpenStack, Yandex Cloud, VK Cloud) | Выделенные серверы (Dedicated), VPS | Домашний интернет, мобильные сети |
| Механизм смены | Переназначается через API / CLI / Панель | Переносится вручную с изменением DNS | Изменяется автоматически провайдером (DHCP) |
| Главная цель | Отказоустойчивость и переключение сбоев | Прямой постоянный доступ | Экономия адресов провайдером |
Важно: плавающий IP сам по себе не меняется в цифрах – он остается неизменным для внешних пользователей и DNS-записей. «Плавающим» он называется потому, что «плавает» (перемещается) между внутренними серверами.
Зачем нужен Floating IP: основные сценарии

- Отказоустойчивость: если основной сервер баз данных или веб-приложения выходит из строя, автоматика моментально переназначает плавающий IP на резервный сервер. Пользователи даже не замечают сбоя.
- Обновления без простоя: вы можете выкатить новую версию сайта на второй сервер, протестировать ее и в один клик переключить плавающий IP со старого сервера на новый. В случае ошибки – так же мгновенно откатиться назад.
- Миграция и обслуживание: при необходимости проведения технических работ на узле виртуальная машина переносится, а IP-адрес перепривязывается без необходимости менять A-записи в DNS.
Как устроена работа плавающего IP?
В основе работы Floating IP лежит технология 1:1 NAT (Static Network Address Translation) на уровне SDN (программно-определяемой сети) облачного провайдера.
- Из публичного пула провайдера выделяется внешний IP (например,
198.51.100.5). - В панели управления или через API создается правило, связывающее этот внешний IP с приватным IP-адресом конкретной виртуальной машины (например,
10.0.0.15). - Весь трафик, приходящий на
198.51.100.5, маршрутизатор провайдера транслирует на10.0.0.15. - При переключении адреса изменяется только внутреннее правило трансляции NAT – адрес мгновенно начинает вести на другую ВМ (
10.0.0.16).
Как создать и привязать плавающий IP
Шаг 1. Резервирование публичного IP
Перейдите в панель управления в раздел «Сети» – «IP-адреса» (или Floating IPs). Нажмите кнопку «Зарезервировать IP» и выберите нужную зону доступности.
Шаг 2. Привязка IP к виртуальному серверу
В списке созданных адресов выберите выданный IP, нажмите «Привязать» и укажите целевую виртуальную машину или конкретный сетевой интерфейс (NIC) из вашей приватной подсети.
Настройка автоматического переключения с помощью Keepalived и API провайдера
Для реализации отказоустойчивой схемы (Active-Passive кластер) на двух серверах настраивается демон keepalived в связке со специальным скриптом health-check, который обращается к API облачного провайдера для переброса плавающего IP при падении Master-узла.

1. Установка Keepalived
Установите пакет на оба сервера (Master и Backup):
sudo apt update && sudo apt install keepalived curl -y
2. Конфигурационный файл keepalived.conf
Создайте или отредактируйте файл /etc/keepalived/keepalived.conf.
Ниже приведен пример конфигурации для Master-сервера:
vrrp_script check_service {
# Скрипт проверки работоспособности сервиса (например, Nginx, MySQL или кастомный Health Check)
script «/usr/local/bin/check_health.sh»
interval 2 # Проверять каждые 2 секунды
weight 2 # Очки приоритета при успешной проверке
fall 2 # Количество неудачных попыток до смены статуса
rise 2 # Количество успешных попыток для возврата приоритета
}
vrrp_instance VI_1 {
state MASTER # На Backup-сервере заменить на BACKUP
interface eth0 # Основной сетевой интерфейс вашей ВМ
virtual_router_id 51 # Идентификатор виртуального роутера (должен быть одинаковым на обоих серверах)
priority 101 # Приоритет (на Backup-сервере укажите меньше, например, 100)
advert_int 1 # Частота рассылки VRRP-объявлений (сек)
authentication {
auth_type PASS
auth_pass SecretPassword123 # Надежный общий пароль кластера
}
track_script {
check_service
}
notify_master «/etc/keepalived/to_master.sh» # Скрипт, вызываемый при переходе в роль Master (вызов API провайдера для привязки Floating IP)
notify_backup «/etc/keepalived/to_backup.sh» # Скрипт при переходе в роль Backup
}
3. Пример скрипта переключения через API провайдера (to_master.sh)
Когда узел становится ведущим (Master), он должен отправить запрос к API вашего облачного провайдера, чтобы перенести плавающий IP на свой интерфейс/порт:
#!/bin/bash
# Пример логики переключения плавающего IP через API облака
FLOATING_IP=»198.51.100.5″
INSTANCE_ID=»instance-master-uuid-xxxx»
API_TOKEN=»your_cloud_api_token»
# Запрос к API провайдера на закрепление Floating IP за текущим инстансом
curl -X POST «https://api.cloud-provider.com/v1/floating-ips/$FLOATING_IP/attach» \
-H «Authorization: Bearer $API_TOKEN» \
-H «Content-Type: application/json» \
-d «{\»instance_id\»: \»$INSTANCE_ID\»}»
Не забудьте сделать скрипты исполняемыми (chmod +x /etc/keepalived/*.sh) и настроить авторизацию в соответствии с документацией вашего провайдера.
Выводы
Плавающий IP – это базовый инструмент современного системного администрирования и облачной архитектуры. Он решает главную проблему классических статических адресов – жесткую привязку к конкретному оборудованию и зависимость от задержек обновления DNS. Использование Floating IP в связке с инструментами мониторинга позволяет создавать отказоустойчивые сервисы с высоким уровнем доступности и проводить любые регламентные работы полностью незаметно для пользователей.
Ответы на частые вопросы
Нет, в этом заключается одно из главных преимуществ Floating IP. Доменное имя (A-запись) указывает непосредственно на сам плавающий IP-адрес. При его перебросе на другой сервер сам адрес остается неизменным, поэтому менять DNS-записи и ждать обновления кэша не требуется – трафик сразу начинает идти на новый узел.
Задержка переключения обычно составляет от нескольких сот миллисекунд до 2–5 секунд. Время складывается из интервала обнаружения сбоя утилитой мониторинга (например, keepalived) и времени выполнения API-запроса провайдером. Для веб-пользователей такой краткосрочный перерыв проходит практически незаметно.
Как правило, нет. Плавающий IP логически связан с конкретным регионом или виртуальной приватной сетью провайдера, поэтому его можно переключать только между виртуальными машинами внутри одной локации. Для межрегионального резервирования и геораспределения используются глобальные балансировщики нагрузки или Anycast IP.