Как да разделим мрежата за гости от личната си мрежа (MikroTik VLAN)

Наскоро ми се наложи да настроя отделна гост мрежа у дома. Приятели често ми искат WiFi парола, но не исках да им давам достъп до личните си устройства. Решението? VLAN сегментация с MikroTik.
В тази статия ще ви покажа как да създадете напълно изолирана гост мрежа. Процесът изглежда сложен, но всъщност е доста прост.
Защо да разделяме мрежите?
Представете си следната ситуация. Гост се свързва към вашия WiFi и случайно има зловреден софтуер на телефона си. Без разделение този софтуер може да "види" всички ваши устройства.
Предимствата на разделението:
- Гостите нямат достъп до вашите файлове и принтери
- Вашите smart устройства остават защитени
- Можете да ограничите скоростта за гости
- По-лесно управление на сигурността
Какво ви трябва?
Нека първо проверим необходимите неща:
- MikroTik рутер с поддръжка на VLAN (почти всички модели)
- Достъп до администраторския панел (Winbox или WebFig)
- Базови познания за мрежи (ще обясня всичко стъпка по стъпка)
- 30-40 минути свободно време
Основни концепции
Преди да започнем, нека разберем какво е VLAN.
VLAN (Virtual Local Area Network) е виртуална мрежа в рамките на физическата ви мрежа. Представете си я като отделна стая в апартамент – всички сте в една сграда, но всеки има своя врата със заключване.
Bridge е виртуален суич, който свързва различни портове заедно. В MikroTik всичко минава през bridge интерфейса.
VLAN ID е просто номер, който маркира към коя виртуална мрежа принадлежи трафикът. Например VLAN 10 за лична мрежа, VLAN 20 за гост мрежа.
Стъпка 1: Подготовка и планиране
Първо, да планираме мрежовата структура.
Моята препоръчителна схема:
- VLAN 10: Лична мрежа (192.168.10.0/24)
- VLAN 20: Гост мрежа (192.168.20.0/24)
- Management VLAN: Основният bridge (192.168.88.0/24)
Запишете си тези параметри на хартия. Ще ви трябват в следващите стъпки.
Стъпка 2: Влизане в MikroTik
Отворете Winbox и се свържете с рутера си. Ако ползвате WebFig, отидете на IP адреса на рутера в браузър (обикновено 192.168.88.1).
Въведете потребителско име (обикновено "admin") и вашата парола.
Забележка: В тази статия ще покажа двата подхода – чрез графичния интерфейс (Winbox/WebFig) и чрез команден ред (Terminal/SSH). Командният ред е по-бърз за опитни потребители и улеснява автоматизацията.
Стъпка 3: Активиране на VLAN филтрирането
Това е критична стъпка за сигурността.
Чрез графичен интерфейс:
Отидете на Bridge → Bridge и изберете вашия основен bridge (обикновено "bridge").
Поставете отметка на VLAN Filtering. Внимание! Не активирайте това още – първо трябва да настроим VLAN интерфейсите.
Чрез команден ред:
Отворете Terminal в Winbox или се свържете чрез SSH.
# Засега само проверяваме bridge-а, без да активираме филтрирането
/interface bridge print
Ще активираме VLAN Filtering в Стъпка 10, след като настроим всичко останало.
Стъпка 4: Създаване на VLAN интерфейси
Време е да създадем виртуалните мрежи.
Чрез графичен интерфейс:
Отидете на Interface → VLAN и кликнете + (Add New).
За личната мрежа:
- Name: vlan10-home
- VLAN ID: 10
- Interface: bridge
Кликнете OK.
За гост мрежата:
- Name: vlan20-guest
- VLAN ID: 20
- Interface: bridge
Кликнете OK.
Чрез команден ред:
# Създаване на VLAN интерфейс за лична мрежа
/interface vlan add name=vlan10-home vlan-id=10 interface=bridge
# Създаване на VLAN интерфейс за гост мрежа
/interface vlan add name=vlan20-guest vlan-id=20 interface=bridge
# Проверка на създадените интерфейси
/interface vlan print
Сега имате два VLAN интерфейса, но те все още не работят.
Стъпка 5: Конфигуриране на Bridge VLAN
Тук определяме кои портове принадлежат към кои VLAN.
Чрез графичен интерфейс:
Отидете на Bridge → VLANs и кликнете +.
За VLAN 10 (лична мрежа):
- Bridge: bridge
- VLAN IDs: 10
- Tagged: bridge, ether1 (WAN портът ви)
- Untagged: (оставете празно засега)
За VLAN 20 (гост мрежа):
- Bridge: bridge
- VLAN IDs: 20
- Tagged: bridge, ether1
- Untagged: (оставете празно засега)
Важно: Ако имате конкретни портове за гости, добавете ги в "Untagged" за VLAN 20.
Чрез команден ред:
# Добавяне на VLAN 10 към bridge
/interface bridge vlan add bridge=bridge vlan-ids=10 tagged=bridge,ether1
# Добавяне на VLAN 20 към bridge
/interface bridge vlan add bridge=bridge vlan-ids=20 tagged=bridge,ether1
# Ако имате специфични портове за гости (например ether3 и ether4)
# /interface bridge vlan set [find vlan-ids=20] untagged=ether3,ether4
# Проверка на конфигурацията
/interface bridge vlan print
Стъпка 6: IP адресация
Сега трябва да зададем IP адреси на VLAN интерфейсите.
Чрез графичен интерфейс:
Отидете на IP → Addresses и кликнете +.
За VLAN 10:
- Address: 192.168.10.1/24
- Interface: vlan10-home
За VLAN 20:
- Address: 192.168.20.1/24
- Interface: vlan20-guest
Рутерът вече има IP адреси във всяка виртуална мрежа.
Чрез команден ред:
# Добавяне на IP адрес за личната мрежа
/ip address add address=192.168.10.1/24 interface=vlan10-home
# Добавяне на IP адрес за гост мрежата
/ip address add address=192.168.20.1/24 interface=vlan20-guest
# Проверка на IP адресите
/ip address print
Стъпка 7: DHCP сървър за гост мрежата
Гостите трябва да получават IP адреси автоматично.
Чрез графичен интерфейс:
Отидете на IP → DHCP Server и кликнете DHCP Setup.
Изберете vlan20-guest като DHCP Server Interface. Следвайте wizard-а:
- DHCP Address Space: 192.168.20.0/24
- Gateway: 192.168.20.1
- Addresses to Give Out: 192.168.20.100-192.168.20.200
- DNS Servers: 8.8.8.8, 8.8.4.4
За личната мрежа (VLAN 10) направете същото, но с параметрите за 192.168.10.0/24.
Чрез команден ред:
# Създаване на IP pool за гост мрежата
/ip pool add name=dhcp_pool_guest ranges=192.168.20.100-192.168.20.200
# Създаване на DHCP сървър за гост мрежата
/ip dhcp-server add name=dhcp-guest interface=vlan20-guest address-pool=dhcp_pool_guest disabled=no
# Конфигуриране на DHCP network
/ip dhcp-server network add address=192.168.20.0/24 gateway=192.168.20.1 dns-server=8.8.8.8,8.8.4.4
# Същото за личната мрежа (VLAN 10)
/ip pool add name=dhcp_pool_home ranges=192.168.10.100-192.168.10.200
/ip dhcp-server add name=dhcp-home interface=vlan10-home address-pool=dhcp_pool_home disabled=no
/ip dhcp-server network add address=192.168.10.0/24 gateway=192.168.10.1 dns-server=8.8.8.8,8.8.4.4
# Проверка
/ip dhcp-server print
Стъпка 8: Firewall правила
Сега идва най-важната част – изолацията на мрежите.
Чрез графичен интерфейс:
Отидете на IP → Firewall → Filter Rules.
Правило 1: Блокиране на достъп от гост към лична мрежа
Кликнете + и добавете:
- Chain: forward
- Src. Address: 192.168.20.0/24
- Dst. Address: 192.168.10.0/24
- Action: drop
Правило 2: Блокиране на достъп към рутера
Кликнете +:
- Chain: input
- Src. Address: 192.168.20.0/24
- Dst. Address: 192.168.20.1
- Protocol: tcp
- Dst. Port: 21,22,23,80,443,8291 (Winbox, SSH, Telnet, HTTP)
- Action: drop
Правило 3: Позволяване на DNS и DHCP
Кликнете +:
- Chain: input
- Src. Address: 192.168.20.0/24
- Protocol: udp
- Dst. Port: 53,67
- Action: accept
Преместете това правило ПРЕДИ блокиращите правила в списъка.
Правило 4: Позволяване на интернет за гости
Ако имате NAT настроено правилно, гостите вече ще имат интернет. Ако не, отидете на IP → Firewall → NAT:
- Chain: srcnat
- Src. Address: 192.168.20.0/24
- Out. Interface: ether1 (WAN)
- Action: masquerade
Чрез команден ред:
# Правило 1: Позволяване на DNS и DHCP (трябва да е първо!)
/ip firewall filter add chain=input src-address=192.168.20.0/24 protocol=udp dst-port=53,67 action=accept comment="Allow DNS and DHCP for guests"
# Правило 2: Блокиране на достъп към рутера
/ip firewall filter add chain=input src-address=192.168.20.0/24 protocol=tcp dst-port=21,22,23,80,443,8291 action=drop comment="Block guest access to router"
# Правило 3: Блокиране на достъп от гост към лична мрежа
/ip firewall filter add chain=forward src-address=192.168.20.0/24 dst-address=192.168.10.0/24 action=drop comment="Block guest to home network"
# NAT правило за интернет достъп
/ip firewall nat add chain=srcnat src-address=192.168.20.0/24 out-interface=ether1 action=masquerade comment="NAT for guest network"
# Проверка на правилата
/ip firewall filter print
/ip firewall nat print
Важно: Редът на firewall правилата е критичен. Accept правилата винаги трябва да са преди drop правилата.
Стъпка 9: WiFi конфигурация
Ако ползвате MikroTik за WiFi (или имате отделен Access Point):
Чрез графичен интерфейс:
Отидете на Wireless → Security Profiles и създайте нов профил за гост мрежата:
- Name: guest-profile
- Mode: dynamic keys
- Authentication Types: WPA2 PSK
- WPA2 Pre-Shared Key: [сложна парола]
Отидете на Wireless → Interfaces и създайте виртуален интерфейс:
- Name: wlan-guest
- Mode: ap bridge
- SSID: Guest-WiFi
- Security Profile: guest-profile
В Advanced Mode, задайте:
- VLAN Mode: use tag
- VLAN ID: 20
Така WiFi трафикът автоматично влиза в VLAN 20.
Чрез команден ред:
# Създаване на security profile за гости
/interface wireless security-profiles add name=guest-profile mode=dynamic-keys authentication-types=wpa2-psk wpa2-pre-shared-key="ВАШАТА_ПАРОЛА_ТУК"
# Създаване на виртуален WiFi интерфейс за гости
/interface wireless add name=wlan-guest master-interface=wlan1 ssid="Guest-WiFi" security-profile=guest-profile mode=ap-bridge disabled=no
# Настройка на VLAN tagging
/interface wireless set wlan-guest vlan-mode=use-tag vlan-id=20
# Проверка
/interface wireless print detail
Забележка: Заменете wlan1 с реалното име на вашия WiFi интерфейс и ВАШАТА_ПАРОЛА_ТУК с истинската WiFi парола.
Стъпка 10: Активиране на VLAN Filtering
Време е за финалната стъпка.
Чрез графичен интерфейс:
Отидете на Bridge → Bridge и активирайте VLAN Filtering.
Чрез команден ред:
# Активиране на VLAN filtering
/interface bridge set bridge vlan-filtering=yes
# Проверка на статуса
/interface bridge print
Внимание! Ако сте се свързали през мрежата, която променяте, може да загубите връзка. Уверете се, че имате физически достъп до рутера.
Стъпка 11: Тестване
Свържете се към гост WiFi мрежата с телефон или лаптоп.
Проверете:
- Получавате ли IP адрес от диапазона 192.168.20.x?
- Имате ли достъп до интернет?
- Можете ли да ping-нете устройства в личната мрежа? (не трябва да можете)
- Можете ли да влезете в рутера през браузър? (не трябва да можете)
Ако всичко работи според очакванията, конфигурацията е готова!
Допълнителни настройки
Ограничаване на скоростта за гости
Чрез графичен интерфейс:
Отидете на Queues → Simple Queues и кликнете +:
- Name: guest-bandwidth
- Target: 192.168.20.0/24
- Max Limit: 10M/10M (Download/Upload)
Чрез команден ред:
# Ограничаване на скоростта за гост мрежата
/queue simple add name=guest-bandwidth target=192.168.20.0/24 max-limit=10M/10M
# Проверка
/queue simple print
Планиране на WiFi за гости
Можете да изключвате гост мрежата в определени часове.
Чрез графичен интерфейс:
Отидете на System → Scheduler и създайте скрипт за изключване вечер:
/interface wireless disable wlan-guest
И скрипт за включване сутрин:
/interface wireless enable wlan-guest
Чрез команден ред:
# Изключване на гост WiFi в 23:00 всеки ден
/system scheduler add name=guest-wifi-off start-time=23:00:00 interval=1d on-event="/interface wireless disable wlan-guest"
# Включване на гост WiFi в 07:00 всеки ден
/system scheduler add name=guest-wifi-on start-time=07:00:00 interval=1d on-event="/interface wireless enable wlan-guest"
# Проверка на scheduler-ите
/system scheduler print
Logging и мониторинг
Активирайте логове за да следите активността.
Чрез графичен интерфейс:
Отидете на System → Logging и добавете правила за firewall събития.
Чрез команден ред:
# Активиране на firewall logging
/system logging add topics=firewall action=memory
# Преглед на логовете
/log print where topics~"firewall"
Чести грешки и как да ги избегнем
Грешка 1: Активиране на VLAN Filtering преди настройване
Това е най-честата грешка. Винаги конфигурирайте VLAN интерфейсите ПРЕДИ да активирате филтрирането.
Грешка 2: Забравяне на Management VLAN
Ако не зададете правилно management достъп, може да загубите връзка с рутера. Винаги оставяйте един порт или VLAN за администрация.
Грешка 3: Неправилен ред на firewall правилата
Firewall правилата се обработват отгоре-надолу. Permit правилата трябва да са преди deny правилата.
Грешка 4: Забравяне на DNS и DHCP
Гостите трябва да имат достъп до DNS и DHCP услугите на рутера. Не ги блокирайте напълно от input chain.
Troubleshooting
Гостите нямат интернет
Проверете NAT правилата в IP → Firewall → NAT. Уверете се, че има masquerade правило за гост подмрежата.
Не мога да вляза в рутера след промени
Ако сте загубили достъп, рестартирайте рутера. Задръжте бутона Reset 5 секунди за да влезете в safe mode.
WiFi не се появява
Проверете дали wireless интерфейсът е активен. Отидете на Wireless → Interfaces и се уверете, че статусът е "running".
Устройствата не получават IP адреси
Проверете DHCP сървъра в IP → DHCP Server. Уверете се, че е активен и има налични адреси за раздаване.
Заключение
Разделянето на гост от лична мрежа е важна стъпка за сигурността у дома. С MikroTik VLAN конфигурацията изглежда сложна, но след като я направите веднъж, ще цените резултата.
Сега вашите гости имат интернет, но не могат да достъпват личните ви устройства. Вие имате пълен контрол и спокойствие.
Не забравяйте да правите backup на конфигурацията след всяка промяна. Отидете на Files и кликнете Backup в горното меню.
Чрез команден ред:
# Създаване на backup
/system backup save name=vlan-config
# Export на конфигурацията в текстов формат
/export file=vlan-config
# Изтегляне на файловете през FTP или Winbox Files
Ако имате въпроси или проблеми, проверете MikroTik форумите или официалната документация. Общността е изключително отзивчива и винаги готова да помогне.
Бонус: Пълен скрипт за автоматизация
За по-опитни потребители, ето пълен скрипт, който прави целия setup с една команда:
# Променете тези параметри според вашата конфигурация
:local bridgeName "bridge"
:local wanInterface "ether1"
:local homeVlanID 10
:local guestVlanID 20
:local homeNetwork "192.168.10.0/24"
:local guestNetwork "192.168.20.0/24"
:local homeGateway "192.168.10.1"
:local guestGateway "192.168.20.1"
# Създаване на VLAN интерфейси
/interface vlan add name=vlan10-home vlan-id=$homeVlanID interface=$bridgeName
/interface vlan add name=vlan20-guest vlan-id=$guestVlanID interface=$bridgeName
# Bridge VLAN конфигурация
/interface bridge vlan add bridge=$bridgeName vlan-ids=$homeVlanID tagged=$bridgeName,$wanInterface
/interface bridge vlan add bridge=$bridgeName vlan-ids=$guestVlanID tagged=$bridgeName,$wanInterface
# IP адресация
/ip address add address=$homeGateway/24 interface=vlan10-home
/ip address add address=$guestGateway/24 interface=vlan20-guest
# DHCP pools
/ip pool add name=dhcp_pool_home ranges=192.168.10.100-192.168.10.200
/ip pool add name=dhcp_pool_guest ranges=192.168.20.100-192.168.20.200
# DHCP servers
/ip dhcp-server add name=dhcp-home interface=vlan10-home address-pool=dhcp_pool_home disabled=no
/ip dhcp-server add name=dhcp-guest interface=vlan20-guest address-pool=dhcp_pool_guest disabled=no
# DHCP networks
/ip dhcp-server network add address=$homeNetwork gateway=$homeGateway dns-server=8.8.8.8,8.8.4.4
/ip dhcp-server network add address=$guestNetwork gateway=$guestGateway dns-server=8.8.8.8,8.8.4.4
# Firewall правила
/ip firewall filter add chain=input src-address=$guestNetwork protocol=udp dst-port=53,67 action=accept comment="Allow DNS and DHCP for guests" place-before=0
/ip firewall filter add chain=input src-address=$guestNetwork protocol=tcp dst-port=21,22,23,80,443,8291 action=drop comment="Block guest access to router"
/ip firewall filter add chain=forward src-address=$guestNetwork dst-address=$homeNetwork action=drop comment="Block guest to home network"
# NAT
/ip firewall nat add chain=srcnat src-address=$guestNetwork out-interface=$wanInterface action=masquerade comment="NAT for guest network"
# Активиране на VLAN filtering (внимание: може да прекъсне връзката!)
/interface bridge set $bridgeName vlan-filtering=yes
:put "VLAN configuration completed!"
Внимание: Скриптът автоматично активира VLAN filtering в края. Уверете се, че имате физически достъп до рутера!
Успех с конфигурацията!
Намерихте материала за полезен?
Съдържанието на itpraktika.com е безплатно и ще остане такова.
Ако статията ти е помогнала — можеш да подкрепиш сайта с малка доброволна сума.
Всяко дарение помага за поддръжката и развитието на портала.
