Часть 16: Интерфейсы мостов - github2wiki/SPBSUT_KURS GitHub Wiki
Сетевой мост - сетевое устройство, предназначенное для объединения сегментов (подсети) компьютерной сети в единую сеть.
Сетевой мост при получении из сети кадра (пакета) сверяет MAC-адрес назначения (англ. MAC (Media Access Control) address) последнего и, если он принадлежит данной подсети, передаёт (транслирует) кадр дальше в тот сегмент, которому предназначался данный кадр; если кадр не принадлежит данной подсети, мост ничего не делает.
Термин «прозрачные» мосты объединяет большую группу устройств, поэтому их принято группировать в категории, базирующиеся на различных характеристиках изделий:
- Прозрачные мосты (англ. transparent bridges) объединяют сети с едиными протоколами канального и физического уровней модели OSI;
- Транслирующие мосты (англ. translating bridges) объединяют сети с различными протоколами канального и физического уровней;
- Инкапсулирующие мосты (англ. encapsulating bridges) соединяют сети с едиными протоколами канального и физического уровня через сети с другими протоколами.
Выполним уже знакомую нам команду, но тип заменим еа bridge
sudo ip link add name br0 type bridge
Теперь давайте удалим IP-адрес у vlan интерфейса (назову его vlan109), и подключим к нему мост
sudo ip a del [IP-адрес] dev vlan109
sudo ip l set dev vlan109 master br0
Включим dhcp для интерфейса
sudo dhclient br0
Отлично. Давайте посмотрим, что получилось
ip a
brctl - это утилита для администрирования мостов, входящаяя в пакет bridge-utils
. Давайте установим этот пакет.
sudo yum install bridge-utils
После установки, набрав в консоли brctl
, можно увидеть список команд.
commands:
addbr add bridge
delbr delete bridge
addif add interface to bridge
delif delete interface from bridge
setageing set ageing time
setbridgeprio set bridge priority
setfd set bridge forward delay
sethello set hello time
setmaxage set max message age
setpathcost set path cost
setportprio set port priority
show show a list of bridges
showmacs show a list of mac addrs
showstp show bridge stp info
stp turn stp on/off
Теперь давайте создадим с помощью утилиты мост br0, и подключим vlan109. Удаляем IP-адрес у vlan интерфейса (назову его vlan109)
sudo ip a del [IP-адрес] dev vlan109
sudo ip l set dev vlan109 master br0
Создаем мост br0
sudo brctl addbr br0
Подключаем к br0 vlan109
sudo brctl addif br0 vlan109
Включаем dhcp для br0, и смотрим на то, что получилось
sudo dhclient br0
brctl show
ip a
Если используется несколько коммутаторов, для того чтобы избежать петель коммутации, нужно включить поддержку протокола Spanning Tree Protocol (Протокол остовного дерева). Давайте его включим, и посмотрим на парамметры stp для нашего моста
sudo brctl stp br0 on
brctl showstp br0
Ту же конфигурацию сделаем уже через конфигурационные файлы. Создадим файл /etc/sysconfig/network-scripts/ifcfg-br0
. Поместим в него следующее содержание:
DEVICE=br0
BOOTPROTO=dhcp
ONBOOT=yes
STP=on
TYPE=Bridge
А в файл /etc/sysconfig/network-scripts/ifcfg-vlan109
добавим строку:
BRIDGE=br0
Перезагрузим службу сети
sudo systemctl restart network
Давайте посмотрим, что все получилось.
ip a