Сетевой мост (Bridge) в Linux позволяет объединить несколько сетевых интерфейсов в один логический интерфейс, обеспечивая прозрачную коммутацию трафика между ними. Это необходимо для виртуализации, контейнеризации и организации сложных сетевых топологий на сервере.
Зачем нужна настройка сетевого моста
- Объединение физических сетевых интерфейсов для отказоустойчивости и балансировки нагрузки
- Создание виртуальной сетевой инфраструктуры для гостевых операционных систем и контейнеров Docker/KVM
- Настройка сегментации трафика между виртуальными машинами и хостом
- Реализация VLAN и продвинутых сетевых конфигураций на уровне гипервизора
- Обеспечение прямого доступа виртуальных машин к физической сети без NAT
Процесс настройки сетевого моста
Этап 1: Определение текущей конфигурации
- Откройте терминал и выполните команду
ip link showдля отображения всех сетевых интерфейсов - Запишите названия интерфейсов, которые требуется объединить (например,
eth0,eth1) - Проверьте текущие маршруты командой
ip route show - Узнайте текущий IP-адрес интерфейса через
ip addr show
Этап 2: Отключение управления сетью (NetworkManager)
- Остановите сервис
systemctl stop NetworkManager - Отключите автозагрузку
systemctl disable NetworkManager - Убедитесь, что используется инструмент
netplanили/etc/network/interfaces
Этап 3: Настройка моста через Netplan (Ubuntu/Debian 18.04+)
- Откройте файл конфигурации Netplan:
sudo nano /etc/netplan/00-installer-config.yaml - Замените содержимое файла на конфигурацию моста (см. пример ниже)
- Проверьте синтаксис YAML:
sudo netplan validate - Примените изменения:
sudo netplan apply
Пример конфигурации Netplan для моста:
network:
version: 2
ethernets:
eth0:
dhcp4: false
eth1:
dhcp4: false
bridges:
br0:
dhcp4: true
interfaces: [eth0, eth1]
Этап 4: Настройка моста через /etc/network/interfaces (Debian/старые версии)
- Откройте файл:
sudo nano /etc/network/interfaces - Удалите или закомментируйте строки конфигурации исходных интерфейсов
- Добавьте блок конфигурации моста (см. пример ниже)
- Перезагрузите сетевой сервис:
sudo systemctl restart networking
Пример конфигурации для /etc/network/interfaces:
auto eth0
iface eth0 inet manual
auto eth1
iface eth1 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0 eth1
bridge_stp off
bridge_fd 0
Этап 5: Настройка моста через brctl (альтернативный метод)
- Установите утилиту:
sudo apt-get install bridge-utils - Создайте мост:
sudo brctl addbr br0 - Добавьте интерфейсы в мост:
sudo brctl addif br0 eth0 - Добавьте второй интерфейс:
sudo brctl addif br0 eth1 - Отключите режим управления потоком:
sudo brctl stp br0 off - Отключите физические интерфейсы:
sudo ip link set eth0 downиsudo ip link set eth1 down - Поднимите интерфейсы:
sudo ip link set eth0 up,sudo ip link set eth1 up - Назначьте IP-адрес мосту:
sudo ip addr add 192.168.1.100/24 dev br0 - Поднимите мост:
sudo ip link set br0 up
Этап 6: Проверка и верификация настройки
- Отобразите информацию о мосте:
sudo brctl show - Проверьте статус интерфейсов:
ip link show - Убедитесь в наличии IP-адреса:
ip addr show br0 - Протестируйте сетевое соединение:
ping 8.8.8.8 - Проверьте маршруты:
ip route show - Мониторьте трафик через мост:
sudo tcpdump -i br0
Этап 7: Сохранение конфигурации при перезагрузке
- Для Netplan изменения уже постоянны после
netplan apply - Для brctl отредактируйте файл
/etc/network/interfacesи добавьте строки из примера выше - Перезагрузитесь и проверьте:
sudo reboot - После загрузки выполните
sudo brctl showдля подтверждения
Часто задаваемые вопросы
Какая разница между мостом и бондингом (bonding)? Мост объединяет интерфейсы на канальном уровне (Layer 2) для коммутации трафика между подсетями, а бондинг агрегирует каналы на одной подсети для увеличения пропускной способности и отказоустойчивости.
Как удалить существующий мост? Используйте команду sudo brctl delbr br0 или отредактируйте конфигурацию Netplan/interfaces, удалив блок моста, и примените изменения.
Нужно ли отключать исходные интерфейсы перед созданием моста? Да, физические интерфейсы должны быть без самостоятельных IP-адресов и находиться в режиме manual в конфигурации; весь трафик маршрутизируется через мост.