MikroTik: настройка домашней и гостевой Wi-Fi сетей с использованием CAPsMAN без VLAN

CAPsMAN

Преамбула

Продолжаю опыты по построению своей домашней “идеальной” сети.

Сегодня настраиваем Wi-Fi на MikroTik с использованием CAPsMAN. Почему использую CAPsMAN, а не настраиваю просто точку доступа – хочется иметь готовый шаблон для развёртывания сразу нескольких AP, а не возиться с каждой по отдельности. Да и глупо не использовать такой инструмент от MikroTik, если он уже есть.

Предполагается что основной маршрутизатор уже настроен, если нет, то читаем “MikroTik: Базовая настройка и настройка подключения L2TP от Билайн + IPTV“.

Подопытные: в роли CAPsMANRB760iGS (hEX S), в роли CAPRBD52G-5HacD2HnD-TC (hAP ac²), RouterOS – 6.45.3

На основном маршрутизаторе (он же и будет выполнять роль CAPsMAN) настроены bridge-WAN, bridge-LAN (192.168.253.1/24), гостевая сеть будет 192.168.0.0/24, firewall и NAT для локальной сети.

Приступаем.

Включение и настройка CAPsMAN (основная сеть)

Включаем CAPsMAN

Включаем CAPsMAN
Включаем CAPsMAN
/caps-man manager
set enabled=yes

Добавляем и настраиваем каналы

У меня это так, у вас может быть по другому

Добавляем каналы
Добавляем каналы
/caps-man channel
add band=2ghz-onlyn control-channel-width=20mhz extension-channel=disabled frequency=2437 name=\
    channel_2.4GHz_06 tx-power=10
add band=2ghz-b/g/n control-channel-width=20mhz extension-channel=disabled frequency=2412 name=\
    channel_2.4GHz_01 tx-power=10
add band=2ghz-onlyn control-channel-width=20mhz extension-channel=disabled frequency=2462 name=\
    channel_2.4GHz_11 tx-power=10
add band=2ghz-onlyn control-channel-width=20mhz extension-channel=disabled frequency=2412,2437,2562 name=\
    channel_2.4GHz_auto reselect-interval=6h tx-power=10
add band=5ghz-onlyac control-channel-width=20mhz extension-channel=Ceee frequency=5180 name=channel_5GHz_36 \
    tx-power=15
add band=5ghz-onlyac control-channel-width=20mhz extension-channel=Ce frequency=5220 name=channel_5GHz_44 \
    tx-power=15
add band=5ghz-onlyac control-channel-width=20mhz extension-channel=Ce frequency=5180,5220 name=\
    channel_5GHz_auto reselect-interval=6h save-selected=yes tx-power=15

Здесь вроде всё стандартно и понятно. Единственно стоит оговориться о канале channel_2.4GHz_auto. В нём перечислены сразу три частоты. Сделано это для реализации автоматического выбора канала на точке доступа. Я данной возможностью не пользуюсь и привёл как пример.

Добавляем и настраиваем datapaths

Добавляем datapaths
Добавляем datapaths
/caps-man datapath
add arp=enabled bridge=bridge-LAN client-to-client-forwarding=yes local-forwarding=no name=datapath-local

Здесь происходит настройка на какой бридж будут привязываться интерфейсы wlan (CAP). На что стоит обратить внимание, так это на пункт Local Forwarding. Если он включен то маршрутизацией будет заниматься CAP, если выключен то CAPsMAN.

То есть интерфейс wlan будет привязываться или к бриджу на CAP или к бриджу на CAPsMAN. В последнем случае на CAP вообще почти ничего настраивать не нужно, даже IP адрес не нужен если CAP находится в одном сегменте с CAPsMAN, достаточно L2. И это круто, но об этом чуть ниже ))

Добавляем Security Configurations

Добавляем Security Configurations
Добавляем Security Configurations
/caps-man security
add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm group-key-update=5m name=\
    security-wlan-home passphrase=***PASSWORD***

Здесь собственно и комментировать нечего – всё стандартно. Тип шифрования, пароль.

Создаём Configurations

Создаём две конфигурации (или больше, в зависимости от потребностей) на 2.4GHz и на 5GHz. Всё как в настройках стандартной точки доступа. Во вкладках Chanel, Datapath и Security выбираем наши предопределённые шаблоны. При необходимости их можно переписать настройками в самой конфигурации, они имеют больший приоритет.

/caps-man configuration
add channel=channel_2.4GHz_06 country=russia3 datapath=datapath-home disconnect-timeout=3s distance=indoors \
    guard-interval=any hw-protection-mode=rts-cts hw-retries=7 installation=indoor mode=ap \
    multicast-helper=full name=cfg-2.4GHz rx-chains=0,1 security=security-wlan-home ssid=GRIB-2 tx-chains=\
    0,1
add channel=channel_5GHz_36 country=russia3 datapath=datapath-home disconnect-timeout=3s distance=indoors \
    frame-lifetime=0ms guard-interval=any hw-protection-mode=rts-cts hw-retries=7 installation=indoor mode=\
    ap multicast-helper=full name=cfg-5GHz rx-chains=0,1 security=security-wlan-home ssid=GRIB-5 tx-chains=\
    0,1

Provisioning – привязка CAP’s к настроенным конфигурациям

Provisioning
Provisioning

Здесь собственно и настраиваются правила по которым тот или иной CAP привязывается к конкретной конфигурации.

Radio MAC – если сюда вбить MAC конкретной точки, то к выбранной конфигурации привяжется только она.

Hw. Support Modes – в моём примере, если точка поддерживает стандарты b, g и gn то она значит работает на частоте 2.4GHz и ей присваивается конфигурация cfg-2.4GHz, если точка поддерживает стандарты a, an, ac то работает значит на частоте 5GHz и ей присваивается соответствующий конфиг.

Так же можно отсортировать точки по Identity, Common Name и диапазону IP-адресов.

Actioncreate dynamic enables. Каждой CAP создаётся интерфейс в bridge, который мы назначили в Datapaths.

Name Format и Name Prefix – правила по которым создаются имена интерфейсов, в принципе на работу никак не влияют, только на удобочитаемость.

На этом собственно настройка CAPsMAN для домашней сети закончена и пора приступить к настройке CAP. Гостевую сеть добавим чуть попозже.

Настройка CAP

Здесь всё не просто, а очень просто ))

Включаем CAP

Включаем CAP
Включаем CAP
/interface wireless cap
set discovery-interfaces=ether1 enabled=yes interfaces=wlan1,wlan2

Всё, больше никаких настроек. То есть вообще никаких. Ни bridge, ни IP-адреса. Здесь мы выбираем wlan интерфейсы которые будут управляться CAPsMAN и выбираем Discovery Interfaces, то есть в моём случае это ether1 – интерфейс по которому связаны CAP и CAPsMAN на уровне L2.

Но… Всегда есть но.

Если CAP находится в другом сегменте сети то точке нужно присвоить IP-адрес, настроить маршрутизацию и всё остальное. В общем всё по взрослому ))

В таком случае в поле CAPsMAN Addresses нужно добавить адрес контроллера, или несколько если их в сети несколько, например основной и резервные.

Если на CAP настроен bridge, то управляемые wlan необходимо из него исключить, иначе образуется петля и интерфейсы работать не будут.

Если включен Local Forwarding то нужно выбрать Bridge на который будут автоматически маппится интерфейсы. Руками добавлять в бридж порты wlan ни в коем случае не нужно, они добавятся сами.

Собственно всё, работающий CAP выглядит следующим образом:

MikroTik CAP
MikroTik CAP

Полный конфиг точки выглядит следующим образом ))

/interface wireless cap
set discovery-interfaces=ether1 enabled=yes interfaces=wlan1,wlan2

Кстати, у MikroTik CAPsMAN есть ещё фишка – если зажать кнопку Reset, включить точку и подержать так в течении 10 секунд, то точка автоматом загрузится в режиме CAP.

Настраиваем гостевую сеть на MikroTik CAPsMAN

Пришла пора настроить нашу гостевую сеть

Добавляем гостевой bridge и IP-адрес

bridge-GUEST
bridge-GUEST
/interface bridge
add arp=reply-only igmp-snooping=yes name=bridge-GUEST

Обратите внимание на ARP reply-only, нужно для того что бы особо умные гости не смогли себе присвоить статический IP, работает в связке с настройками DHCP для гостевой сети.

Присвоим IP-адрес

IP для гостевого моста
IP для гостевого моста
/ip address
add address=192.168.0.1/24 interface=bridge-GUEST network=192.168.0.0

Настройка гостевого DHCP-сервера

Выделяем пул адресов для гостевой сети

Guest pool
Guest pool
/ip pool
name=dhcp_pool-guest ranges=192.168.0.11-192.168.0.199

Добавляем гостевой DHCP Server

Guest DHCP Server Config
Guest DHCP Server Config
/ip dhcp-server
add add-arp=yes address-pool=dhcp_pool-guest disabled=no interface=bridge-GUEST name=dhcp-GUEST
/ip dhcp-server network
add address=192.168.0.0/24 dns-server=1.1.1.1,8.8.8.8 gateway=192.168.0.1

Запрещаем маршрутизацию между гостевой и домашней сетью

В принципе так как сети находятся на разных bridge, достучаться они и так друг до друга не могут, но мы ещё и принудительно им это запретим на всякий случай ))

MikroTik route rule unreachable
route rule unreachable
/ip route rule
add action=unreachable dst-address=192.168.0.0/24 src-address=192.168.253.0/24
add action=unreachable dst-address=192.168.253.0/24 src-address=192.168.0.0/24

Добавляем правила NAT для гостевой сети

/ip firewall address-list
add address=192.168.0.0/24 comment="Guest NET" list=GuestNet
/ip firewall nat
add action=masquerade chain=srcnat out-interface-list=\
    list-WAN src-address-list=GuestNet

Настройка MikroTik CAPsMAN для гостевой сети

Дальше пойдёт без картинок, т.к. картинки такие уже были, только надписи другие )

Добавляем Security Cfg. для гостевой сети

/caps-man security
add authentication-types=wpa2-psk disable-pmkid=yes encryption=aes-ccm group-encryption=aes-ccm \
    group-key-update=5m name=security-wlan-guest passphrase=*****GUEST PASSWORD*****

Datapath для гостевой сети, здесь в отличии от домашней сети запрещён форвардинг между клиентами

/caps-man datapath
add arp=enabled bridge=bridge-GUEST client-to-client-forwarding=no local-forwarding=no name=datapath-guest

Добавляем конфигурацию для гостевой сети. В отличии от домашней не указаны chanels, т.к. интерфейс будет виртуальным на одном радио с основным, то указывать какой либо канал отличный от канала мастера бессмысленно

/caps-man configuration
add country=russia3 datapath=datapath-guest disconnect-timeout=3s distance=indoors guard-interval=any 
    hw-protection-mode=rts-cts hw-retries=7 installation=indoor mode=ap multicast-helper=full name=\
    cfg-2.4GHz-guest rx-chains=0,1 security=security-wlan-guest ssid=GRIB-G tx-chains=0,1

Для гостевой сети я решил выделить диапазон 2.4GHz, поэтому Provisioning покажу полностью, даже с картинкой )

Guest Provisioning
Guest Provisioning

Здесь присутствует Slave Configuration – это и есть наша гостевая точка доступа

/caps-man provisioning
add action=create-dynamic-enabled hw-supported-modes=b,g,gn master-configuration=cfg-2.4GHz \
slave-configurations=cfg-2.4GHz-guest

Всё )) Точнее ещё не всё, но уже всё работает )) Вот как выглядит настроенный CAPsMAN

CAPsMAN all interfaces
CAPsMAN all interfaces

Ограничение скорости гостевой сети

Что бы гости своими торрентами не просадили весь канал и не оставили нас без любимых сериалов, немного подпортим им жизнь и поставим ограничение скорости. Здесь не будет никакой проприатизации трафика и тому подобных заумностей, просто сделаем им что бы сайты открывались и хватит ))

Настройка Simple Queues

MikroTik Simple Queues
MikroTik Simple Queues
/queue simple
add max-limit=10M/10M name=guest-wifi-limit target=bridge-GUEST

Настройка MikroTik CAPsMAN с сертификатами

Добавим в нашу сеть немного параноидальности и разрешим работу CAP только с выпущенными нами сертификатами.

Зайдём в CAPsMAN Manager и установим Certificate, CA Certificate в auto и включим Require Peer Certificate

MikroTik CAPsMAN Certificate auto
MikroTik CAPsMAN Certificate auto
/caps-man manager set ca-certificate=auto certificate=auto require-peer-certificate=yes

Ууупс, все наши CAP’s отвалились, на них ведь не установлены сертификаты.

Отключаем на CAPsMAN require-peer-certificate и на точке включаем certificate requiest. После того как все наши точки получат сертификат, на CAPsMAN снова включим Require Peer Certificate.

MikroTik CAP Certificate request
MikroTik CAP Certificate request

Это защитит нашу сеть от несанкционированных точек доступа.

The End

На этом всё, надеюсь данный мой опыт кому нибудь оказался полезен.

Если это так, то не поленитесь сделать репост или поставить лайк, если остались вопросы не стесняйтесь задавать из в комментариях – будем разбираться вместе.

Есть замечания или нашли ошибку тоже не поленитесь написать в комментариях, все мы люди и все чему нибудь учимся.

Добавить комментарий