Mikrotik. Capsman. Настройка контроллера и точек доступа с использованием VLAN
Описание
При такой настройке будет несколько virtualap. ip-pool для каждой virtualap. dhcp-сервер для каждой VirtualAP.
Клиенты будут получать IP-адреса исходя из того, к какой VirtualAP они подключились.
Ссылки
https://wiki.mikrotik.com/wiki/Manual:CAPsMAN_with_VLANs
Исходные данные
192.168.111.211 - CAPSMAN сервер (контроллер)
192.168.166.45 - RADIUS сервер (для авторизации EAP)
ether2-lan - LAN физический интерфейс, подключенный в свитч
bridge-local - бридж для LAN
bridge-eap - бридж для VLAN 101
Необходимо сделать 2 wifi сети:
capsman-psk - 192.168.111.0/24 - сеть для SSID capsman-psk (LAN)
capsman-eap - 10.101.111.0/24 - сеть для SSID capsman-eap (VLAN 101)
Настройка
Вариант 1. capsman-forwarding
Интерфейсы cap добавляются в бридж на CAPSMAN
На точках доступа интерфейсы wlan1 не добавляются в бридж
На сервере (контроллере) capsman
Сервер FREERADIUS для EAP авторизации
/radius add address=192.168.166.45 secret=PassWord service=wireless src-address=192.168.111.211
BRIDGE LAN
/interface bridge add name=bridge-local
/interface ethernet set [ find default-name=ether2 ] name=ether2-lan
/interface bridge port add bridge=bridge-local interface=ether2-lan
/ip address add address=192.168.111.211/24 interface=bridge-local
BRIDGE VLAN 101
/interface bridge add name=bridge-eap
/interface bridge vlan add bridge=bridge-eap tagged=bridge-eap untagged=ether2-lan vlan-ids=101
/interface vlan add interface=bridge-eap name=VLAN101 vlan-id=101
/ip address add address=10.101.111.1/24 interface=VLAN101
CAPSMAN CONFIG
/caps-man configuration
add channel.band=2ghz-b/g/n channel.control-channel-width=20mhz channel.frequency=2412 country=russia3 datapath.bridge=bridge-local datapath.client-to-client-forwarding=yes \
datapath.local-forwarding=no mode=ap name=capsman-psk rx-chains=0,1,2,3 security.authentication-types=wpa-psk,wpa2-psk security.encryption=aes-ccm \
security.group-encryption=aes-ccm security.passphrase=PassWord ssid=capsman-psk
add channel.band=2ghz-b/g/n channel.control-channel-width=20mhz channel.frequency=2437 country=russia3 datapath.bridge=bridge-eap datapath.client-to-client-forwarding=yes \
datapath.local-forwarding=no datapath.vlan-id=101 datapath.vlan-mode=use-tag mode=ap name=capsman-eap security.authentication-types=wpa-eap,wpa2-eap \
security.encryption=aes-ccm security.group-encryption=aes-ccm ssid=capsman-eap
CAPSMAN PROVISIONING
/caps-man provisioning
add action=create-dynamic-enabled hw-supported-modes=gn master-configuration=capsman-psk name-format=prefix-identity name-prefix=CAP slave-configurations=capsman-eap
POOLS
/ip pool add name=pool-psk ranges=192.168.111.160/27
/ip pool add name=pool-eap ranges=10.101.111.160/27
DHCP
/ip dhcp-server add address-pool=pool-psk disabled=no interface=bridge-local name=dhcp-server-psk
/ip dhcp-server network add address=192.168.111.0/24 dns-server=8.8.8.8 gateway=192.168.111.1 netmask=24
/ip dhcp-server add address-pool=pool-eap disabled=no interface=VLAN101 name=dhcp-server-eap
/ip dhcp-server network add address=10.101.111.0/24 dns-server=8.8.8.8 gateway=10.101.111.1 netmask=24
CAPSMAN MANAGER ENABLE
/caps-man manager set enabled=yes
ДЛЯ ТОГО, ЧТОБЫ КЛИЕНТЫ ИЗ СЕТИ 10.101.111.0/24 МОГЛИ ХОДИТЬ В ИНТЕРНЕТ, НЕОБХОДИМО:
- ДОБАВИТЬ ПРАВИЛО МАСКРАДИНГА "/ip firewall nat add action=masquerade chain=srcnat out-interface=<OUT-IFACE> src-address=10.101.111.0/24"
ИЛИ
- АНОНСИРОВАТЬ СЕТЬ 10.101.111.0/24 ЧЕРЕЗ BGP
На точке доступа
/interface wireless cap set caps-man-addresses=192.168.111.211 enabled=yes interfaces=wlan1 bridge=none
Проверяем
Подключаемся к точкам capsman-psk, capsman-eap
Получаем адрес из соответствующей сети
Вариант 2. local-forwarding
Интерфейсы cap не добавляются в бридж на capsman
На точках доступа интерфейсы wlan1 добавляются в локальный бридж
На сервере (контроллере) capsman
Сервер FREERADIUS для EAP авторизации
/radius add address=192.168.166.45 secret=fTrerior service=wireless src-address=192.168.111.211
BRIDGE LAN
/interface bridge add name=bridge-local
/interface ethernet set [ find default-name=ether2 ] name=ether2-lan
/interface bridge port add bridge=bridge-local interface=ether2-lan
/ip address add address=192.168.111.211/24 interface=bridge-local
CAPSMAN CONFIG
/caps-man configuration
add channel.band=2ghz-b/g/n channel.control-channel-width=20mhz channel.frequency=2412 country=russia3 datapath.client-to-client-forwarding=no datapath.local-forwarding=yes \
mode=ap name=capsman-psk rx-chains=0,1,2,3 security.authentication-types=wpa-psk,wpa2-psk security.encryption=aes-ccm security.group-encryption=aes-ccm \
security.passphrase=PassWord ssid=capsman-psk
add channel.band=2ghz-b/g/n channel.control-channel-width=20mhz channel.frequency=2437 country=russia3 datapath.client-to-client-forwarding=no datapath.local-forwarding=yes \
datapath.vlan-id=101 datapath.vlan-mode=use-tag mode=ap name=capsman-eap security.authentication-types=wpa-eap,wpa2-eap security.encryption=aes-ccm \
security.group-encryption=aes-ccm ssid=capsman-eap
CAPSMAN PROVISIONING
/caps-man provisioning
add action=create-dynamic-enabled hw-supported-modes=gn master-configuration=capsman-psk name-format=prefix-identity name-prefix=CAP slave-configurations=capsman-eap
CAPSMAN MANAGER ENABLE
/caps-man manager set enabled=yes
VLAN
/interface vlan add interface=ether2-lan name=VLAN101 vlan-id=101
/ip address add address=10.101.111.1/24 interface=VLAN101
POOLS
/ip pool add name=pool-psk ranges=192.168.111.160/27
/ip pool add name=pool-eap ranges=10.101.111.160/27
DHCP
/ip dhcp-server add address-pool=pool-psk disabled=no interface=bridge-local name=dhcp-server-psk
/ip dhcp-server network add address=192.168.111.0/24 dns-server=8.8.8.8 gateway=192.168.111.1 netmask=24
/ip dhcp-server add address-pool=pool-eap disabled=no interface=VLAN101 name=dhcp-server-eap
/ip dhcp-server network add address=10.101.111.0/24 dns-server=8.8.8.8 gateway=10.101.111.1 netmask=24
SWITCH
/interface bridge set name=bridge-local vlan-filtering=yes
/interface bridge vlan add bridge=bridge-local tagged=ether2-lan vlan-ids=101
На точке доступа
/interface bridge add admin-mac=<ETHER2-LAN_MAC-ADDRESS> auto-mac=no name=bridge-local
/interface bridge port add bridge=bridge-local interface=ether2
/interface wireless cap set bridge=bridge-local caps-man-addresses=192.168.111.211 enabled=yes interfaces=wlan1
Проверяем
Подключаемся к точкам capsman-psk, capsman-eap
Получаем адрес из соответствующей сети
Шаблоны для точек доступа
Шаблоны для создания новой точки доступа Mikrotik cAP
Вариант 1. На капсмане ВКЛ "local-forwarding=no"
:global capsmanSubnet "124";
:global capIp "209";
:global userPass "PassWord";
:global ifLan "ether2";
:global routerIpLastOctet "1";
:global capsmanIpLastOctet "1";
:global orgPrefix "ekv-vlg";
/interface bridge add comment=lan name=bridge-local
/interface ethernet set [ find default-name="$ifLan" ] name="$ifLan-lan"
/interface bridge port add bridge=bridge-local interface="$ifLan-lan"
/interface wireless cap set caps-man-addresses="192.168.$capsmanSubnet.$capsmanIpLastOctet" enabled=yes interfaces=wlan1
/ip address add address="192.168.$capsmanSubnet.$capIp/24" interface=bridge-local network="192.168.$capsmanSubnet.0"
/ip route add distance=1 gateway="192.168.$capsmanSubnet.$routerIpLastOctet"
/ip dns set servers=8.8.8.8
/system clock set time-zone-name=Europe/Moscow
/system ntp client set enabled=yes primary-ntp=85.21.78.8 secondary-ntp=62.173.138.130
/system identity set name="$orgPrefix-ap-$capsmanSubnet-$capIp"
/tool romon set enabled=yes
/user set admin password="$userPass"
/snmp set enabled=yes
# ADDITIONAL USER
/user add name=service group=full password="PassWord"
Вариант 2. На капсмане ВКЛ "local-forwarding=yes"
:global capsmanSubnet "180";
:global capIp "11";
:global userPass "PassWord";
/interface bridge add comment=lan name=bridge-local
/interface ethernet set [ find default-name=ether1 ] name=ether1-lan
/interface bridge port add bridge=bridge-local interface=ether1-lan
/interface wireless cap set caps-man-addresses="192.168.$capsmanSubnet.1" enabled=yes interfaces=wlan1 bridge=bridge-local
/ip address add address="192.168.$capsmanSubnet.$capIp/24" interface=bridge-local network="192.168.$capsmanSubnet.0"
/ip route add distance=1 gateway="192.168.$capsmanSubnet.1"
/system identity set name="cap-$capsmanSubnet-$capIp"
/ip dns set servers=8.8.8.8
/system clock set time-zone-name=Europe/Moscow
/system ntp client set enabled=yes primary-ntp=85.21.78.8 secondary-ntp=62.173.138.130
/tool romon set enabled=yes
/user set admin password="$userPass"
/snmp set enabled=yes