Pull to refresh

Mikrotik RoS 6.41: Большие изменения в Bridging и VLAN

Reading time 2 min
Views 67K
Разработчики RoS уже достаточно давно анонсировали изменения в работе мостов (bridge), и включили эту новую функциональность в Release Candidate ветку, вот теперь они внесли это и в Current.

Что нового?


Теперь, нет необходимости заниматься хитростями, на подобие этих: Mikrotik: маленькая хитрость switch chip.
ВНИМАНИЕ! Читаем предупреждение в Release Notes!!!

Теперь настроить VLAN можно непосредственно в Bridge, при этом при наличие аппаратной поддержки, чип коммутации возьмет на себя работу с VLAN и пересылкой трафика между портами (Список поддерживаемых устройств: Bridge Hardware Offloading).

Немного практики:


Обратимся к руководству и моей предыдущей статье. Задача сделать мост для интернета с ТВ-приставкой и остальной сети.

Использование хитрости с VLAN на чипе коммутации позволяло снять нагрузку с CPU роутера по пересылке пакетов в рамках одной группы коммутации (эмулировали несколько групп с помощью VLAN).
Но такая задача решается в принципе теперь элементарно, так как мост поддерживает hw-offload, и все сводится к добавлению портов в соответсвующий мост, всё!

Поэтому усложним задачу. У меня кроме RB951G используется RBmAP2nD (оба устройства не поддерживают аппаратную разгрузку), который кроме основной WiFi держит еще и гостевую сеть. Поэтому, до него у меня будет идти тегированный трафик обычной локалки и гостевой.

Начинается все довольно очевидно, нам нужно три моста:

/interface bridge
add name=B-EXT pvid=2 vlan-filtering=no
add comment=defconf name=B-LAN pvid=3 vlan-filtering=no
add arp=reply-only name=B-WG

Обращаем внимание на опцию vlan-filtering, её не стоит включать до завершения остальных настроек, иначе роутер станет недоступен. Опция pvid задает VLAN по умолчанию для всего моста.

Задаем VLAN, которые будут обслуживаться на мостах.

/interface bridge vlan
add bridge=B-EXT untagged=ether1,ether3 vlan-ids=2
add bridge=B-LAN tagged=ether2 untagged=ether4,ether5 vlan-ids=3
add bridge=B-LAN tagged=ether2 vlan-ids=4

Тут можно видеть, что мы в явном виде, непосредственно в мосте указываем, какие порты тегировать, а какие нет.

И создадим VLAN гостевой сети:

/interface vlan
add interface=B-LAN name=V-GST vlan-id=4

Добавим нужные нам порты в мосты:

/interface bridge port
add bridge=B-LAN comment=defconf interface=ether2 pvid=3
add bridge=B-EXT comment=defconf frame-types=admit-only-untagged-and-priority-tagged interface=ether3 pvid=2
add bridge=B-LAN comment=defconf frame-types=admit-only-untagged-and-priority-tagged interface=ether4 pvid=3
add bridge=B-LAN comment=defconf frame-types=admit-only-untagged-and-priority-tagged interface=ether5 pvid=3
add bridge=B-LAN comment=defconf frame-types=admit-only-untagged-and-priority-tagged interface=wl-2ghz pvid=3
add bridge=B-EXT frame-types=admit-only-untagged-and-priority-tagged interface=ether1 pvid=2
add bridge=B-WG interface=V-GST
add bridge=B-WG interface=wlg-2ghz

Указывая опцию pvid, мы указываем vlan по умолчанию для этого порта. Так-же, с помощью frame-types, мы задаем, какие пакеты мы собираемся принимать на порту.

Теперь включаем vlan-filtering=yes и все работает!

По мне, такая конфигурация нагляднее, так как не требует лезть в настройки чипа, и как-то «догонять» как они связанны с настройками интерфейсов и мостов, но не поддерживается во всех домашних моделях.
Tags:
Hubs:
+12
Comments 8
Comments Comments 8

Articles