Резервный канал связующих сетевых интерфейсов в одной сети
bond
Пример настройки bonding через
/etc/network/interfaces
Код: Выделить всё
auto bond0
iface bond0 inet dhcp
bond-mode active-backup # для резервирования; для балансировки используйте balance-rr или другие режимы
bond-miimon 100
bond-primary eth0
# Укажите активный интерфейс по умолчанию (опционально)
bond-updelay 200
bond-downdelay 200
bond-slaves eth0 eth1
bond-mode active-backup — активный-резервный режим.
bond-miimon 100 — проверка состояния интерфейсов каждые 100 мс.
bond-primary eth0 — основной интерфейс (опционально).
Назначьте интерфейсы eth0 и eth1 как слейвы, если еще не настроены. Обычно это делается автоматически, если они не настроены отдельно.
При поднятии моста, проверить статус бонда
Для поиска ошибок, можно использовать системные логи
основные режимы для bond-mode
balance-rr (mode 0) — балансировка по кругу (Round-Robin)
Передача пакетов по очереди через все интерфейсы
Обеспечивает балансировку нагрузки
Требует поддержки со стороны коммутатора
active-backup (mode 1) — активный резерв
Один интерфейс активен, остальные в резерве
При отказе активного интерфейса автоматически активируется резервный
Поддерживается большинством коммутаторов
balance-xor (mode 2) — балансировка по XOR
Передача зависит от хеша MAC-адресов источника и назначения
Распределяет трафик между интерфейсами
Требует поддержки на коммутаторе
broadcast (mode 3) — широковещательный режим
Все пакеты отправляются через все интерфейсы
Используется для критичных к отказу приложений
802.3ad (mode 4) — динамическая агрегация (LACP)
Стандарт IEEE 802.3ad / LACP
Обеспечивает автоматическое объединение интерфейсов
Требует поддержки на коммутаторе
balance-tlb (mode 5) — балансировка по уровню нагрузки (Transmit Load Balancing)
Балансировка исходящего трафика
Не требует поддержки со стороны коммутатора
balance-alb (mode 6) — балансировка по нагрузке с обратной связью (Adaptive Load Balancing)
Включает балансировку для входящего и исходящего трафика
Требует настройки ARP
Проверить что модуль бонд загружен
иначе, загрузить модуль (если он отсутствует, обновить ядро)
Перезапуск бонда
Код: Выделить всё
ip link set bond0 down ; ip link set bond0 up
После внесения изменений перезапустите сетевые интерфейсы:
Код: Выделить всё
sudo ifdown --exclude=lo,eth0,eth1 bond0
sudo ifup bond0
Перезапустите сеть
Создание сетевого моста (bridge)
Если нужно объединить сети для виртуальных машин или контейнеров, создайте мост:
Отредактируйте /etc/network/interfaces:
Код: Выделить всё
auto br0
iface br0 inet dhcp
bridge-ports eth0 eth1
Перезапустите сеть
Объединение сетей для резервирования — это техника, которая обеспечивает надежное подключение к сети, даже в случае отказа одного из интерфейсов или каналов связи. Она позволяет создать дублирующее или резервное соединение, чтобы минимизировать потерю связи и обеспечить высокую доступность сети.
Что такое резервирование сетевых соединений?
Резервирование сетевых соединений — это настройка, при которой два или более интерфейса или канала связи работают вместе так, что при отказе одного из них автоматически активируется другой, и связь продолжается без прерываний.
Основные способы резервирования:
Active-Backup (активное-резервное): один интерфейс работает постоянно, а в случае его отказа активируется резервный интерфейс.
Балансировка нагрузки: оба интерфейса активны и работают одновременно, распределяя трафик между собой, что также повышает отказоустойчивость.
802.3ad (LACP): использует протокол агрегирования каналов Ethernet для объединения нескольких физических интерфейсов в один логический канал.
bond-miimon в настройках сетевого интерфейса (/etc/network/interfaces) моста определяет частоту проверки состояния слейв-интерфейсов, то есть, как часто система проверяет, работают ли физические интерфейсы, входящие в bonded-соединение.
Этот параметр помогает своевременно обнаруживать сбои в физических интерфейсах и автоматически переключаться на резервный или отключать отказавший интерфейс, обеспечивая тем самым отказоустойчивость и стабильность соединения.
bond-miimon — это интервал времени в миллисекундах между проверками состояния каждого слейв-интерфейса.
Для отказоустойчивости обычно используют режим balance-rr, active-backup, или 802.3ad.
Посмотрите таблицу маршрутизации:
/etc/sysctl.conf
sudo sysctl -p