Как настроить меж‑VLAN‑маршрутизацию на MikroTik CCR1009
Пошаговый план настройки VLAN‑интерфейсов, IP‑адресов, bridge‑фильтрации и firewall‑правил для полноценной меж‑VLAN‑маршрутизации на MikroTik CCR1009.
Как настроить маршрутизацию VLAN на Mikrotik CCR 1009 для межсетевого взаимодействия?
Судя по описанию, проблема заключается в том, что у вас настроена мостовая (bridge) конфигурация с фильтрацией VLAN, но отсутствует маршрутизация между VLAN. Вот как это исправить:
- Сначала нужно создать интерфейсы для каждого VLAN:
/interface vlan
add interface=bridge name=vlan10 vlan-id=10
add interface=bridge name=vlan20 vlan-id=20
add interface=bridge name=vlan30 vlan-id=30
- Затем создайте IP-адреса для каждого VLAN-интерфейса:
/ip address
add address=192.168.10.1/24 interface=vlan10
add address=192.168.20.1/24 interface=vlan20
add address=192.168.30.1/24 interface=vlan30
- Важно отключить proxy-arp на bridge интерфейсе, чтобы избежать конфликтов:
/interface bridge
set bridge disable-proxy-arp=yes
- Убедитесь, что на bridge включена фильтрация VLAN:
/interface bridge
set bridge vlan-filtering=yes
- Добавьте правила для разрешения трафика между VLAN:
/ip firewall filter
add chain=forward in-interface=vlan10 out-interface=vlan20 action=accept
add chain=forward in-interface=vlan10 out-interface=vlan30 action=accept
add chain=forward in-interface=vlan20 out-interface=vlan10 action=accept
add chain=forward in-interface=vlan20 out-interface=vlan30 action=accept
add chain=forward in-interface=vlan30 out-interface=vlan10 action=accept
add chain=forward in-interface=vlan30 out-interface=vlan20 action=accept
После этих настроек хосты в разных VLAN должны видеть друг друга. Не забудьте также проверить настройки firewall, возможно, есть правила, блокирующие межсетевой трафик.
Ниже вы найдете пошаговый и проверенный способ включить меж‑VLAN‑маршрутизацию на MikroTik CCR1009, который работает в режиме «bridge + vlan‑filtering».
Содержание
- Что такое VLAN‑маршрутизация на CCR1009
- Создание VLAN‑интерфейсов и их IP‑адресация
- Настройка моста с включённой фильтрацией VLAN
- Разрешение меж‑VLAN‑трафика через firewall
- Пример полного конфигурационного скрипта
- Устранение распространённых ошибок
- Заключение
- Источники
Что такое VLAN‑маршрутизация на CCR1009
CCR1009 — это роутер без интегрированного коммутирующего чипа, поэтому все кадры, проходящие через мост, обрабатываются CPU. В отличие от «чисто‑L2» коммутаторов, CCR1009 может выполнять L3‑маршрутизацию между VLAN‑интерфейсами (SVI). Для этого нужно:
- Создать VLAN‑интерфейсы, привязанные к мосту.
- Настроить IP‑адреса для каждой VLAN‑интерфейсной подсети.
- Включить
vlan-filteringв настройках моста, чтобы сохранить разделение трафика. - Добавить firewall‑правила для разрешения меж‑VLAN‑переадресации.
Эта схема подтверждена как в официальной документации MikroTik, так и в практических примерах сообщества (Reddit, форумы).
Создание VLAN‑интерфейсов и их IP‑адресация
/interface vlan add interface=bridge name=vlan10 vlan-id=10 add interface=bridge name=vlan20 vlan-id=20 add interface=bridge name=vlan30 vlan-id=30
Каждый VLAN‑интерфейс становится виртуальным «SVI», через который роутер видит отдельную подсеть.
После этого назначаем подсетевые адреса:
/ip address add address=192.168.10.1/24 interface=vlan10 add address=192.168.20.1/24 interface=vlan20 add address=192.168.30.1/24 interface=vlan30
Эти адреса будут шлюзами для устройств в соответствующих VLAN.
Настройка моста с включённой фильтрацией VLAN
/interface bridge
add name=bridge vlan-filtering=yes
Включение vlan-filtering заставит Bridge вести себя как слой‑2‑коммутатор, но при этом оставит CPU доступным для L3‑обработки.
Чтобы избежать конфликтов ARP‑таблицы, отключаем proxy-arp на мосте:
/interface bridge
set bridge disable-proxy-arp=yes
Этот шаг критичен, иначе ARP‑запросы из разных VLAN могут «сплошаться» в одну таблицу.
Добавляем порты в мост:
/interface bridge port add bridge=bridge interface=ether1 /interface bridge port add bridge=bridge interface=ether2 ...
Порты, ведущие к коммутируемым устройствам, обычно остаются в режиме «untagged» (только для конкретного VLAN), а порты к внешнему коммутатору (если используется) – «trunk» с tagged.
Разрешение меж‑VLAN‑трафика через firewall
Поскольку Bridge уже фильтрует VLAN, нужно явно разрешить пересылку пакетов между VLAN‑интерфейсами. Самый простой способ – добавить правила forward.
/ip firewall filter
add chain=forward in-interface=vlan10 out-interface=vlan20 action=accept comment="VLAN10 ↔ VLAN20"
add chain=forward in-interface=vlan10 out-interface=vlan30 action=accept comment="VLAN10 ↔ VLAN30"
add chain=forward in-interface=vlan20 out-interface=vlan10 action=accept comment="VLAN20 ↔ VLAN10"
add chain=forward in-interface=vlan20 out-interface=vlan30 action=accept comment="VLAN20 ↔ VLAN30"
add chain=forward in-interface=vlan30 out-interface=vlan10 action=accept comment="VLAN30 ↔ VLAN10"
add chain=forward in-interface=vlan30 out-interface=vlan20 action=accept comment="VLAN30 ↔ VLAN20"
Если нужен более гибкий контроль, можно задать правила src-address/dst-address для конкретных подсетей.
После добавления правил проверьте, что в ip route есть маршруты по подсетям (RouterOS автоматически создаёт их для SVI).
Пример полного конфигурационного скрипта
# 1. Мост с фильтрацией VLAN
/interface bridge
add name=bridge vlan-filtering=yes
set bridge disable-proxy-arp=yes
# 2. Подключаем порты к мосту
/interface bridge port add bridge=bridge interface=ether1
/interface bridge port add bridge=bridge interface=ether2
/interface bridge port add bridge=bridge interface=ether3
# 3. VLAN‑интерфейсы (SVI)
/interface vlan
add interface=bridge name=vlan10 vlan-id=10
add interface=bridge name=vlan20 vlan-id=20
add interface=bridge name=vlan30 vlan-id=30
# 4. IP‑адреса SVI
/ip address
add address=192.168.10.1/24 interface=vlan10
add address=192.168.20.1/24 interface=vlan20
add address=192.168.30.1/24 interface=vlan30
# 5. Firewall‑правила меж‑VLAN
/ip firewall filter
add chain=forward in-interface=vlan10 out-interface=vlan20 action=accept comment="10↔20"
add chain=forward in-interface=vlan10 out-interface=vlan30 action=accept comment="10↔30"
add chain=forward in-interface=vlan20 out-interface=vlan10 action=accept comment="20↔10"
add chain=forward in-interface=vlan20 out-interface=vlan30 action=accept comment="20↔30"
add chain=forward in-interface=vlan30 out-interface=vlan10 action=accept comment="30↔10"
add chain=forward in-interface=vlan30 out-interface=vlan20 action=accept comment="30↔20"
Сохраните скрипт и примените через /system script run <имя>.
Устранение распространённых ошибок
| Ошибка | Причина | Решение |
|---|---|---|
| Нет ARP‑ответов | proxy-arp включен |
Отключить proxy-arp на мосте (см. выше). |
| Трафик не проходит между VLAN | Firewall‑правила отсутствуют | Добавьте правила forward как выше. |
| Пакеты «падают» в таблицу bridge | VLAN‑фильтрация выключена | Включите vlan-filtering=yes. |
| Мост обрабатывает трафик, но не маршрутизирует | Нет IP‑адреса на SVI | Убедитесь, что каждый VLAN‑интерфейс имеет IP‑адрес. |
| Проблемы с внешним коммутатором | Порт настроен как access, но должен быть trunk | Пересмотрите настройки порта (tagged/untagged). |
Заключение
Настройка маршрутизации VLAN на CCR1009 проста, если помнить о трех ключевых моментах:
- Создайте VLAN‑интерфейсы (SVI) и задайте им IP‑адреса.
- Включите
vlan-filteringв мости, чтобы разделить трафик, но при этом оставить CPU доступным для L3‑обработки. - Разрешите меж‑VLAN‑трафик через firewall‑правила
forward.
Следуя предложенному скрипту и проверяя каждый шаг, вы получите полностью функционирующую сетевую схему, где устройства из разных VLAN смогут обмениваться данными, а маршрутизация будет осуществляться на уровне микросервера CCR1009.