VLAN на MikroTik — одна из самых неоднозначных тем. Почему?

  • RouterOS предлагает минимум 3 способа настройки (через Bridge, Switch Chip, Ethernet), что вызывает путаницу.

  • Ошибки конфигурации приводят к падению трафика или проблемам с безопасностью.

В этой статье разберём официально рекомендуемый метод — Bridge VLAN Filtering на RouterOS 7. Это:

  • Наиболее удобный вариант для отладки.

  • Гибкий для L3-сценариев (маршрутизация между VLAN).

  • Совместим с большинством устройств на уровне софта (от hEX до CCR).

Важное уточнение: Bridge VLAN Filtering — универсальный, но не всегда оптимальный способ настройки VLAN на MikroTik. Его производительность зависит от модели устройства, а именно: от возможностей Switch Chip-а, вернемся к этому моменту ближе к завершению туториала.

Содержание

  • Введение

  • Схема сети

  • Конфигурация R1 (маршрутизатор)

  • Конфигурация S1 (коммутатор)

  • Тестирование и проверка

  • Особенности оборудования MikroTik

  • Критически важные настройки безопасности VLAN

  • Заключение

Уровень: CCNA+

Без пояснений, что такое VLAN, trunk и зачем всё это нужно. Сразу к конфигам.

Предполагается, что читатель знаком с базовыми концепциями VLAN и trunk-портов. Статья сосредоточена на практической реализации на MikroTik с RouterOS 7.

Цель: Реализовать классическую схему Router-on-a-Stick на MikroTik с помощью двух управляемых коммутаторов и одного маршрутизатора.

VLAN ID

Подсеть

Назначение

10

192.168.10.0/24

Сеть управления

20

192.168.20.0/24

Сеть касс и сканеров

30

192.168.30.0/24

Сеть бухгалтерии

  • R1 — маршрутизатор, выполняющий интер-VLAN маршрутизацию с использованием саб-интерфейсов (802.1Q).

  • S1 — центральный коммутатор, на котором сконфигурированы trunk-порты к маршрутизатору, второму коммутатору, edge-порты для конечных устройств.

  • S2 — удалённый коммутатор D-Link, обслуживающий бухгалтерию в VLAN 30.

    Топология сети
    Топология сети

    Принцип работы:

    • Устройства в каждой VLAN получают IP-адреса из своей подсети.

    • Доступ между VLAN возможен через маршрутизатор R1 (например, администратор из VLAN 10 может подключиться к кассовому устройству из VLAN 20).

    • Управление хостами осуществляется через VLAN 10.

    • Благодаря VLAN каждая группа устройств логически отделена от остальных, что повышает управляемость и упрощает контроль доступа. Важно: VLAN обеспечивает сегментацию, но не изоляцию. Для предотвращения межвлан-трафика на MikroTik следует применять firewall filter на L3 и bridge filter на L2. Это особенно важно в сетях с повышенными требованиями к безопасности.

Конфиг R1:

Создаем бридж, умеющий работать с VLAN:

/interface bridge add arp=reply-only arp-timeout=30s frame-types=admit-only-vlan-tagged name=bridge1 vlan-filtering=yes

WinBox: рис.1 и рис.2

Используем arp=reply-only, чтобы исключить ARP-спуфинг и явно управлять ARP через статические записи.

рис.1
рис.1
рис.2
рис.2

Добавляем в бридж ether5 как downlink в сторону S1:

/interface bridge port add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=ether5

WinBox: рис.3 и рис.4

рис.3
рис.3
рис.4
рис.4

После чего уже назначим VLAN-ы на сам бридж и ether5:

/interface bridge vlan

add bridge=bridge1 tagged=bridge1,ether5 vlan-ids=10

add bridge=bridge1 tagged=bridge1,ether5 vlan-ids=20

add bridge=bridge1 tagged=bridge1,ether5 vlan-ids=30

WinBox: рис.5, вланы 20 и 30 назначаются аналогично, настройка будет отличаться только на коммутаторе S1

рис.5
рис.5

Создадим VLAN интерфейсы, где vlan.10 - VLAN управления, назначим их на bridge1

/interface vlan

add interface=bridge1 name=vlan.10 vlan-id=10

add interface=bridge1 name=vlan.20 vlan-id=20

add interface=bridge1 name=vlan.30 vlan-id=30

WinBox: рис.6, интерфейсы для вланов 20 и 30 назначаются аналогично

рис.6
рис.6

Назначим ip-адреса на VLAN интерфейсы:

/ip address

add address=192.168.10.1/24 interface=vlan.10 network=192.168.10.0

add address=192.168.20.1/24 interface=vlan.20 network=192.168.20.0

add address=192.168.30.1/24 interface=vlan.30 network=192.168.30.0

WinBox: рис.7, ip-адреса для влан интерфейсов 20 и 30 назначаются аналогично

рис.7
рис.7

Разрешим управление R1 только из сети 192.168.10.0/24

/interface list add name=mgmt

/interface list member add interface=vlan.10 list=mgmt

/ip firewall filter

add action=accept chain=input comment="allow mgmt to router" connection-state=new dst-port=22,8291 in-interface-list=mgmt protocol=tcp

add action=reject chain=input comment="reject mgmt to router" connection-state=new dst-port=22,8291 in-interface-list=!mgmt log=yes log-prefix="unauthorized access blocked" protocol=tcp \ reject-with=tcp-reset

Конфиг S1:

Аналогично создадим бридж:

/interface bridge add arp=enabled arp-timeout=30s frame-types=admit-only-vlan-tagged name=bridge1 vlan-filtering=yes

WinBox: как на рис.1 и рис.2, но без arp arp=reply-only, оставляем по дефолту arp=enabled

Добавим в бридж порты, которые планируем использовать:

uplink в сторону R1: /interface bridge port add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=ether5

downlink в сторону S2: /interface bridge port add bridge=bridge1 frame-types=admit-only-vlan-tagged interface=ether4

edge порт в сторону касс: /interface bridge port add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether2 pvid=20

edge порт в сторону admin-пк: /interface bridge port add bridge=bridge1 frame-types=admit-only-untagged-and-priority-tagged interface=ether1 pvid=10

WinBox: рис.3 и рис.4, на access портах требуется указать PVID, который соответствует vlan id и выставить Frame Types: admit-only-untagged-and-priority-tagged(рис.8)

рис.8
рис.8


Назначим VLAN-ы на бридж и порты, где ether5 - uplink в сторону R1, ether4 - downlink в сторону S2, а ether1,2 - клиентские устройства.

/interface bridge vlan

add bridge=bridge1 tagged=bridge1,ether5,ether4 untagged=ether1 vlan-ids=10

add bridge=bridge1 tagged=ether5 untagged=ether2 vlan-ids=20

add bridge=bridge1 tagged=ether5,ether4 vlan-ids=30

WinBox: возвращаемся к рис.5, настройки повторяются, но для вланов 20 и 30 bridge1 в tagged не добавляем, только для влана 10, с которого коммутатор будет управляться.

Создадим VLAN интерфейс для управления коммутатором

/interface vlan

add interface=bridge1 name=vlan.10 vlan-id=10

Winbox: как на рис.6

Назначим ip для управления коммутатором из сети 192.168.10.0/24

/ip address add address=192.168.10.254/24 interface=vlan.10 network=192.168.10.0

WinBox: как на рис.7, но, что очевидно, выбираем другой свободный адрес.

И добавим маршрут до R1

/ip route add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.10.1 pref-src="" routing-table=main scope=30 suppress-hw-offload=no target-scope=1

Пробуем пропинговать R1:

рис.9
рис.9

Также можно посмотреть появилась ли связность по макам: рис.10

/interface bridge host print

рис.10
рис.10

Разрешим управление только из сети 192.168.10.0/24

/ip service

set ssh address=192.168.10.0/24

set winbox address=192.168.10.0/24

Примечание:

Конфигурация S2 не рассматривается. Для текущей задачи достаточно передать теги VLAN 10 (управление) и VLAN 30 (бухгалтерия).

P.S. или важное НО…

На многих популярных устройствах MikroTik (например, RB2011, RB951) при включении VLAN Filtering на bridge поддержка аппаратного switch chip может быть ограничена, HW Offload отключится, повысится нагрузка на CPU, что повлияет на производительность. В таком случае необходимо использовать альтернативный вариант настройки через /interface ethernet switch (настройка через switch vlan и switch port). Но всё же для полной L2/L3/ACL-функциональности лучше использовать MikroTik серии CRS3xx.

  • Bridge VLAN Filtering — баланс между гибкостью и производительностью.

  • Для скоростных сетей проверьте возможности switch-чипа в вашей модели.

  • Подробности о аппаратном ускорении (hardware offloading) Bridge на рис.11 или более детально в официальной документации MikroTik.

    Bridge Hardware Offloading, рис.11
    Bridge Hardware Offloading, рис.11

Почему Bridge VLAN Filtering?

Метод

Плюсы

Минусы

Bridge VLAN Filtering

Удобная конфигурация, полноценный L3, отладка, документация

Многие модели не умеют в HW Offload, что повлияет на производительность

Switch Chip

Аппаратное ускорение

Неудобная отладка

Когда Bridge VLAN Filtering — не лучший выбор?

Ситуация

Проблема

Альтернатива

Высоконагруженная сеть (>500 Мбит/с)

Лаги, рост нагрузки на CPU

Switch Chip или апгрейд железа

Много VLAN (>20)

Задержки фильтрации

Упрощение схемы или L3-коммутатор

Устройства до 2015 года (RB2011,RB951)

Рост нагрузки на CPU, нестабильность

Отключить vlan-filtering, использовать старый метод

Тест скорости между двумя ПК, подключенных к S1: рис.12
S1 — RB2011UiAS-RM — уже не самая актуальная модель и настройка через bridge VLAN Filtering для него не является оптимальной, HW Offload в данном режиме не работает, во время тестирования растёт нагрузка на CPU до 80% и легко поднимется до 100%, если нагрузить этот коммутатор ещё и L3 функционалом.

рис.12
рис.12

Замечания по безопасности:

  • Не пропускайте «все VLAN» в trunk без необходимости — используйте строгое перечисление tagged= в /interface bridge vlan.

  • Контролируйте межвлановый трафик через firewall filter, особенно на устройствах с маршрутизацией.

  • В соответствии с лучшими практиками информационной безопасности не используйте VLAN как основной механизм защиты, а только как дополнительный элемент сетевой сегментации в сочетании с межсетевыми экранами и ACL.

  • Ограничьте L2-вещание, если это критично — например, через bridge filter или настройку изоляции портов.

Вывод

Настройка позволяет:

  • гибко сегментировать сеть,

  • централизованно управлять устройствами через VLAN.

FAQ

Общее описание VLAN в RouterOS: принципы работы, структура, рекомендации

Пример настройки VLAN-коммутации с bridge и switch-chip в RouterOS

Комментарии (10)


  1. Nday001
    15.06.2025 13:25

    Подчеркну, что может вызвать вопросы, зачем в bridge1 добавлять bridge1 как tagged порт.

    /interface bridge vlan

    add bridge=bridge1 tagged=bridge1,ether5 vlan-ids=10

    Это нужно в том случае, если мы хотим на маршрутизаторе создать vlan интерфейс в этом vlan, например, чтобы получить доступ к управлению маршрутизатором через этот vlan, запустить на маршрутизаторе в этом vlan dhcp server итп.


  1. default_gateway69 Автор
    15.06.2025 13:25

    Спасибо, весьма точное дополнение.

    Ещё уточню на примере статьи:
    Так как S1 не участвует в VLAN 20 и 30 как L3, добавлять bridge1 в tagged= для этих VLAN-ов нет необходимости — достаточно указать физические интерфейсы.

    /interface bridge vlan
    add bridge=bridge1 tagged=bridge1,ether5,ether4 untagged=ether1 vlan-ids=10


    add bridge=bridge1 tagged=ether5 untagged=ether2 vlan-ids=20

    add bridge=bridge1 tagged=ether5,ether4 vlan-ids=30


  1. default_gateway69 Автор
    15.06.2025 13:25

    Наглядный пример как это выглядит на практике: (i use arch BTW)

    ip a, видим, что ПК живет в сети 192.168.20.0/24
    ip a, видим, что ПК живет в сети 192.168.20.0/24
    пингуем шлюз R1 и коммутатор S1, видим, что связность есть
    пингуем шлюз R1 и коммутатор S1, видим, что связность есть
    проверяем управление до шлюза R1 и коммутатора S2, управление заблокировано, как и задумано т.к. ПК находится не в управленческой сети.
    проверяем управление до шлюза R1 и коммутатора S2, управление заблокировано, как и задумано т.к. ПК находится не в управленческой сети.


  1. user0k
    15.06.2025 13:25

    А я не так настраивал. Я создал несколько bridge_vlan10 и bridge_vlan20. В них и добавлял порты, а также на бриджи прописывал ip. Таких бриждей почти с десяток. Нагрузки особо не замечал. Микротик hex S. Трафика ходит в 400мбит/с между вланами.

    На днях поставил в ядро элтекс L3 с 10G портами и маршрутизацию на него перекину.


  1. falcon4fun
    15.06.2025 13:25

    Vlan сам по себе без ACLов или ZeroTrust ни членикса не изолтрует. Бродкаст и мультикаст не в счет. А эни-ту-эни изоляцией назвать трудно :D

    Бтв, насколько подсказывает мне сетевая извилина - бест практис пропускать только те вланы, которые нужны, а не зачем-то весь транк, иначе в один день можно столкнуться с незавидными приколами кривых рук :D


    1. default_gateway69 Автор
      15.06.2025 13:25

      Спасибо, справедливые замечания.

      Да, VLAN — это лишь сегментация. Для полноценной изоляции ограничить межвлан трафик на MikroTik можно через firewall filter на L3 и bridge filter на L2, в статье это сознательно не затрагивалось, чтобы не уводить в сторону от базовой настройки.

      Касаемо транка — согласен: «только нужные VLAN» на trunk-портах — в уточняющих комментариях выше именно это и показано.


  1. vladislav_balashov
    15.06.2025 13:25

    Спасибо за статью. Такой есть вопрос. Самый популярный (и самый неправильный) способ настройки VLAN на mikrotik - через множество bridge, в которых объединяют vlan-интерфейсы и обычные интерфейсы. Если сравнивать этот устаревший способ с BVF на устройствах, где нет аппаратной разгрузки с BVF (например, на обычном hEX), то какой способ выигрывает по производительности? Сравнивали ли вы это?


    1. default_gateway69 Автор
      15.06.2025 13:25

      Спасибо за интересный и уместный вопрос.

      hEX (RB750Gr3) на RouterOS 7 поддерживает аппаратную разгрузку BVF.

      По поводу производительности:

      Подход с множеством бриджей наиболее активно задействует CPU, в особенности, если на железке реализован L3 фукнционал, а именно:

      Межвлан трафик проходит через CPU трижды:
      vlan-интерфейс → бридж→ роутинг → другой бридж

      Сравнительных тестов: множество бриджей vs. BVF пока не проводил, да и практического смысла в этом не вижу, BVF во всем лучше: более удобный менеджмент, лучше масштабируемость, более логичен в плане обработки трафика и сетевой архитектуры.

      В 2025 вариант с множеством бриджей имеет право на реализацию лишь в кейсах, где по каким-то причинам админ не планирует обновлять железку до RouterOS 7 и сама железка уже давно настроена и активно эксплуатируется в проде.

      Ниже скрины hEX из тестовой лабы, работающий как L3 ядро через BVF
      Нагрузка на роутер реализована тестом iperf между двумя ПК в разных вланах.

      CPU загружен менее 50% при межвлан трафике более 800 мбит/с
      CPU загружен менее 50% при межвлан трафике более 800 мбит/с


      1. vladislav_balashov
        15.06.2025 13:25

        Извиняюсь за ошибку. Действительно, у hEX свитч-чип MT7621, который должен поддерживать разгрузку c BVF на RouteOS7. Сам я тоже всегда настраиваю vlan на Mikrotik через BVF. Но часто встречаюсь со скепсисом в отношении BFV от людей, которые уже привыкли к старому способу с бридженванием всего и вся. Типа надо переучиваться, менять правила автоматизации и т.п. Аргумент про повышение производительности с BFV был бы для них наиболее весомым.


        1. default_gateway69 Автор
          15.06.2025 13:25

          Да, отлично понимаю вас. Унаследованная инфраструктура, шаблоны, скрипты, привычки - всё это не меняется быстро, даже если новый подход объективно лучше.

          В таком случае запланирую сравнительный тест в лабе: BVF против конфига с несколькими бриджами на железке без аппаратной разгрузки BVF.

          Как найду подходящий девайс - проведу замеры. Ожидайте.