<p><script type="application/ld+json"><span style="display: inline-block; width: 0px; overflow: hidden; line-height: 0;" data-mce-type="bookmark" class="mce_SELRES_start"></span>
{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "VLAN на MikroTik: разделяем гостей, сотрудников, VoIP и камеры",
"description": "Настройка VLAN на MikroTik: trunk и access порты, bridge VLAN filtering, firewall между VLAN. Пошаговая инструкция для офиса и производства.",
"totalTime": "PT50M",
"supply": [
{"@type": "HowToSupply", "name": "MikroTik RouterOS 7.x"},
{"@type": "HowToSupply", "name": "Управляемый коммутатор (опционально)"},
{"@type": "HowToSupply", "name": "Доступ к роутеру через WinBox"}
],
"tool": [
{"@type": "HowToTool", "name": "WinBox"},
{"@type": "HowToTool", "name": "Terminal MikroTik"}
]
}
</script></p>
"Быстрый
<br />
Создай bridge. Добавь VLAN-интерфейсы (vlan10, vlan20, vlan30, vlan40) поверх bridge. Настрой bridge VLAN filtering: trunk-порт tagged на все VLAN, access-порты untagged на свой VLAN. Повесь IP-адреса на VLAN-интерфейсы. Добавь DHCP-сервер на каждый VLAN. Настрой firewall: drop из гостевого VLAN в офис, разреши офис в интернет. Четыре <a class="wpil_keyword_link" title="Сети" href="https://it-apteka.com/category/networks/" target="_blank" rel="noopener" data-wpil-keyword-link="linked" data-wpil-monitor-id="3109">сети</a> в одном кабеле, никто друг другу не мешает.<br />
<h2>1. Диагноз</h2>
<p>Все сидят в одной сети. Гости, бухгалтерия, камеры наблюдения, IP-телефоны. Знакомо?</p>
<p>Кто-то из гостевого WiFi сканирует сетевое окружение и видит принтер директора. Камера Hikvision с дефолтным паролем болтается в той же подсети, что и 1С. Сотрудник случайно открыл общий доступ на своем ноутбуке, и весь офис видит его фото с отпуска. Это не сеть. Это цифровой коммуналка.</p>
<p>Vlan на <a class="wpil_keyword_link" title="mikrotik" href="https://it-apteka.com/tag/mikrotik/" target="_blank" rel="noopener" data-wpil-keyword-link="linked" data-wpil-monitor-id="3111">mikrotik</a> решает это за один вечер. Получишь четыре изолированные сети в одном физическом кабеле. Гости не лезут к бухгалтерии. Камеры шлют видео только на регистратор. Телефоны не прерываются из-за торрентов. Время настройки — 50 минут. Нужен <a title="Резервное копирование MikroTik RouterOS 7 в Telegram: рабочий скрипт и разбор ошибок" href="https://it-apteka.com/rezervnoe-kopirovanie-mikrotik-routeros-7-v-telegram-avtomatizacija-za-20-minut/" target="_blank" rel="noopener" data-wpil-monitor-id="3102">MikroTik с RouterOS</a> 7.x и желание разобраться.</p>
<p>Вот что будет внутри:</p>
<ul>
<li>Bridge и VLAN-интерфейсы — основа разделения</li>
<li>Trunk-порт — один кабель, все VLAN</li>
<li>Access-порты — каждый порт в своей сети</li>
<li>Bridge VLAN filtering — правильный способ в RouterOS 7</li>
<li>Firewall между VLAN — кто куда может</li>
<li>DHCP и <a class="wpil_keyword_link" title="DNS" href="https://it-apteka.com/tag/dns/" target="_blank" rel="noopener" data-wpil-keyword-link="linked" data-wpil-monitor-id="3110">DNS</a> для каждого VLAN</li>
<li>Гостевой WiFi на отдельном VLAN</li>
</ul>
<p>Если базовая настройка MikroTik еще не сделана, начни с нее. А для изоляции серверов смотри статью про DMZ.</p>
<h2>2. Причины</h2>
<p>Почему одна сеть — это проблема? Разберем по факту.</p>
<h3>Гости видят внутренние ресурсы</h3>
<p>Парень из курьерской службы подключился к гостевому WiFi и обнаружил NAS с финансовыми отчетами. Не потому что он хакер. Потому что у тебя нет VLAN. Гостевой трафик должен уходить сразу в интернет, не касаясь офиса.</p>
<h3>Камеры и IoT устройства — дыра в безопасности</h3>
<p>IP-камера куплена на AliExpress с прошивкой 2019 года. У нее дефолтные учетки, открытые порты и нулевая поддержка обновлений. Если она в одной сети с рабочими станциями, компрометация одной камеры — это компрометация всего офиса. VLAN изолирует IoT в гетто, откуда они не выберутся.</p>
<h3>VoIP прерывается из-за фонового трафика</h3>
<p>Секретарь разговаривает с клиентом. В это время кто-то скачивает обновление <a class="wpil_keyword_link" title="Windows Server" href="https://it-apteka.com/category/windows-server/" target="_blank" rel="noopener" data-wpil-keyword-link="linked" data-wpil-monitor-id="3108">Windows</a>. RTP-пакеты голоса теряются в очереди за TCP-сегментами. Звук превращается в робота. Отдельный VLAN для <a title="SIP ALG MikroTik: отключение, настройка NAT, RTP и решение проблем с VoIP" href="https://it-apteka.com/nastrojka-sip-telefonii-za-mikrotik-i-otkljuchenie-sip-alg/" target="_blank" rel="noopener" data-wpil-monitor-id="3092">VoIP с приоритетом QoS решает проблему</a> на корню.</p>
<h3>Широковещательный шторм</h3>
<p>В плоской сети /24 каждый <a class="wpil_keyword_link" title="arp" href="https://it-apteka.com/tag/arp/" target="_blank" rel="noopener" data-wpil-keyword-link="linked" data-wpil-monitor-id="3107">ARP</a>-запрос, каждый broadcast DHCP, каждый широковещательный пакет видят все 253 устройства. Камеры шлют multicast видеопотоки. Принтеры анонсируют себя через LLMNR. Сеть тонет в шуме. VLAN режет broadcast-домен на части.</p>
<h3>Управление доступом невозможно</h3>
<p>Без VLAN firewall работает только на границе с интернетом. Внутри сети нет границ. Ты не можешь сказать: «гости только в интернет, камеры только к регистратору, офис везде». VLAN дает тебе эти границы.</p>
<h3>Масштабирование превращается в кошмар</h3>
<p>Офис растет. Добавили второй этаж. Потом производственный цех. Потом филиал. В плоской сети каждое расширение — это перепроектирование адресации. С VLAN ты просто добавляешь новый trunk-порт и прокидываешь нужные VLAN. Роутер даже не замечает разницы.</p>
<h2>3. Рецепт</h2>
<h3>Подготовка</h3>
<p>Перед настройкой проверь окружение. Потеряешь доступ — будешь бегать к роутеру.</p>
<table style="border-collapse: collapse; width: 100%;" border="1" cellspacing="0" cellpadding="8">
<tbody>
<tr style="background: #f1f5f9;">
<th style="text-align: left;">Параметр</th>
<th style="text-align: left;">Требование</th>
</tr>
<tr>
<td>Версия RouterOS</td>
<td>7.x (на момент публикации актуальна 7.18. Перед настройкой проверь свежие релизы на <a href="https://mikrotik.com/download" target="_blank" rel="noopener">mikrotik.com</a>)</td>
</tr>
<tr>
<td>Устройство</td>
<td>Любой MikroTik с 5+ Ethernet-портами (для примера hEX S или RB5009)</td>
</tr>
<tr>
<td>Коммутатор</td>
<td>Управляемый с поддержкой 802.1Q (опционально, для trunk к другому этажу)</td>
</tr>
<tr>
<td>Доступ</td>
<td>WinBox или WebFig. Не делай это через SSH с телефона.</td>
</tr>
</tbody>
</table>
<p>Наша схема VLAN:</p>
<table style="border-collapse: collapse; width: 100%;" border="1" cellspacing="0" cellpadding="8">
<tbody>
<tr style="background: #f1f5f9;">
<th style="text-align: left;">VLAN ID</th>
<th style="text-align: left;">Назначение</th>
<th style="text-align: left;">Подсеть</th>
<th style="text-align: left;">Доступ</th>
</tr>
<tr>
<td>VLAN 10</td>
<td>Офис (сотрудники)</td>
<td>192.168.10.0/24</td>
<td>Интернет + все VLAN</td>
</tr>
<tr>
<td>VLAN 20</td>
<td>Гости (WiFi + провод)</td>
<td>192.168.20.0/24</td>
<td>Только интернет</td>
</tr>
<tr>
<td>VLAN 30</td>
<td>VoIP (IP-телефоны)</td>
<td>192.168.30.0/24</td>
<td>Интернет + офис</td>
</tr>
<tr>
<td>VLAN 40</td>
<td>Камеры (IP-видео)</td>
<td>192.168.40.0/24</td>
<td>Только регистратор в VLAN 10</td>
</tr>
</tbody>
</table>
<p>Таблица портов:</p>
<table style="border-collapse: collapse; width: 100%;" border="1" cellspacing="0" cellpadding="8">
<tbody>
<tr style="background: #f1f5f9;">
<th style="text-align: left;">Порт</th>
<th style="text-align: left;">Режим</th>
<th style="text-align: left;">VLAN</th>
<th style="text-align: left;">Назначение</th>
</tr>
<tr>
<td>ether1</td>
<td>Trunk (tagged 10,20,30,40)</td>
<td>Все</td>
<td>К коммутатору или точке доступа</td>
</tr>
<tr>
<td>ether2</td>
<td>Access (untagged 10)</td>
<td>10</td>
<td>Офисный ПК</td>
</tr>
<tr>
<td>ether3</td>
<td>Access (untagged 20)</td>
<td>20</td>
<td>Гостевой ПК / WiFi AP</td>
</tr>
<tr>
<td>ether4</td>
<td>Access (untagged 30)</td>
<td>30</td>
<td>IP-телефон</td>
</tr>
<tr>
<td>ether5</td>
<td>Access (untagged 40)</td>
<td>40</td>
<td>IP-камера</td>
</tr>
</tbody>
</table>
<p>Архитектура сети:</p>
<pre class="mermaid">%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["MikroTik Router"] --> B["ether1 Trunk"]
B --> C["Управляемый коммутатор"]
C --> D["ether2 Access VLAN10"]
C --> E["ether3 Access VLAN20"]
C --> F["ether4 Access VLAN30"]
C --> G["ether5 Access VLAN40"]
A --> H["VLAN10 Office 192.168.10.0/24"]
A --> I["VLAN20 Guest 192.168.20.0/24"]
A --> J["VLAN30 VoIP 192.168.30.0/24"]
A --> K["VLAN40 Cameras 192.168.40.0/24"]
H --> L["Internet + VLAN30"]
I --> M["Internet only"]
J --> N["Internet + SIP"]
K --> O["NVR in VLAN10 only"]
style A fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style B fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style C fill:#f8fafc,stroke:#94a3b8,stroke-width:2px,color:#475569
style D fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style E fill:#f8fafc,stroke:#f97316,stroke-width:2px,color:#c2410c
style F fill:#f8fafc,stroke:#8b5cf6,stroke-width:2px,color:#6d28d9
style G fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#b91c1c
</pre>
<h3>Шаг 1. Создаем bridge</h3>
<p>Bridge в RouterOS 7 — это центральный коммутатор. Все порты и VLAN-интерфейсы живут внутри него.</p>
"Важно"
<br />
В <a title="Настройка VLAN на MikroTik RouterOS 7 — полный гайд 2026" href="https://it-apteka.com/nastrojka-vlan-na-mikrotik-routeros-7-polnyj-gajd-po-bridge-trunk-i-wi-fi/" target="_blank" rel="noopener" data-wpil-monitor-id="3091">RouterOS 7 bridge VLAN</a> filtering включен через настройку bridge, а не через отдельный VLAN интерфейс. Не путай со старым способом через /interface ethernet switch.<br />
<pre><code class="language-bash">
/interface bridge add name=bridge1 protocol-mode=rstp comment="MAIN-BRIDGE"
</code></pre>
<p>RSTP защитит от петель, если кто-то случайно замкнет два порта патч-кордом. Бывало и такое. В пятницу вечером.</p>
<p>Результат: bridge1 создан. Пока пустой.</p>
<h3>Шаг 2. Добавляем порты в bridge</h3>
<p>Все порты, которые участвуют в VLAN, добавляем в bridge. Это trunk и все access-порты.</p>
<pre><code class="language-bash">
/interface bridge port add bridge=bridge1 interface=ether1 comment="TRUNK"
/interface bridge port add bridge=bridge1 interface=ether2 comment="ACCESS-OFFICE"
/interface bridge port add bridge=bridge1 interface=ether3 comment="ACCESS-GUEST"
/interface bridge port add bridge=bridge1 interface=ether4 comment="ACCESS-VOIP"
/interface bridge port add bridge=bridge1 interface=ether5 comment="ACCESS-CAMERA"
</code></pre>
<p>Результат: все пять портов в bridge1. Трафик между ними пока ходит без тегов.</p>
<h3>Шаг 3. Настраиваем bridge VLAN filtering</h3>
<p>Вот тут вся магия. Включаем vlan-filtering на bridge. Теперь bridge начнет смотреть на VLAN-теги в кадрах.</p>
<pre><code class="language-bash">
/interface bridge set bridge1 vlan-filtering=yes
</code></pre>
<p>Теперь назначаем VLAN на порты. Trunk-порт ether1 tagged на все VLAN. Access-порты untagged на свой VLAN.</p>
<pre><code class="language-bash">
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether2 vlan-ids=10 comment="VLAN10-OFFICE"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether3 vlan-ids=20 comment="VLAN20-GUEST"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether4 vlan-ids=30 comment="VLAN30-VOIP"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether5 vlan-ids=40 comment="VLAN40-CAMERA"
</code></pre>
<p>Вот тут важно. tagged=ether1 означает, что кадры с VLAN 10, 20, 30, 40 выходят из ether1 с тегом 802.1Q. untagged=ether2 означает, что кадры VLAN 10 выходят из ether2 без тега. ПК на ether2 не знает про VLAN и не должен знать.</p>
<p>Результат: bridge знает, какие VLAN на каких портах. Trunk готов к коммутатору.</p>
<h3>Шаг 4. Создаем VLAN-интерфейсы</h3>
<p>VLAN-интерфейсы — это виртуальные порты внутри MikroTik. Каждый висит на bridge1 и имеет свой VLAN ID. На них будут IP-адреса.</p>
<pre><code class="language-bash">
/interface vlan add name=vlan10-office interface=bridge1 vlan-id=10 comment="VLAN10-OFFICE"
/interface vlan add name=vlan20-guest interface=bridge1 vlan-id=20 comment="VLAN20-GUEST"
/interface vlan add name=vlan30-voip interface=bridge1 vlan-id=30 comment="VLAN30-VOIP"
/interface vlan add name=vlan40-camera interface=bridge1 vlan-id=40 comment="VLAN40-CAMERA"
</code></pre>
<p>Результат: четыре виртуальных интерфейса. Каждый изолирован на L2 уровне.</p>
<h3>Шаг 5. Назначаем IP-адреса на VLAN</h3>
<p>Каждый VLAN — это отдельная подсеть. Назначаем шлюзы.</p>
<pre><code class="language-bash">
/ip address add address=192.168.10.1/24 interface=vlan10-office comment="GW-VLAN10"
/ip address add address=192.168.20.1/24 interface=vlan20-guest comment="GW-VLAN20"
/ip address add address=192.168.30.1/24 interface=vlan30-voip comment="GW-VLAN30"
/ip address add address=192.168.40.1/24 interface=vlan40-camera comment="GW-VLAN40"
</code></pre>
<p>Результат: MikroTik отвечает на ARP-запросы в каждом VLAN. Устройства знают свой шлюз.</p>
<h3>Шаг 6. DHCP-сервер для каждого VLAN</h3>
<p>Без DHCP администрирование превращается в ад. Создаем пулы и серверы.</p>
<pre><code class="language-bash">
/ip pool add name=pool-office ranges=192.168.10.10-192.168.10.254
/ip pool add name=pool-guest ranges=192.168.20.10-192.168.20.254
/ip pool add name=pool-voip ranges=192.168.30.10-192.168.30.254
/ip pool add name=pool-camera ranges=192.168.40.10-192.168.40.254
</code></pre>
<p>Теперь <a title="DHCP Snooping — что это такое и как защитить сеть от Rogue DHCP сервера" href="https://it-apteka.com/dhcp-snooping-chto-jeto-takoe-i-kak-zashhitit-set-ot-rogue-dhcp-servera-2/" target="_blank" rel="noopener" data-wpil-monitor-id="3093">сети и серверы</a>.</p>
<pre><code class="language-bash">
/ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-OFFICE"
/ip dhcp-server network add address=192.168.20.0/24 gateway=192.168.20.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-GUEST"
/ip dhcp-server network add address=192.168.30.0/24 gateway=192.168.30.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-VOIP"
/ip dhcp-server network add address=192.168.40.0/24 gateway=192.168.40.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-CAMERA"
/ip dhcp-server add name=dhcp-office interface=vlan10-office address-pool=pool-office disabled=no comment="DHCP-OFFICE"
/ip dhcp-server add name=dhcp-guest interface=vlan20-guest address-pool=pool-guest disabled=no comment="DHCP-GUEST"
/ip dhcp-server add name=dhcp-voip interface=vlan30-voip address-pool=pool-voip disabled=no comment="DHCP-VOIP"
/ip dhcp-server add name=dhcp-camera interface=vlan40-camera address-pool=pool-camera disabled=no comment="DHCP-CAMERA"
</code></pre>
<p>Результат: устройства в каждом VLAN получают адреса автоматически. DNS — независимые от провайдера.</p>
<h3>Шаг 7. NAT для всех VLAN</h3>
<p>Без маскарада пакеты из приватных сетей не выйдут в интернет. Добавляем src-nat.</p>
<pre><code class="language-bash">
/ip firewall nat add chain=srcnat out-interface=wan1 action=masquerade comment="NAT-ALL-VLANS"
</code></pre>
<p>Одно правило хватит для всех VLAN. Srcnat смотрит на out-interface, а не на src-address. Все четыре подсети выйдут в интернет через один WAN.</p>
<p>Если у тебя два WAN, как в статье про failover, добавь второе правило.</p>
<pre><code class="language-bash">
/ip firewall nat add chain=srcnat out-interface=wan2 action=masquerade comment="NAT-WAN2"
</code></pre>
<p>Результат: любой пакет из любого VLAN получит белый IP при выходе в интернет.</p>
<h3>Шаг 8. Firewall между VLAN</h3>
<p>Вот ради чего все затевалось. Изолируем сети друг от друга.</p>
<p>Правила в /ip firewall filter. Порядок критичен. Сначала разрешаем, потом запрещаем.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward action=accept connection-state=established,related comment="ALLOW-ESTABLISHED"
</code></pre>
<p>Офис может ходить везде.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward in-interface=vlan10-office action=accept comment="OFFICE-ALLOW-ALL"
</code></pre>
<p>VoIP может в интернет и в офис.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward in-interface=vlan30-voip out-interface=vlan10-office action=accept comment="VOIP-TO-OFFICE"
/ip firewall filter add chain=forward in-interface=vlan30-voip out-interface=wan1 action=accept comment="VOIP-TO-INTERNET"
</code></pre>
<p>Камеры только к NVR в офисе. NVR у нас в VLAN 10.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward in-interface=vlan40-camera out-interface=vlan10-office dst-address=192.168.10.0/24 action=accept comment="CAMERA-TO-OFFICE"
</code></pre>
<p>Гости только в интернет. Никуда больше.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward in-interface=vlan20-guest out-interface=wan1 action=accept comment="GUEST-TO-INTERNET"
</code></pre>
<p>Теперь запрещаем все остальное между VLAN.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=forward in-interface=vlan20-guest action=drop comment="DROP-GUEST-TO-ANY"
/ip firewall filter add chain=forward in-interface=vlan40-camera action=drop comment="DROP-CAMERA-TO-ANY"
/ip firewall filter add chain=forward in-interface=vlan30-voip action=drop comment="DROP-VOIP-TO-ANY"
</code></pre>
<p>Результат: гости не видят офис. Камеры не лезут в интернет. VoIP работает и звонит. Офис управляет всем.</p>
<h3>Шаг 9. Доступ к роутеру из VLAN</h3>
<p>По умолчанию <a title="MikroTik hAP: обзор всех моделей, характеристики и настройка роутера" href="https://it-apteka.com/mikrotik-hap-obzor-vseh-modelej-harakteristiki-i-nastrojka-routera/" target="_blank" rel="noopener" data-wpil-monitor-id="3106">MikroTik отвечает на всех</a> интерфейсах. Закроем доступ к WinBox и SSH из гостевого VLAN.</p>
<pre><code class="language-bash">
/ip firewall filter add chain=input in-interface=vlan20-guest action=drop comment="DROP-GUEST-TO-ROUTER"
/ip firewall filter add chain=input in-interface=vlan40-camera action=drop comment="DROP-CAMERA-TO-ROUTER"
</code></pre>
<p>Результат: управление роутером доступно только из офисного VLAN и через WAN, если настроен VPN.</p>
<h3>Шаг 10. Гостевой WiFi на отдельном VLAN</h3>
<p>Если у тебя <a title="Настройка WiFi MikroTik ROS 7 (Wifiwave2): шпаргалка от каналов до CAPsMAN" href="https://it-apteka.com/tonkaja-nastrojka-wi-fi-na-mikrotik-ros-7-shpargalka/" target="_blank" rel="noopener" data-wpil-monitor-id="3103">MikroTik с WiFi</a> или внешняя точка доступа на trunk-порту, настраиваем гостевую сеть.</p>
<p>На точке доступа создай SSID «Office-Guest» и назначь ему VLAN 20. На MikroTik ничего дополнительно делать не нужно — пакеты с тегом 20 уже обрабатываются bridge.</p>
<p>Если <a title="MikroTik RouterOS 7: Настройка OSPF, WiFi и CHR — пошаговый рецепт без соплей" href="https://it-apteka.com/mikrotik-routeros-7-nastrojka-ospf-wifi-i-chr-poshagovyj-recept-bez-soplej/" target="_blank" rel="noopener" data-wpil-monitor-id="3104">WiFi на самом MikroTik</a>:</p>
<pre><code class="language-bash">
/interface wifi add name=wifi-guest ssid="Office-Guest" security-profile=guest-security vlan-id=20
</code></pre>
<p>Или для старого wireless:</p>
<pre><code class="language-bash">
/interface wireless add name=wlan-guest ssid="Office-Guest" vlan-mode=use-tag vlan-id=20
</code></pre>
<p>Результат: гости подключаются к WiFi и попадают сразу в VLAN 20. Не видят офис.</p>
<h3>Шаг 11. QoS для VoIP VLAN</h3>
<p>Голосовые пакеты должны уходить первыми. Повысим приоритет VLAN 30.</p>
<pre><code class="language-bash">
/interface bridge set bridge1 priority=0x8000
/queue type add name=voip-priority kind=pfifo pfifo-limit=50
/queue simple add name=voip target=vlan30-voip max-limit=10M/10M priority=1/1 comment="PRIORITY-VOIP"
</code></pre>
<p>Результат: RTP-трафик из VLAN 30 обрабатывается в приоритете. Звонки не прерываются.</p>
<h2>4. Проверка</h2>
<p>Настроил? Проверь, пока не ушел домой.</p>
<h3>Проверка bridge VLAN</h3>
<pre><code class="language-bash">
/interface bridge vlan print
/interface bridge port print
</code></pre>
<p>Убедись, что ether1 tagged на все VLAN. Access-порты untagged на свой VLAN.</p>
<h3>Проверка VLAN-интерфейсов</h3>
<pre><code class="language-bash">
/interface vlan print
/ip address print
</code></pre>
<p>Все четыре VLAN должны быть running. IP-адреса назначены.</p>
<h3>Проверка DHCP</h3>
<pre><code class="language-bash">
/ip dhcp-server print
/ip dhcp-server lease print
</code></pre>
<p>Устройства в каждом VLAN получили адреса. Если lease пустой — проверь кабель.</p>
<h3>Проверка связности между VLAN</h3>
<p>С компьютера в VLAN 10 пингуй адрес VLAN 30.</p>
<pre><code class="language-bash">
/ping 192.168.30.1
</code></pre>
<p>Должен проходить — это шлюз. Теперь пингуй устройство в VLAN 30.</p>
<pre><code class="language-bash">
/ping 192.168.30.10
</code></pre>
<p>Если проходит, значит firewall пропускает. Если нет — проверь правила forward.</p>
<h3>Проверка изоляции гостей</h3>
<p>С гостевого WiFi попробуй открыть \\192.168.10.10. Должно быть таймаут. Попробуй открыть сайт в интернете. Должно работать.</p>
<h3>Проверка камер</h3>
<p>Камера в VLAN 40 должна пинговать NVR в VLAN 10. Но не должна пинговать 8.8.8.8.</p>
<pre><code class="language-bash">
/tool ping 8.8.8.8 interface=vlan40-camera
</code></pre>
<p>Должен быть 100% loss. Если проходит — firewall пропускает лишнее.</p>
<h3>Проверка trunk</h3>
<p>Подключи ноутбук к ether1. Настрой на нем VLAN 10. Получи адрес из 192.168.10.0/24. Поменяй на VLAN 20 — получи адрес из 192.168.20.0/24. Trunk работает.</p>
<h2>5. Осложнения</h2>
<h3>Ошибка: Устройство в access-порту не получает IP</h3>
<p>Причина: порт не добавлен в bridge. Или bridge VLAN filtering не включен. Или в vlan-ids указан не тот номер.</p>
<p>Решение: проверь три вещи.</p>
<pre><code class="language-bash">
/interface bridge port print where interface=ether2
/interface bridge print where name=bridge1
/interface bridge vlan print where vlan-ids=10
</code></pre>
<p>Убедись, что ether2 в bridge1. Убедись, что vlan-filtering=yes. Убедись, что VLAN 10 привязан к ether2.</p>
<h3>Ошибка: Трафик между VLAN не ходит, хотя firewall разрешает</h3>
<p>Причина: устройства в разных VLAN имеют маску /24 и шлюз внутри своей сети. Но MikroTik не маршрутизирует между VLAN. Или firewall правила стоят в неправильном порядке.</p>
<p>Решение: проверь, что IP forwarding включен. В RouterOS он включен по умолчанию. Проверь порядок правил.</p>
<pre><code class="language-bash">
/ip firewall filter print
</code></pre>
<p>Accept правила должны быть выше drop. Перемести через move.</p>
<pre><code class="language-bash">
/ip firewall filter move [find comment="OFFICE-ALLOW-ALL"] destination=1
</code></pre>
<h3>Ошибка: Trunk-порт не пропускает tagged кадры</h3>
<p>Причина: на коммутаторе с другой стороны trunk настроен, а на MikroTik порт в bridge VLAN не помечен как tagged.</p>
<p>Решение: проверь настройку tagged.</p>
<pre><code class="language-bash">
/interface bridge vlan print where tagged~"ether1"
</code></pre>
<p>Должно быть четыре записи с VLAN 10, 20, 30, 40. Если tagged пустой, добавь.</p>
<h3>Ошибка: Гости видят офисные принтеры</h3>
<p>Причина: firewall правило drop для гостей стоит после accept established. Или гостевой WiFi не на VLAN 20, а на том же bridge без тега.</p>
<p>Решение: проверь, что гостевой WiFi действительно использует vlan-id=20. Проверь firewall.</p>
<pre><code class="language-bash">
/ip firewall filter print where in-interface=vlan20-guest
</code></pre>
<p>Должно быть accept только на wan1, потом drop.</p>
<h3>Ошибка: После включения vlan-filtering пропал доступ к роутеру</h3>
<p>Причина: порт, через который ты подключен, не добавлен в bridge VLAN. Или ты подключен к trunk-порту без настроенного VLAN на своем компьютере.</p>
<p>Решение: подключись к access-порту VLAN 10. Или настрой VLAN на своем ноутбуке. Если потерял доступ полностью — сбрось конфиг через Netinstall.</p>
<h3>Ошибка: Камеры не подключаются к NVR</h3>
<p>Причина: NVR в VLAN 10, камеры в VLAN 40. Firewall разрешает camera-to-office, но NVR слушает только broadcast в своей подсети. Или камера настроена на статический IP в другой сети.</p>
<p>Решение: проверь, что камера получила DHCP из 192.168.40.0/24. Проверь, что NVR имеет адрес в 192.168.10.0/24. Добавь маршрут или настрой NVR на работу с другой подсетью.</p>
<h2>6. Альтернативы</h2>
<h3>Разделение через отдельные физические интерфейсы</h3>
<p>Можно воткнуть гостей в один порт, офис в другой, камеры в третий. Без VLAN. Но тогда тебе нужен роутер с 8+ портами. И кабельная инфраструктура разрастается. VLAN позволяет использовать один кабель для всех сетей. Экономия на портах и проводах окупает настройку за один день.</p>
<h3>Разделение через списки доступа на коммутаторе</h3>
<p>Управляемый коммутатор умеет ACL на L2. Но это работает только внутри коммутатора. Как только трафик попадает на роутер, ACL коммутатора бессилен. VLAN + <a title="Настройка Firewall на MikroTik для защиты от DDoS и Bruteforce: шпаргалка IT-инженера" href="https://it-apteka.com/nastrojka-firewall-na-mikrotik-dlja-zashhity-ot-ddos-i-bruteforce-shpargalka-it-inzhenera/" target="_blank" rel="noopener" data-wpil-monitor-id="3105">firewall на MikroTik</a> дают единую политику для всей сети.</p>
<h3>Разделение через WiFi изоляцию</h3>
<p>Точки доступа умеют «Client Isolation». Клиенты WiFi не видят друг друга. Но это не мешает гостевому ноутбуку сканировать проводную сеть, если он подключен по кабелю. VLAN изолирует на уровне сети, независимо от типа подключения.</p>
<h3>Использование CapsMAN для централизованного WiFi</h3>
<p>Если у тебя несколько точек доступа MikroTik, CapsMAN управляет ими централизованно. VLAN для гостей настраивается один раз на контроллере. Это удобно, но выходит за рамки базовой статьи. Начни с одной точки, потом масштабируй.</p>
<h2>7. Профилактика</h2>
<h3>Мониторинг VLAN</h3>
<p>Следи за загрузкой каждого VLAN. Неожиданный рост трафика в VLAN 40 может означать, что камеру взломали и она участвует в DDoS.</p>
<pre><code class="language-bash">
/interface monitor-traffic vlan10-office once
/interface monitor-traffic vlan40-camera once
</code></pre>
<h3>Бэкап конфигурации</h3>
<p>Экспортируй конфиг после каждого изменения.</p>
<pre><code class="language-bash">
/export file=backup-vlan-config
</code></pre>
<p>Храни на внешнем сервере. VLAN-настройки сложно восстановить по памяти.</p>
<h3>Документирование портов</h3>
<p>Наклей стикеры на розетки. «VLAN 10 — офис», «VLAN 40 — камеры». Через полгода ты не вспомнишь, почему ether4 не дает интернет ноутбуку. А коллега тем более.</p>
<h3>Обновление RouterOS</h3>
<p>Проверяй новые версии раз в квартал. Обновляй сначала на тестовом устройстве. В продакшене используй только Long-term ветку.</p>
<pre><code class="language-bash">
/system package update check-for-updates
/system package update download
/system reboot
</code></pre>
<h3>Сегментация при росте</h3>
<p>Если камер станет больше 50, вынеси их в отдельный физический сегмент с отдельным коммутатором. Один broadcast-домен с сотней камер — это уже нагрузка. Но VLAN останется тем же. Просто добавишь еще один trunk-порт.</p>
<h2>8. FAQ</h2>
<h3>Почему VLAN не работает после настройки?</h3>
<p>Проверь три вещи. Первое — vlan-filtering включен на bridge. Второе — порты добавлены в bridge VLAN с правильными tagged/untagged. Третье — VLAN-интерфейсы созданы на bridge, а не на физическом порту. Если интерфейс vlan создан на ether2 вместо bridge1, trunk не заработает.</p>
<h3>Как проверить что firewall между VLAN работает правильно?</h3>
<p>С компьютера в гостевом VLAN попробуй пинговать адрес в офисном VLAN. Должен быть 100% loss. Попробуй открыть сайт в интернете. Должно работать. Проверь счетчики правил.</p>
<pre><code class="language-bash">
/ip firewall filter print stats
</code></pre>
<h3>Что делать если устройство не поддерживает VLAN?</h3>
<p>Подключи его к access-порту. Устройство не знает про VLAN — это нормально. Access-порт снимает тег перед отправкой кадра устройству. Для устройства это выглядит как обычная сеть.</p>
<h3>Чем bridge VLAN filtering отличается от старого switch chip VLAN?</h3>
<p>Bridge VLAN filtering работает на CPU и применяется ко всем портам. Switch chip VLAN работал только на определенных чипах Atheros и требовал hardware-offload. В RouterOS 7 bridge VLAN filtering — единственный правильный способ. Он работает на всех устройствах одинаково.</p>
<h3>Можно ли сделать trunk к обычному неуправляемому коммутатору?</h3>
<p>Нет. Неуправляемый коммутатор не понимает теги 802.1Q. Он пропустит tagged кадры как есть, и устройства на другом конце получат кадры с неизвестным тегом. Они их отбросят. Для trunk нужен управляемый коммутатор.</p>
<h3>Как добавить пятый VLAN без перенастройки всего?</h3>
<p>Создай VLAN-интерфейс. Добавь его в <a title="VLAN на MikroTik: настройка RouterOS 7 — bridge, trunk, Wi-Fi и management" href="https://it-apteka.com/management-vlan-na-mikrotik-cpu-port-hardware-offload-i-diagnostika-polnyj-razbor/" target="_blank" rel="noopener" data-wpil-monitor-id="3090">bridge VLAN с tagged на trunk</a> и untagged на access-порту. Назначь IP и DHCP. Добавь firewall правила. Ничего из существующего конфига трогать не нужно. VLAN изолированы друг от друга по умолчанию.</p>
<h2>9. Прогноз</h2>
<p>Ты настроил vlan на mikrotik. Четыре изолированные сети живут в одном кабеле. Гости сидят в своем гетто и не лезут к бухгалтерии. Камеры шлют видео только на регистратор. Телефоны звонят без роботизации. Офис работает без сюрпризов.</p>
<p>Trunk-порт готов к расширению. Добавишь пятый этаж — прокинешь один кабель и включишь нужные VLAN на новом коммутаторе. Не придется переписывать адресацию.</p>
<p>Если не заработало — пиши в комментарии, разберемся. Прикладывай вывод /export hide-sensitive. Без этого я гадаю вслепую, а гадание на VLAN хуже гадания на кофейной гуще.</p>
<p>А если нужно изолировать серверы с доступом из интернета, смотри статью про DMZ. Там другой уровень паранойи, но тот же принцип — разделение и firewall</p>
Быстрый ответ
Создай bridge. Добавь VLAN-интерфейсы (vlan10, vlan20, vlan30, vlan40) поверх bridge. Настрой bridge VLAN filtering: trunk-порт tagged на все VLAN, access-порты untagged на свой VLAN. Повесь IP-адреса на VLAN-интерфейсы. Добавь DHCP-сервер на каждый VLAN. Настрой firewall: drop из гостевого VLAN в офис, разреши офис в интернет. Четыре
сети в одном кабеле, никто друг другу не мешает.
1. Диагноз
Все сидят в одной сети. Гости, бухгалтерия, камеры наблюдения, IP-телефоны. Знакомо?
Кто-то из гостевого WiFi сканирует сетевое окружение и видит принтер директора. Камера Hikvision с дефолтным паролем болтается в той же подсети, что и 1С. Сотрудник случайно открыл общий доступ на своем ноутбуке, и весь офис видит его фото с отпуска. Это не сеть. Это цифровой коммуналка.
Vlan на mikrotik решает это за один вечер. Получишь четыре изолированные сети в одном физическом кабеле. Гости не лезут к бухгалтерии. Камеры шлют видео только на регистратор. Телефоны не прерываются из-за торрентов. Время настройки — 50 минут. Нужен MikroTik с RouterOS 7.x и желание разобраться.
Вот что будет внутри:
- Bridge и VLAN-интерфейсы — основа разделения
- Trunk-порт — один кабель, все VLAN
- Access-порты — каждый порт в своей сети
- Bridge VLAN filtering — правильный способ в RouterOS 7
- Firewall между VLAN — кто куда может
- DHCP и DNS для каждого VLAN
- Гостевой WiFi на отдельном VLAN
Если базовая настройка MikroTik еще не сделана, начни с нее. А для изоляции серверов смотри статью про DMZ.
2. Причины
Почему одна сеть — это проблема? Разберем по факту.
Гости видят внутренние ресурсы
Парень из курьерской службы подключился к гостевому WiFi и обнаружил NAS с финансовыми отчетами. Не потому что он хакер. Потому что у тебя нет VLAN. Гостевой трафик должен уходить сразу в интернет, не касаясь офиса.
Камеры и IoT устройства — дыра в безопасности
IP-камера куплена на AliExpress с прошивкой 2019 года. У нее дефолтные учетки, открытые порты и нулевая поддержка обновлений. Если она в одной сети с рабочими станциями, компрометация одной камеры — это компрометация всего офиса. VLAN изолирует IoT в гетто, откуда они не выберутся.
VoIP прерывается из-за фонового трафика
Секретарь разговаривает с клиентом. В это время кто-то скачивает обновление Windows. RTP-пакеты голоса теряются в очереди за TCP-сегментами. Звук превращается в робота. Отдельный VLAN для VoIP с приоритетом QoS решает проблему на корню.
Широковещательный шторм
В плоской сети /24 каждый ARP-запрос, каждый broadcast DHCP, каждый широковещательный пакет видят все 253 устройства. Камеры шлют multicast видеопотоки. Принтеры анонсируют себя через LLMNR. Сеть тонет в шуме. VLAN режет broadcast-домен на части.
Управление доступом невозможно
Без VLAN firewall работает только на границе с интернетом. Внутри сети нет границ. Ты не можешь сказать: «гости только в интернет, камеры только к регистратору, офис везде». VLAN дает тебе эти границы.
Масштабирование превращается в кошмар
Офис растет. Добавили второй этаж. Потом производственный цех. Потом филиал. В плоской сети каждое расширение — это перепроектирование адресации. С VLAN ты просто добавляешь новый trunk-порт и прокидываешь нужные VLAN. Роутер даже не замечает разницы.
3. Рецепт
Подготовка
Перед настройкой проверь окружение. Потеряешь доступ — будешь бегать к роутеру.
| Параметр |
Требование |
| Версия RouterOS |
7.x (на момент публикации актуальна 7.18. Перед настройкой проверь свежие релизы на mikrotik.com) |
| Устройство |
Любой MikroTik с 5+ Ethernet-портами (для примера hEX S или RB5009) |
| Коммутатор |
Управляемый с поддержкой 802.1Q (опционально, для trunk к другому этажу) |
| Доступ |
WinBox или WebFig. Не делай это через SSH с телефона. |
Наша схема VLAN:
| VLAN ID |
Назначение |
Подсеть |
Доступ |
| VLAN 10 |
Офис (сотрудники) |
192.168.10.0/24 |
Интернет + все VLAN |
| VLAN 20 |
Гости (WiFi + провод) |
192.168.20.0/24 |
Только интернет |
| VLAN 30 |
VoIP (IP-телефоны) |
192.168.30.0/24 |
Интернет + офис |
| VLAN 40 |
Камеры (IP-видео) |
192.168.40.0/24 |
Только регистратор в VLAN 10 |
Таблица портов:
| Порт |
Режим |
VLAN |
Назначение |
| ether1 |
Trunk (tagged 10,20,30,40) |
Все |
К коммутатору или точке доступа |
| ether2 |
Access (untagged 10) |
10 |
Офисный ПК |
| ether3 |
Access (untagged 20) |
20 |
Гостевой ПК / WiFi AP |
| ether4 |
Access (untagged 30) |
30 |
IP-телефон |
| ether5 |
Access (untagged 40) |
40 |
IP-камера |
Архитектура сети:
%%{init: {
'theme': 'base',
'themeVariables': {
'primaryColor': '#ffffff',
'primaryTextColor': '#1e293b',
'primaryBorderColor': '#94a3b8',
'lineColor': '#64748b',
'fontSize': '15px',
'fontFamily': 'ui-sans-serif, system-ui, sans-serif'
},
'flowchart': {'curve': 'linear', 'nodeSpacing': 50, 'rankSpacing': 50}
}}%%
flowchart TD
A["MikroTik Router"] --> B["ether1 Trunk"]
B --> C["Управляемый коммутатор"]
C --> D["ether2 Access VLAN10"]
C --> E["ether3 Access VLAN20"]
C --> F["ether4 Access VLAN30"]
C --> G["ether5 Access VLAN40"]
A --> H["VLAN10 Office 192.168.10.0/24"]
A --> I["VLAN20 Guest 192.168.20.0/24"]
A --> J["VLAN30 VoIP 192.168.30.0/24"]
A --> K["VLAN40 Cameras 192.168.40.0/24"]
H --> L["Internet + VLAN30"]
I --> M["Internet only"]
J --> N["Internet + SIP"]
K --> O["NVR in VLAN10 only"]
style A fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style B fill:#f8fafc,stroke:#3b82f6,stroke-width:2px,color:#1e40af
style C fill:#f8fafc,stroke:#94a3b8,stroke-width:2px,color:#475569
style D fill:#f8fafc,stroke:#22c55e,stroke-width:2px,color:#15803d
style E fill:#f8fafc,stroke:#f97316,stroke-width:2px,color:#c2410c
style F fill:#f8fafc,stroke:#8b5cf6,stroke-width:2px,color:#6d28d9
style G fill:#f8fafc,stroke:#ef4444,stroke-width:2px,color:#b91c1c
Шаг 1. Создаем bridge
Bridge в RouterOS 7 — это центральный коммутатор. Все порты и VLAN-интерфейсы живут внутри него.
Важно
В
RouterOS 7 bridge VLAN filtering включен через настройку bridge, а не через отдельный VLAN интерфейс. Не путай со старым способом через /interface ethernet switch.
/interface bridge add name=bridge1 protocol-mode=rstp comment="MAIN-BRIDGE"
RSTP защитит от петель, если кто-то случайно замкнет два порта патч-кордом. Бывало и такое. В пятницу вечером.
Результат: bridge1 создан. Пока пустой.
Шаг 2. Добавляем порты в bridge
Все порты, которые участвуют в VLAN, добавляем в bridge. Это trunk и все access-порты.
/interface bridge port add bridge=bridge1 interface=ether1 comment="TRUNK"
/interface bridge port add bridge=bridge1 interface=ether2 comment="ACCESS-OFFICE"
/interface bridge port add bridge=bridge1 interface=ether3 comment="ACCESS-GUEST"
/interface bridge port add bridge=bridge1 interface=ether4 comment="ACCESS-VOIP"
/interface bridge port add bridge=bridge1 interface=ether5 comment="ACCESS-CAMERA"
Результат: все пять портов в bridge1. Трафик между ними пока ходит без тегов.
Шаг 3. Настраиваем bridge VLAN filtering
Вот тут вся магия. Включаем vlan-filtering на bridge. Теперь bridge начнет смотреть на VLAN-теги в кадрах.
/interface bridge set bridge1 vlan-filtering=yes
Теперь назначаем VLAN на порты. Trunk-порт ether1 tagged на все VLAN. Access-порты untagged на свой VLAN.
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether2 vlan-ids=10 comment="VLAN10-OFFICE"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether3 vlan-ids=20 comment="VLAN20-GUEST"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether4 vlan-ids=30 comment="VLAN30-VOIP"
/interface bridge vlan add bridge=bridge1 tagged=ether1 untagged=ether5 vlan-ids=40 comment="VLAN40-CAMERA"
Вот тут важно. tagged=ether1 означает, что кадры с VLAN 10, 20, 30, 40 выходят из ether1 с тегом 802.1Q. untagged=ether2 означает, что кадры VLAN 10 выходят из ether2 без тега. ПК на ether2 не знает про VLAN и не должен знать.
Результат: bridge знает, какие VLAN на каких портах. Trunk готов к коммутатору.
Шаг 4. Создаем VLAN-интерфейсы
VLAN-интерфейсы — это виртуальные порты внутри MikroTik. Каждый висит на bridge1 и имеет свой VLAN ID. На них будут IP-адреса.
/interface vlan add name=vlan10-office interface=bridge1 vlan-id=10 comment="VLAN10-OFFICE"
/interface vlan add name=vlan20-guest interface=bridge1 vlan-id=20 comment="VLAN20-GUEST"
/interface vlan add name=vlan30-voip interface=bridge1 vlan-id=30 comment="VLAN30-VOIP"
/interface vlan add name=vlan40-camera interface=bridge1 vlan-id=40 comment="VLAN40-CAMERA"
Результат: четыре виртуальных интерфейса. Каждый изолирован на L2 уровне.
Шаг 5. Назначаем IP-адреса на VLAN
Каждый VLAN — это отдельная подсеть. Назначаем шлюзы.
/ip address add address=192.168.10.1/24 interface=vlan10-office comment="GW-VLAN10"
/ip address add address=192.168.20.1/24 interface=vlan20-guest comment="GW-VLAN20"
/ip address add address=192.168.30.1/24 interface=vlan30-voip comment="GW-VLAN30"
/ip address add address=192.168.40.1/24 interface=vlan40-camera comment="GW-VLAN40"
Результат: MikroTik отвечает на ARP-запросы в каждом VLAN. Устройства знают свой шлюз.
Шаг 6. DHCP-сервер для каждого VLAN
Без DHCP администрирование превращается в ад. Создаем пулы и серверы.
/ip pool add name=pool-office ranges=192.168.10.10-192.168.10.254
/ip pool add name=pool-guest ranges=192.168.20.10-192.168.20.254
/ip pool add name=pool-voip ranges=192.168.30.10-192.168.30.254
/ip pool add name=pool-camera ranges=192.168.40.10-192.168.40.254
Теперь сети и серверы.
/ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-OFFICE"
/ip dhcp-server network add address=192.168.20.0/24 gateway=192.168.20.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-GUEST"
/ip dhcp-server network add address=192.168.30.0/24 gateway=192.168.30.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-VOIP"
/ip dhcp-server network add address=192.168.40.0/24 gateway=192.168.40.1 dns-server=8.8.8.8,1.1.1.1 comment="NET-CAMERA"
/ip dhcp-server add name=dhcp-office interface=vlan10-office address-pool=pool-office disabled=no comment="DHCP-OFFICE"
/ip dhcp-server add name=dhcp-guest interface=vlan20-guest address-pool=pool-guest disabled=no comment="DHCP-GUEST"
/ip dhcp-server add name=dhcp-voip interface=vlan30-voip address-pool=pool-voip disabled=no comment="DHCP-VOIP"
/ip dhcp-server add name=dhcp-camera interface=vlan40-camera address-pool=pool-camera disabled=no comment="DHCP-CAMERA"
Результат: устройства в каждом VLAN получают адреса автоматически. DNS — независимые от провайдера.
Шаг 7. NAT для всех VLAN
Без маскарада пакеты из приватных сетей не выйдут в интернет. Добавляем src-nat.
/ip firewall nat add chain=srcnat out-interface=wan1 action=masquerade comment="NAT-ALL-VLANS"
Одно правило хватит для всех VLAN. Srcnat смотрит на out-interface, а не на src-address. Все четыре подсети выйдут в интернет через один WAN.
Если у тебя два WAN, как в статье про failover, добавь второе правило.
/ip firewall nat add chain=srcnat out-interface=wan2 action=masquerade comment="NAT-WAN2"
Результат: любой пакет из любого VLAN получит белый IP при выходе в интернет.
Шаг 8. Firewall между VLAN
Вот ради чего все затевалось. Изолируем сети друг от друга.
Правила в /ip firewall filter. Порядок критичен. Сначала разрешаем, потом запрещаем.
/ip firewall filter add chain=forward action=accept connection-state=established,related comment="ALLOW-ESTABLISHED"
Офис может ходить везде.
/ip firewall filter add chain=forward in-interface=vlan10-office action=accept comment="OFFICE-ALLOW-ALL"
VoIP может в интернет и в офис.
/ip firewall filter add chain=forward in-interface=vlan30-voip out-interface=vlan10-office action=accept comment="VOIP-TO-OFFICE"
/ip firewall filter add chain=forward in-interface=vlan30-voip out-interface=wan1 action=accept comment="VOIP-TO-INTERNET"
Камеры только к NVR в офисе. NVR у нас в VLAN 10.
/ip firewall filter add chain=forward in-interface=vlan40-camera out-interface=vlan10-office dst-address=192.168.10.0/24 action=accept comment="CAMERA-TO-OFFICE"
Гости только в интернет. Никуда больше.
/ip firewall filter add chain=forward in-interface=vlan20-guest out-interface=wan1 action=accept comment="GUEST-TO-INTERNET"
Теперь запрещаем все остальное между VLAN.
/ip firewall filter add chain=forward in-interface=vlan20-guest action=drop comment="DROP-GUEST-TO-ANY"
/ip firewall filter add chain=forward in-interface=vlan40-camera action=drop comment="DROP-CAMERA-TO-ANY"
/ip firewall filter add chain=forward in-interface=vlan30-voip action=drop comment="DROP-VOIP-TO-ANY"
Результат: гости не видят офис. Камеры не лезут в интернет. VoIP работает и звонит. Офис управляет всем.
Шаг 9. Доступ к роутеру из VLAN
По умолчанию MikroTik отвечает на всех интерфейсах. Закроем доступ к WinBox и SSH из гостевого VLAN.
/ip firewall filter add chain=input in-interface=vlan20-guest action=drop comment="DROP-GUEST-TO-ROUTER"
/ip firewall filter add chain=input in-interface=vlan40-camera action=drop comment="DROP-CAMERA-TO-ROUTER"
Результат: управление роутером доступно только из офисного VLAN и через WAN, если настроен VPN.
Шаг 10. Гостевой WiFi на отдельном VLAN
Если у тебя MikroTik с WiFi или внешняя точка доступа на trunk-порту, настраиваем гостевую сеть.
На точке доступа создай SSID «Office-Guest» и назначь ему VLAN 20. На MikroTik ничего дополнительно делать не нужно — пакеты с тегом 20 уже обрабатываются bridge.
Если WiFi на самом MikroTik:
/interface wifi add name=wifi-guest ssid="Office-Guest" security-profile=guest-security vlan-id=20
Или для старого wireless:
/interface wireless add name=wlan-guest ssid="Office-Guest" vlan-mode=use-tag vlan-id=20
Результат: гости подключаются к WiFi и попадают сразу в VLAN 20. Не видят офис.
Шаг 11. QoS для VoIP VLAN
Голосовые пакеты должны уходить первыми. Повысим приоритет VLAN 30.
/interface bridge set bridge1 priority=0x8000
/queue type add name=voip-priority kind=pfifo pfifo-limit=50
/queue simple add name=voip target=vlan30-voip max-limit=10M/10M priority=1/1 comment="PRIORITY-VOIP"
Результат: RTP-трафик из VLAN 30 обрабатывается в приоритете. Звонки не прерываются.
4. Проверка
Настроил? Проверь, пока не ушел домой.
Проверка bridge VLAN
/interface bridge vlan print
/interface bridge port print
Убедись, что ether1 tagged на все VLAN. Access-порты untagged на свой VLAN.
Проверка VLAN-интерфейсов
/interface vlan print
/ip address print
Все четыре VLAN должны быть running. IP-адреса назначены.
Проверка DHCP
/ip dhcp-server print
/ip dhcp-server lease print
Устройства в каждом VLAN получили адреса. Если lease пустой — проверь кабель.
Проверка связности между VLAN
С компьютера в VLAN 10 пингуй адрес VLAN 30.
/ping 192.168.30.1
Должен проходить — это шлюз. Теперь пингуй устройство в VLAN 30.
/ping 192.168.30.10
Если проходит, значит firewall пропускает. Если нет — проверь правила forward.
Проверка изоляции гостей
С гостевого WiFi попробуй открыть \\192.168.10.10. Должно быть таймаут. Попробуй открыть сайт в интернете. Должно работать.
Проверка камер
Камера в VLAN 40 должна пинговать NVR в VLAN 10. Но не должна пинговать 8.8.8.8.
/tool ping 8.8.8.8 interface=vlan40-camera
Должен быть 100% loss. Если проходит — firewall пропускает лишнее.
Проверка trunk
Подключи ноутбук к ether1. Настрой на нем VLAN 10. Получи адрес из 192.168.10.0/24. Поменяй на VLAN 20 — получи адрес из 192.168.20.0/24. Trunk работает.
5. Осложнения
Ошибка: Устройство в access-порту не получает IP
Причина: порт не добавлен в bridge. Или bridge VLAN filtering не включен. Или в vlan-ids указан не тот номер.
Решение: проверь три вещи.
/interface bridge port print where interface=ether2
/interface bridge print where name=bridge1
/interface bridge vlan print where vlan-ids=10
Убедись, что ether2 в bridge1. Убедись, что vlan-filtering=yes. Убедись, что VLAN 10 привязан к ether2.
Ошибка: Трафик между VLAN не ходит, хотя firewall разрешает
Причина: устройства в разных VLAN имеют маску /24 и шлюз внутри своей сети. Но MikroTik не маршрутизирует между VLAN. Или firewall правила стоят в неправильном порядке.
Решение: проверь, что IP forwarding включен. В RouterOS он включен по умолчанию. Проверь порядок правил.
/ip firewall filter print
Accept правила должны быть выше drop. Перемести через move.
/ip firewall filter move [find comment="OFFICE-ALLOW-ALL"] destination=1
Ошибка: Trunk-порт не пропускает tagged кадры
Причина: на коммутаторе с другой стороны trunk настроен, а на MikroTik порт в bridge VLAN не помечен как tagged.
Решение: проверь настройку tagged.
/interface bridge vlan print where tagged~"ether1"
Должно быть четыре записи с VLAN 10, 20, 30, 40. Если tagged пустой, добавь.
Ошибка: Гости видят офисные принтеры
Причина: firewall правило drop для гостей стоит после accept established. Или гостевой WiFi не на VLAN 20, а на том же bridge без тега.
Решение: проверь, что гостевой WiFi действительно использует vlan-id=20. Проверь firewall.
/ip firewall filter print where in-interface=vlan20-guest
Должно быть accept только на wan1, потом drop.
Ошибка: После включения vlan-filtering пропал доступ к роутеру
Причина: порт, через который ты подключен, не добавлен в bridge VLAN. Или ты подключен к trunk-порту без настроенного VLAN на своем компьютере.
Решение: подключись к access-порту VLAN 10. Или настрой VLAN на своем ноутбуке. Если потерял доступ полностью — сбрось конфиг через Netinstall.
Ошибка: Камеры не подключаются к NVR
Причина: NVR в VLAN 10, камеры в VLAN 40. Firewall разрешает camera-to-office, но NVR слушает только broadcast в своей подсети. Или камера настроена на статический IP в другой сети.
Решение: проверь, что камера получила DHCP из 192.168.40.0/24. Проверь, что NVR имеет адрес в 192.168.10.0/24. Добавь маршрут или настрой NVR на работу с другой подсетью.
6. Альтернативы
Разделение через отдельные физические интерфейсы
Можно воткнуть гостей в один порт, офис в другой, камеры в третий. Без VLAN. Но тогда тебе нужен роутер с 8+ портами. И кабельная инфраструктура разрастается. VLAN позволяет использовать один кабель для всех сетей. Экономия на портах и проводах окупает настройку за один день.
Разделение через списки доступа на коммутаторе
Управляемый коммутатор умеет ACL на L2. Но это работает только внутри коммутатора. Как только трафик попадает на роутер, ACL коммутатора бессилен. VLAN + firewall на MikroTik дают единую политику для всей сети.
Разделение через WiFi изоляцию
Точки доступа умеют «Client Isolation». Клиенты WiFi не видят друг друга. Но это не мешает гостевому ноутбуку сканировать проводную сеть, если он подключен по кабелю. VLAN изолирует на уровне сети, независимо от типа подключения.
Использование CapsMAN для централизованного WiFi
Если у тебя несколько точек доступа MikroTik, CapsMAN управляет ими централизованно. VLAN для гостей настраивается один раз на контроллере. Это удобно, но выходит за рамки базовой статьи. Начни с одной точки, потом масштабируй.
7. Профилактика
Мониторинг VLAN
Следи за загрузкой каждого VLAN. Неожиданный рост трафика в VLAN 40 может означать, что камеру взломали и она участвует в DDoS.
/interface monitor-traffic vlan10-office once
/interface monitor-traffic vlan40-camera once
Бэкап конфигурации
Экспортируй конфиг после каждого изменения.
/export file=backup-vlan-config
Храни на внешнем сервере. VLAN-настройки сложно восстановить по памяти.
Документирование портов
Наклей стикеры на розетки. «VLAN 10 — офис», «VLAN 40 — камеры». Через полгода ты не вспомнишь, почему ether4 не дает интернет ноутбуку. А коллега тем более.
Обновление RouterOS
Проверяй новые версии раз в квартал. Обновляй сначала на тестовом устройстве. В продакшене используй только Long-term ветку.
/system package update check-for-updates
/system package update download
/system reboot
Сегментация при росте
Если камер станет больше 50, вынеси их в отдельный физический сегмент с отдельным коммутатором. Один broadcast-домен с сотней камер — это уже нагрузка. Но VLAN останется тем же. Просто добавишь еще один trunk-порт.
8. FAQ
Почему VLAN не работает после настройки?
Проверь три вещи. Первое — vlan-filtering включен на bridge. Второе — порты добавлены в bridge VLAN с правильными tagged/untagged. Третье — VLAN-интерфейсы созданы на bridge, а не на физическом порту. Если интерфейс vlan создан на ether2 вместо bridge1, trunk не заработает.
Как проверить что firewall между VLAN работает правильно?
С компьютера в гостевом VLAN попробуй пинговать адрес в офисном VLAN. Должен быть 100% loss. Попробуй открыть сайт в интернете. Должно работать. Проверь счетчики правил.
/ip firewall filter print stats
Что делать если устройство не поддерживает VLAN?
Подключи его к access-порту. Устройство не знает про VLAN — это нормально. Access-порт снимает тег перед отправкой кадра устройству. Для устройства это выглядит как обычная сеть.
Чем bridge VLAN filtering отличается от старого switch chip VLAN?
Bridge VLAN filtering работает на CPU и применяется ко всем портам. Switch chip VLAN работал только на определенных чипах Atheros и требовал hardware-offload. В RouterOS 7 bridge VLAN filtering — единственный правильный способ. Он работает на всех устройствах одинаково.
Можно ли сделать trunk к обычному неуправляемому коммутатору?
Нет. Неуправляемый коммутатор не понимает теги 802.1Q. Он пропустит tagged кадры как есть, и устройства на другом конце получат кадры с неизвестным тегом. Они их отбросят. Для trunk нужен управляемый коммутатор.
Как добавить пятый VLAN без перенастройки всего?
Создай VLAN-интерфейс. Добавь его в bridge VLAN с tagged на trunk и untagged на access-порту. Назначь IP и DHCP. Добавь firewall правила. Ничего из существующего конфига трогать не нужно. VLAN изолированы друг от друга по умолчанию.
9. Прогноз
Ты настроил vlan на mikrotik. Четыре изолированные сети живут в одном кабеле. Гости сидят в своем гетто и не лезут к бухгалтерии. Камеры шлют видео только на регистратор. Телефоны звонят без роботизации. Офис работает без сюрпризов.
Trunk-порт готов к расширению. Добавишь пятый этаж — прокинешь один кабель и включишь нужные VLAN на новом коммутаторе. Не придется переписывать адресацию.
Если не заработало — пиши в комментарии, разберемся. Прикладывай вывод /export hide-sensitive. Без этого я гадаю вслепую, а гадание на VLAN хуже гадания на кофейной гуще.
А если нужно изолировать серверы с доступом из интернета, смотри статью про DMZ. Там другой уровень паранойи, но тот же принцип — разделение и firewall