Диагноз: Вы только что получили MikroTik, открыли WinBox, увидели вкладку Bridge — и у вас возникло стойкое ощущение, что документация написана инопланетянами. VLAN не работает, пинги пропадают, коллеги смотрят с укором, а дедлайн вчера. Знакомо?
В этом гайде я разберу настройку VLAN на MikroTik RouterOS 7 с нуля до рабочей конфигурации. Три готовых сценария: базовый VLAN, trunk/access порты и Wi-Fi VLAN через CAPsMAN. Команды — актуальные, для RouterOS 7. Воды — минимум.
После прочтения вы получите: рабочие конфиги для CLI и WinBox, понимание bridge VLAN filtering, и больше никогда не будете гуглить «почему VLAN не пингуется на MikroTik».
Что такое VLAN в MikroTik и зачем он нужен
VLAN (Virtual Local Area Network) — это способ разбить один физический коммутатор на несколько логически изолированных сетей. Трафик между VLAN не ходит без маршрутизатора. Это основа сегментации: офис отдельно, гости отдельно, камеры отдельно, IoT в карантине.
В контексте MikroTik важно понять две концепции сразу, иначе всё остальное будет непонятно.
Tagged vs Untagged
Tagged (тегированный) трафик — кадр несёт в себе метку VLAN ID (802.1Q заголовок). Используется на trunk-портах между коммутаторами и маршрутизаторами.
Untagged (нетегированный) трафик — обычный кадр без метки. Используется на access-портах, к которым подключены конечные устройства (ПК, принтеры, IP-камеры). Устройство не знает, что работает в каком-то VLAN.
Access vs Trunk порт
Access-порт — принимает нетегированный трафик, назначает ему VLAN ID (PVID), отдаёт тоже без тега. Для конечных устройств.
Trunk-порт — пропускает трафик нескольких VLAN одновременно, каждый со своим тегом. Для линков между коммутаторами, роутерами, серверами с несколькими виртуальными интерфейсами.
Где применяется: разделение гостевой и корпоративной сети, изоляция IoT-устройств, сегментация VoIP, разные SSID с разными VLAN на Wi-Fi, мультитенантные среды.
Особенности VLAN в MikroTik RouterOS 7
Если вы переходите с RouterOS 6 — читайте внимательно. В 7-й версии архитектура изменилась существенно.
Главное отличие от RouterOS 6
В RouterOS 6 VLAN часто настраивался через /interface vlan поверх физического или bridge интерфейса — и это порождало множество непредсказуемых ситуаций с производительностью и совместимостью.
В RouterOS 7 рекомендованный и правильный путь — Bridge VLAN Filtering. Это не просто новый способ настройки, это другая парадигма: VLAN обрабатывается на уровне bridge, а не поверх него.
Bridge VLAN Filtering
Механизм позволяет bridge работать как настоящий 802.1Q-коммутатор. Включается параметром vlan-filtering=yes на мосту. До включения — обязательно настройте все порты, иначе потеряете доступ.
Аппаратное ускорение (Hardware Offload)
На устройствах с аппаратным коммутатором (например, hEX, CRS3xx, CCR) при правильной настройке bridge VLAN filtering задействует hardware offload — трафик обрабатывается чипом, не CPU. Это критично для гигабитных потоков.
Проверить, работает ли offload: /interface bridge print — смотрите столбец HW.
/interface bridge print detail
Если actual-mtu и hw=yes — offload активен. Если нет — проверьте, не мешают ли ему фичи типа IGMP Snooping или STP в некоторых конфигурациях.
Базовая настройка VLAN на MikroTik: пошаговый рецепт
Сценарий: один MikroTik, два VLAN — VLAN 10 (офис, 192.168.10.0/24) и VLAN 20 (гости, 192.168.20.0/24). Порт ether1 — uplink/trunk, ether2 — access для офиса, ether3 — access для гостей.
Шаг 1. Создаём bridge
/interface bridge add name=bridge1 vlan-filtering=no comment="Main bridge"
Важно: vlan-filtering=no на старте. Сначала всё настраиваем, потом включаем фильтрацию. Иначе можно отрезать себя от устройства.
Шаг 2. Добавляем порты в bridge
/interface bridge port add bridge=bridge1 interface=ether1 comment="Uplink/Trunk" add bridge=bridge1 interface=ether2 pvid=10 comment="Office access" add bridge=bridge1 interface=ether3 pvid=20 comment="Guest access"
pvid (Port VLAN ID) — это VLAN, который будет назначен нетегированному трафику на этом порту. На trunk-порту pvid обычно остаётся 1 (дефолт).
Шаг 3. Настраиваем VLAN таблицу bridge
/interface bridge vlan add bridge=bridge1 vlan-ids=10 tagged=ether1 untagged=ether2 add bridge=bridge1 vlan-ids=20 tagged=ether1 untagged=ether3
Что это значит: VLAN 10 тегированно проходит через ether1 (trunk), нетегированно — через ether2. Аналогично для VLAN 20.
Шаг 4. Создаём VLAN-интерфейсы для маршрутизации
/interface vlan add interface=bridge1 vlan-id=10 name=vlan10 add interface=bridge1 vlan-id=20 name=vlan20
Шаг 5. Назначаем IP-адреса
/ip address add address=192.168.10.1/24 interface=vlan10 add address=192.168.20.1/24 interface=vlan20
Шаг 6. Включаем VLAN Filtering
/interface bridge set bridge1 vlan-filtering=yes
После этой команды трафик между VLAN прекратится без явной маршрутизации. Убедитесь, что ваш management-доступ тоже учтён (см. раздел про типичные ошибки).
Шаг 7. DHCP-серверы (опционально, но нужно)
/ip pool add name=pool-vlan10 ranges=192.168.10.100-192.168.10.200 add name=pool-vlan20 ranges=192.168.20.100-192.168.20.200 /ip dhcp-server add interface=vlan10 address-pool=pool-vlan10 name=dhcp-vlan10 disabled=no add interface=vlan20 address-pool=pool-vlan20 name=dhcp-vlan20 disabled=no /ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=192.168.10.1 add address=192.168.20.0/24 gateway=192.168.20.1 dns-server=192.168.20.1
Настройка VLAN через Bridge: разбор mikrotik vlan bridge
Bridge VLAN Filtering — это сердце современного подхода к VLAN в MikroTik RouterOS 7. Разберём детали.
Как работает bridge VLAN таблица
Когда кадр приходит на порт bridge, RouterOS смотрит в таблицу /interface bridge vlan и решает:
- Какой VLAN ID назначить (если кадр untagged — берётся pvid порта)
- Куда кадр может пойти (tagged или untagged на каких портах)
- Нужно ли добавить тег перед отправкой или снять его
Просмотр текущей таблицы:
/interface bridge vlan print
Типичный вывод для нашей конфигурации:
Flags: X - disabled, D - dynamic # BRIDGE VLAN-IDS CURRENT-TAGGED CURRENT-UNTAGGED 0 bridge1 1 bridge1 ether1 1 bridge1 10 ether1 ether2 2 bridge1 20 ether1 ether3
Строка с VLAN 1 появляется автоматически — это management VLAN bridge-интерфейса.
Параметр PVID: что будет, если забыть
Если на access-порту не указан pvid, нетегированный трафик с него попадёт в VLAN 1. Устройство подключено, пинг не идёт, вы час ищете проблему — а причина в одном параметре. Всегда явно указывайте pvid на access-портах.
Изменить pvid на существующем порту:
/interface bridge port set [find interface=ether2] pvid=10
Management VLAN: как не отрезать себя
Если вы подключены к MikroTik через один из портов bridge, перед включением vlan-filtering добавьте management VLAN явно. Например, если управляете через ether2 (VLAN 10):
/interface bridge vlan add bridge=bridge1 vlan-ids=10 tagged=bridge1 untagged=ether2 [/bash> <p>Параметр <code>tagged=bridge1</code> означает, что сам bridge-интерфейс (и VLAN-интерфейс vlan10 поверх него) получает тегированный доступ к VLAN 10. Без этого — потеряете доступ сразу после включения фильтрации.</p> <h2>Настройка VLAN на порту: Access и Trunk</h2> <p>Рассмотрим конкретные конфигурации для mikrotik vlan на порт в разных сценариях.</p> <h3>Access-порт: один VLAN, без тега для устройства</h3> <p>Устройство (ПК, IP-камера, принтер) подключается к access-порту и не знает о VLAN. MikroTik сам добавляет и снимает тег.</p> [bash] # Добавляем порт в bridge с нужным pvid /interface bridge port add bridge=bridge1 interface=ether4 pvid=30 # Регистрируем в VLAN-таблице как untagged /interface bridge vlan add bridge=bridge1 vlan-ids=30 tagged=ether1 untagged=ether4
Устройство на ether4 получит IP из диапазона VLAN 30 и будет изолировано от других VLAN.
Trunk-порт: несколько VLAN, все тегированные
Trunk используется для подключения другого коммутатора, сервера с несколькими виртуальными интерфейсами или точки доступа с несколькими SSID.
# Порт ether5 — trunk, пропускает VLAN 10, 20, 30 /interface bridge port add bridge=bridge1 interface=ether5 pvid=1 # Добавляем ether5 как tagged во все нужные VLAN /interface bridge vlan set [find vlan-ids=10] tagged=ether1,ether5 set [find vlan-ids=20] tagged=ether1,ether5 set [find vlan-ids=30] tagged=ether1,ether5
Hybrid-порт: один нетегированный + несколько тегированных
Полезно для IP-телефонов (голос в одном VLAN, данные в другом) или серверов с management-доступом.
# ether6: нетегированный трафик → VLAN 10, тегированный VLAN 99 проходит насквозь /interface bridge port add bridge=bridge1 interface=ether6 pvid=10 /interface bridge vlan set [find vlan-ids=10] untagged=ether2,ether6 set [find vlan-ids=99] tagged=ether1,ether6
Сводная таблица конфигураций портов
| Тип порта | pvid | В VLAN-таблице | Когда использовать |
|---|---|---|---|
| Access | = ID нужного VLAN | untagged | Конечные устройства |
| Trunk | 1 (или native VLAN) | tagged во всех VLAN | Uplink, другой свич, сервер |
| Hybrid | = native VLAN | untagged + tagged | IP-телефоны, серверы |
VLAN между двумя MikroTik
Сценарий: два MikroTik соединены через ether1 (trunk-линк). На первом — VLAN 10 и 20 с DHCP. На втором — access-порты для клиентов.
Схема
MikroTik-A (роутер + L3) ←→ trunk ether1 ←→ MikroTik-B (коммутатор L2)
Конфигурация MikroTik-A (уже настроена выше — роутер)
Убедитесь, что ether1 прописан как tagged в VLAN 10 и 20 в таблице bridge. Это уже сделано в базовой конфигурации выше.
Конфигурация MikroTik-B (L2-коммутатор)
# Создаём bridge /interface bridge add name=bridge1 vlan-filtering=no # ether1 — trunk к MikroTik-A, ether2 — access VLAN 10, ether3 — access VLAN 20 /interface bridge port add bridge=bridge1 interface=ether1 pvid=1 add bridge=bridge1 interface=ether2 pvid=10 add bridge=bridge1 interface=ether3 pvid=20 # VLAN-таблица /interface bridge vlan add bridge=bridge1 vlan-ids=10 tagged=ether1 untagged=ether2 add bridge=bridge1 vlan-ids=20 tagged=ether1 untagged=ether3 # Включаем фильтрацию /interface bridge set bridge1 vlan-filtering=yes
На MikroTik-B не нужны IP-адреса на VLAN-интерфейсах — он работает только как L2-коммутатор. DHCP-ответы пройдут через trunk от MikroTik-A.
Проверка связи между устройствами
# На MikroTik-A: проверяем, что bridge видит MAC-адреса в нужных VLAN /interface bridge host print where bridge=bridge1 # Пинг из VLAN 10 в VLAN 20 должен работать (маршрутизируется через MikroTik-A) /ping 192.168.20.100 src-address=192.168.10.1
VLAN Switching на MikroTik: аппаратное ускорение
На устройствах с встроенным коммутационным чипом (серии CRS3xx, некоторые hEX, RB4xx) VLAN-трафик может обрабатываться аппаратно — без нагрузки на CPU.
Когда работает hardware offload
Hardware offload включается автоматически при выполнении условий:
- Bridge VLAN Filtering включён
- Все порты bridge на одном аппаратном чипе
- Не используются фичи, требующие CPU: Firewall на bridge, некоторые варианты STP
- Параметр
hw=yesна bridge-порту (по умолчанию включён)
# Проверка hardware offload /interface bridge port print detail where bridge=bridge1 # Смотрим на "hw: yes" в выводе
Ограничения
Hardware offload не работает для трафика, который нужно маршрутизировать (inter-VLAN routing идёт через CPU). Для L2-коммутации внутри одного VLAN — работает.
На устройствах без аппаратного чипа (например, RB951, hAP lite) весь VLAN-трафик обрабатывается CPU — учитывайте это при высоких нагрузках.
Сравнение: Bridge vs Switch для VLAN
| Критерий | Bridge VLAN Filtering | Legacy Switch (RouterOS 6) |
|---|---|---|
| Актуальность | ✅ RouterOS 7, рекомендован | ❌ Устарел |
| Гибкость | Высокая | Средняя |
| Hardware offload | ✅ Поддерживается | ✅ Поддерживается |
| Настройка | CLI / WinBox | CLI / WinBox |
| Inter-VLAN routing | ✅ Через VLAN-интерфейсы | Сложнее |
| Поддержка в RouterOS 7 | ✅ Полная | ⚠️ Частичная |
Настройка VLAN для Wi-Fi: CAPsMAN и mikrotik wifi vlan
Один из самых частых запросов — разные SSID в разных VLAN. Гостевой Wi-Fi изолирован, корпоративный в своём сегменте. Разберём mikrotik capsman vlan для RouterOS 7.
Архитектура
MikroTik с CAPsMAN управляет точками доступа (CAP). Каждому SSID назначается VLAN. Трафик с точек приходит тегированным на trunk-порт MikroTik.
Конфигурация CAPsMAN (RouterOS 7)
# Создаём datapath для каждого VLAN /caps-man datapath add name=dp-corp vlan-id=10 vlan-mode=use-tag local-forwarding=no add name=dp-guest vlan-id=20 vlan-mode=use-tag local-forwarding=no # Конфигурации безопасности /caps-man security add name=sec-corp authentication-types=wpa2-psk passphrase="CorpPass2024!" add name=sec-guest authentication-types=wpa2-psk passphrase="GuestPass2024!" # Профили SSID /caps-man configuration add name=cfg-corp ssid="Corp-WiFi" datapath=dp-corp security=sec-corp add name=cfg-guest ssid="Guest-WiFi" datapath=dp-guest security=sec-guest # Provision rule — применяем оба профиля к точкам /caps-man provisioning add action=create-dynamic-enabled master-configuration=cfg-corp slave-configurations=cfg-guest
Настройка bridge для Wi-Fi VLAN
Точки доступа подключены к ether4 (или через trunk). Порт должен пропускать VLAN 10 и 20 тегированно:
# ether4 — trunk к точкам доступа /interface bridge port add bridge=bridge1 interface=ether4 pvid=1 /interface bridge vlan set [find vlan-ids=10] tagged=ether1,ether4 set [find vlan-ids=20] tagged=ether1,ether4
Local Forwarding: когда включать
local-forwarding=yes — трафик коммутируется прямо на точке доступа, не идёт на MikroTik. Снижает нагрузку на линк. Используйте, если точки мощные и сеть простая.
local-forwarding=no — весь трафик идёт на CAPsMAN. Позволяет применять политики, firewall, QoS централизованно. Рекомендуется при серьёзной сегментации.
Совет по безопасности гостевого VLAN
Для гостевого VLAN добавьте firewall-правило, блокирующее доступ к RFC1918-адресам:
/ip firewall filter add chain=forward in-interface=vlan20 dst-address=192.168.0.0/16 action=drop comment="Block guest to LAN" add chain=forward in-interface=vlan20 dst-address=10.0.0.0/8 action=drop comment="Block guest to LAN" add chain=forward in-interface=vlan20 dst-address=172.16.0.0/12 action=drop comment="Block guest to LAN"
Типичные ошибки при настройке VLAN на MikroTik
Собрал самые частые грабли — по личному опыту и боли коллег в Telegram-чатах.
Ошибка 1: Включили vlan-filtering до настройки таблицы
Симптом: После команды vlan-filtering=yes пропал доступ к роутеру. Сидите с console-кабелем.
Лечение: Всегда сначала настраивайте VLAN-таблицу, потом включайте фильтрацию. Если уже отрезали себя — подключайтесь через serial console и откатывайте:
/interface bridge set bridge1 vlan-filtering=no
Ошибка 2: Забыли tagged=bridge1 для management VLAN
Симптом: VLAN-интерфейс создан, IP назначен, но пинг на gateway не идёт изнутри VLAN.
Лечение: В VLAN-таблице для management VLAN добавить tagged=bridge1:
/interface bridge vlan set [find vlan-ids=10] tagged=bridge1,ether1
Ошибка 3: Неверный PVID на access-порту
Симптом: Устройство подключено, DHCP не отвечает, или получает IP из чужого пула.
Лечение:
/interface bridge port print detail # Проверяем pvid каждого порта /interface bridge port set [find interface=ether2] pvid=10
Ошибка 4: Порт не добавлен в VLAN-таблицу как untagged
Симптом: Access-порт есть в bridge, pvid правильный, но трафик не ходит.
Лечение: Убедитесь, что порт явно указан в /interface bridge vlan как untagged. При включённом vlan-filtering трафик без записи в таблице дропается.
Ошибка 5: Смешали tagged и untagged на одном порту неправильно
Симптом: Один VLAN работает, второй нет. Или теги дублируются (double tagging).
Лечение: Порт может быть либо tagged, либо untagged для конкретного VLAN — не оба сразу. Проверяйте:
/interface bridge vlan print detail
Ошибка 6: Потеря hardware offload из-за лишних настроек
Симптом: Bridge работает, VLAN работает, но CPU под нагрузкой даже на простом трафике.
Лечение: Проверьте, что не включены функции, отключающие offload: некоторые ACL на bridge, dhcp-snooping, неправильный вариант STP. Смотрите hw=yes/no в bridge port print detail.
Проверка и диагностика VLAN на MikroTik
Просмотр VLAN-таблицы
/interface bridge vlan print /interface bridge vlan print detail
Просмотр хостов в bridge
/interface bridge host print # Или фильтруем по bridge /interface bridge host print where bridge=bridge1
В выводе видны MAC-адреса, на каком порту они изучены, и в каком VLAN. Это первый инструмент диагностики.
Torch — мониторинг трафика в реальном времени
/tool torch interface=vlan10
Torch покажет src/dst IP, протоколы, объём трафика. Удобно убедиться, что трафик идёт именно в нужный VLAN-интерфейс.
Packet Sniffer
/tool sniffer start interface=ether1 filter-vlan=10 /tool sniffer stop /tool sniffer print
Позволяет посмотреть raw-кадры с 802.1Q-тегами. Видно, какие VLAN ID реально присутствуют в трафике на порту.
Ping с указанием source-address
/ping 192.168.20.1 src-address=192.168.10.1 count=5
Проверяет маршрутизацию между VLAN на уровне самого MikroTik.
Логи и трейс
/log print where topics~"bridge"
Покажет события bridge, включая изменения STP-состояния, изучение MAC-адресов, ошибки VLAN.
Best Practices и советы по безопасности
Безопасность VLAN-сегментации
- Native VLAN всегда меняйте с дефолтного 1 на что-то другое. VLAN 1 — потенциальная точка атаки VLAN hopping.
- Не используйте VLAN 1 для рабочего трафика. Оставьте его только для management, а лучше — явно запретите на всех пользовательских портах.
- Изолируйте IoT в отдельный VLAN с firewall-правилом «запретить всё входящее из IoT в LAN».
- Управление роутером — выделите отдельный management VLAN, доступный только с определённых IP.
# Разрешить management только из VLAN 99 /ip firewall filter add chain=input in-interface=!vlan99 dst-port=80,443,8291,22 protocol=tcp action=drop comment="Block management from other VLANs"
Документируйте конфигурацию
В MikroTik есть параметр comment у большинства объектов. Используйте его. Через полгода вы скажете себе спасибо.
/interface bridge port set [find interface=ether2] comment="Office floor 2 - VLAN10"
Экспортируйте конфиг перед изменениями
/export file=backup-before-vlan-changes
Файл сохранится в Files. Всегда делайте это перед серьёзными изменениями — особенно перед включением vlan-filtering.
Тестирование на CHR перед боевым применением
MikroTik предоставляет Cloud Hosted Router (CHR) — полноценный RouterOS в виде VM или образа для KVM/VMware. Можно поднять на любом VPS и протестировать конфиг без риска для продакшна. CHR с лицензией P1 (1 Мбит/с) — бесплатно.
Заключение: VLAN на MikroTik — это не страшно
Мы разобрали настройку VLAN на MikroTik RouterOS 7 во всех основных сценариях: базовый VLAN с сегментацией, trunk и access-порты, VLAN между двумя устройствами и Wi-Fi VLAN через CAPsMAN.
Ключевые выводы:
- Всегда используйте Bridge VLAN Filtering в RouterOS 7 — это правильный и актуальный подход.
- Сначала настраивайте VLAN-таблицу, потом включайте
vlan-filtering=yes. - Явно указывайте
pvidна всех access-портах. - Не забывайте
tagged=bridge1для management VLAN, иначе потеряете доступ. - Используйте
/interface bridge vlan printиtorchдля диагностики.
Если что-то пошло не так — пишите в комментарии. Разберём вместе. И да, перед тем как нажимать Enter на production-роутере — сделайте export конфига. Это не паранойя, это профессионализм.
Оставайтесь на связи
Рецепты от IT-боли. Без воды, без рекламы, без маркетинговой шелухи.
Подписаться на IT-Аптеку →


