WLC controller configuration
WLC functionality can be activated on the ESR-15 and ESR-3200 service routers by following the instructions.
Configuration algorithm
Step | Description | Command | Keys | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Configure local RADIUS server and enter its configuration mode. | wlc(config)# radius-server local wlc(config-radius)# | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | Enable local RADIUS server. | wlc(config-radius)# enable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | Add NAS and enter its configuration mode. | wlc(config-radius)# nas <NAME> wlc(config-radius-nas)# | <NAME> – название NAS, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | Specify the authentication key. | wlc(config-radius-nas)# key ascii-text { <KEY> | encrypted <ENCRYPTED-KEY> } | <KEY> – строка из [4..64] ASCII-символов; <ENCRYPTED-KEY> – зашифрованный ключ, задаётся строкой [8..128] символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | Specify the network. | wlc(config-radius-nas)# network <ADDR/LEN> | <ADDR/LEN> – IP-адрес и маска подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6 | Create a domain. | wlc(config-radius)# domain <NAME> | <NAME> – идентификатор домена, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
7 | Configure virtual RADIUS server and enter its configuration mode. | wlc(config-radius)# virtual-server <NAME> wlc(config-radius-vserver)# | <NAME> – название виртуального RADIUS-сервера, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 | Enable virtual RADIUS server. | wlc(config-radius-vserver)# enable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
9 | Add RADIUS server to the list of used servers and enter server configuration mode. | wlc(config)# radius-server host wlc(config-radius-server)# | <IP-ADDR> – IP-адрес RADIUS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-ADDR> – IPv6-адрес RADIUS-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]; <VRF> – имя экземпляра VRF, задается строкой до 31 символа. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 | Specify the authentication key. | wlc(config-radius-server)# key ascii-text { <KEY> | encrypted <ENCRYPTED-KEY> } | <KEY> – строка из [4..64] ASCII-символов; <ENCRYPTED-KEY> – зашифрованный ключ, задаётся строкой [8..128] символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
11 | Create AAA profile and and enter its configuration mode. | wlc(config)# aaa radius-profile <NAME> wlc(config-aaa-radius-profile)# | <NAME> – имя профиля сервера, задается строкой до 31 символа. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | Specify RADIUS server in AAA profile. | wlc(config-aaa-radius-profile)# radius-server host | <IP-ADDR> – IP-адрес RADIUS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-ADDR> – IPv6-адрес RADIUS-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
13 | Switch to SoftGRE controller configuration settings. | wlc(config)# softgre-controller wlc(config-softgre-controller)# | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
14 | Specify router IP address to be used as a source IP address in sent RADIUS packets. | wlc(config-softgre-controller)# nas-ip-address <ADDR> | <ADDR> – IP-адрес источника, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 | Set SoftGRE DATA tunnels configuration mode. | wlc(config-softgre-controller)# data-tunnel configuration { local | radius | wlc} | local – режим конфигурации, при котором параметры SoftGRE DATA туннелей получаются из локальной конфигурации маршрутизатора; radius – режим, при котором параметры SoftGRE DATA туннелей запрашиваются у RADIUS-сервера; wlc – режим, при котором параметры SoftGRE DATA туннелей запрашиваются у WLC. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
16 | Specify ААА profile. | wlc(config-softgre-controller)# aaa radius-profile <NAME> | <NAME> – имя профиля сервера, задается строкой до 31 символа. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
17 | Disable the exchange of ICMP messages that are used to check the availability of remote Wi-Fi tunnel gateway controller. | wlc(config-softgre-controller)# keepalive-disable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
18 | Allow traffic in user vlan. | wlc(config-softgre-controller)# service-vlan add {<VLAN-ID> | <LIST_ID> | <RANGE_ID> } | <VLAN-ID> – номер vlan, в котором проходит пользовательский трафик, принимает значения [2..4094]; <LIST_ID> – список vlan, указываемый через запятую (1,2,3), принимает значения [2..4094]; <RANGE_ID> – диапазон vlan, указывается через тире (1-3), принимает значения [2..4094]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
19 | Enable Wi-Fi controller. | wlc(config-softgre-controller)# enable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
20 | Switch to SoftGRE tunnel settings. | wlc(config)# tunnel softgre <TUN> | <TUN> – имя туннеля устройства, задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
21 | Set SoftGRE tunnel operating mode. | wlc(config-softgre)# mode <MODE> | <MODE> – режим работы туннеля, возможные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
22 | Set the local tunnel gateway IP address. | wlc(config-softgre)# local address <ADDR> | <ADDR> – IP-адрес локального шлюза, задаётся в виде: AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | Enable the SoftGRE tunnel configuration use for automatic tunneks creations with the same mode and local address. | wlc(config-softgre)# default-profile | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | Enable tunnel. | wlc(config-softgre)# enable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
25 | Перейти в раздел конфигурирования контроллера. | wlc(config)# wlc | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
26 | Создать профиль конфигурирования общих настроек точки доступа. | wlc(config-wlc)# ap-profile <NAME> wlc(config-wlc-ap-profile)# | <NAME> – название профиля, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
27 | Задать пароль для подключения к точкам доступа. | wlc(config-wlc-ap-profile)# password ascii-text { <CLEAR-TEXT> | encrypted <HASH_SHA512> } wlc(config-wlc-ap-profile)# exit | <CLEAR-TEXT> – пароль, задаётся строкой [8-64] символов. <HASH_SHA512> – хеш пароля по алгоритму sha512, задаётся строкой [16-128] символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
28 | Создать профиль конфигурирования радиоинтерфейса, работающего в частотном диапазоне 2,4 ГГц. | wlc(config-wlc)# radio-2g-profile <NAME> | <NAME> – название профиля, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29 | Настроить работу режима автоматического уменьшения ширины канала при загруженном радиоэфире | wlc(config-wlc-radio-2g-profile)# obss-coexistence {on | off}
| on – режим автоматического уменьшения ширины канала активирован; off – режим автоматического уменьшения ширины канала выключен. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | Установить режим работы радиоинтерфейса. | wlc(config-wlc-radio-2g-profile)# work-mode <WORK-MODE> | <WORK-MODE> – режим работы, доступные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | Задать список каналов для динамического выбора канала. | wlc(config-wlc-radio-2g-profile)# limit-channels <CHANNEL>[,<CHANNEL>] | <CHANNEL> – номер используемого канала, доступные значения: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
32 | Настроить ширину канала. | wlc(config-wlc-radio-2g-profile)# bandwidth <BANDWIDTH> | <BANDWIDTH> – ширина канала, доступные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
33 | Настроить уровень мощности для радиоинтерфейса. | wlc(config-wlc-radio-2g-profile)# tx-power {minimal | low | middle | high | maximal} | Возможные значения параметра в зависимости от модели точки доступа устанавливают следующие значения мощности в дБм:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
34 | Создать профиль конфигурирования радиоинтерфейса, работающего в частотном диапазоне 5 ГГц. | wlc(config-wlc)# radio-5g-profile <NAME> | <NAME> – название профиля, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
35 | Настроить работу режима автоматического уменьшения ширины канала при загруженном радиоэфире | wlc(config-wlc-radio-5g-profile)# obss-coexistence {on | off}
| on – режим автоматического уменьшения ширины канала активирован; off – режим автоматического уменьшения ширины канала выключен. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
36 | Установить режим работы радиоинтерфейса. | wlc(config-wlc-radio-5g-profile)# work-mode <WORK-MODE> | <WORK-MODE> – режим работы, доступные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
37 | Задать список каналов для динамического выбора канала. | wlc(config-wlc-radio-5g-profile)# limit-channels <CHANNEL>[,<CHANNEL>] | <CHANNEL> – номер используемого канала, доступные значения: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
38 | Настроить ширину канала. | wlc(config-wlc-radio-5g-profile)# bandwidth <BANDWIDTH> | <BANDWIDTH> – ширина канала, доступные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
39 | Настроить уровень мощности для радиоинтерфейса. | wlc(config-wlc-radio-5g-profile)# tx-power {minimal | low | middle | high | maximal} | Возможные значения параметра в зависимости от модели точки доступа устанавливают следующие значения мощности в дБм:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
40 | Настроить режим динамического выбора частоты. | wlc(config-wlc-radio-5g-profile)# dfs {auto | disabled | forced} | auto — механизм включен; disabled— механизм выключен. DFS-каналы не доступны для выбора; forced — механизм выключен. DFS-каналы доступны для выбора; | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
41 | Создать профиль конфигурирования RADIUS-сервера. | wlc(config-wlc)# radius-profile <RADIUS-ID> wlc(config-wlc-radius-profile)# | <RADIUS-ID> – идентификатор RADIUS-сервера, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
42 | Указать IP-адрес RADIUS-сервера, который отвечает за аутентификацию. | wlc(config-wlc-radius-profile)# auth-address <ADDR> | <ADDR> – IP-адрес RADIUS-сервера, задаётся в виде: AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
43 | Указать пароль RADIUS-сервера, который отвечает за аутентификацию. | wlc(config-wlc-radius-profile)# auth-password ascii-text { <CLEAR-TEXT> | encrypted <HASH_SHA512> } | <CLEAR-TEXT> – пароль, задаётся строкой [8-64] символа. <HASH_SHA512> – хеш пароля по алгоритму sha512, задаётся строкой [16-128] символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
44 | Указать домен. | wlc(config-wlc-radius-profile)# domain <NAME> | <NAME> – идентификатор домена, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
45 | Создать профиль конфигурирования SSID. | wlc(config-wlc)# ssid-profile <NAME> wlc(config-wlc-ssid-profile)# | <NAME> – название профиля SSID, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
46 | Задать описание профиля. | wlc(config-wlc-ssid-profile)# description <DESCRIPTION> | <DESCRIPTION> – произвольное описание, задается строкой до 255 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
47 | Настроить частотный диапазон, в котором будет происходить вещание SSID. | wlc(config-wlc-ssid-profile)# band <BAND> | <BAND> – диапазон частот, доступные значения:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
48 | Указать пользовательский vlan. | wlc(config-wlc-ssid-profile)# vlan-id <ID> | <ID> – идентификатор vlan, принимает значения в диапазоне [0-4094]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
49 | Установить режим безопасности подключения к SSID. | wlc(config-wlc-ssid-profile)# security-mode <MODE> | <MODE> – режим безопасности, доступные значения:
Режим безопасности WPA3 поддерживается только на точках доступа моделей WEP-3ax, WEP-30L, WOP-30L, WOP-30LS. При выборе смешанного режима безопасности (например, WPA2_WPA3) WPA3 будет применен только для тех точек доступа, которые его поддерживают, для остальных будет применен второй режим (WPA2). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
50 | Указать профиль RADIUS-сервера. | wlc(config-wlc-ssid-profile)# radius-profile <RADIUS-ID> | <RADIUS-ID> – идентификатор RADIUS-сервера, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
51 | Задать название SSID, который будет вещаться пользователям. | wlc(config-wlc-ssid-profile)# ssid <NAME> | <NAME> – название SSID, задается строкой до 32 символов. Названия, содержащие пробел, необходимо заключать в кавычки. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
52 | Активировать работу SSID. | wlc(config-wlc-ssid-profile)# enable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
53 | Создать профиль локации. | wlc(config-wlc)# ap-location <NAME> wlc(config-wlc-ap-location)# | <NAME> – название профиля локального конфигурирования, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
54 | Задать описание профиля. | wlc(config-wlc-ap-location)# description <DESCRIPTION> | <DESCRIPTION> – произвольное описание, задается строкой до 255 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
55 | Указать для точек доступа существующие профили настроек радиоинтерфейсов. | wlc(config-wlc-ap-location)# radio-5g-profile <NAME> wlc(config-wlc-ap-location)# radio-2g-profile <NAME> | <NAME> – название профиля, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
56 | Указать для точек доступа существующий профиль общих настроек. | wlc(config-wlc-ap-location)# ap-profile <PROFILE-ID> | <PROFILE-ID> – идентификатор профиля, задается строкой до 235 символов и должен совпадать с названием описанного профиля из ap-profile. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
57 | Указать профиль SSID, который будет назначен точкам доступа. | wlc(config-wlc-ap-location)# ssid-profile <NAME> | <NAME> – название профиля SSID, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
58 | Создать адресное пространство для доступа к контроллеру. | wlc(config-wlc)# ip-pool <NAME> wlc(config-wlc-ip-pool)# | <NAME> – название адресного пространства, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
59 | Указать подсеть точек доступа. | wlc(config-wlc-ip-pool)# network <ADDR/LEN> | <ADDR/LEN> – IP-адрес и маска подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
60 | Указать название профиля локации, который применяется к заданному адресному пространству. | wlc(config-wlc-ip-pool)# ap-location <NAME> | <NAME> – название локации, задается строкой до 235 символов. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
61 | Перейти в настройки сервис-активатора. | wlc(config-wlc)# service-activator wlc(config-wlc-service-activator)# | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
62 | Настроить автоматическую регистрацию точек доступа на контроллере. | wlc(config-wlc-service-activator)# aps join auto | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63 | Указать IP-адрес контроллера, который виден точкам доступа. | wlc(config-wlc)# outside-address <ADDR> | <ADDR> – IP-адрес контроллера, задаётся в виде: AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
64 | Активировать работу контроллера. | wlc(config-wlc)# enable |
Пример настройки
Задача
Организовать управление беспроводными точками доступа с помощью контроллера WLC. В частности, необходимо настроить подключение точек доступа, обновить и сконфигурировать их для предоставления доступа до ресурсов Интернет авторизованным пользователям Wi-Fi.
Пример настройки приведен на основе заводской конфигурации для схемы с построением SoftGRE-туннелей.
Решение
Архитектура решения предполагает автоматическое подключение точек доступа к контроллеру WLC. При подключении к сети точка доступа запрашивает адрес по DHCP и вместе с ним должна получить URL сервиса инициализации точек доступа в 43 (vendor specific) опции DHCP.
Получив данную опцию, точка доступа приходит на контроллер и появляется в базе обслуживаемых точек доступа (команда для мониторинга списка: show wlc ap). Далее контроллер инициализирует ее в соответствии со своей конфигурацией:
- Выполняет обновление, если версия ПО на точке доступа не соответствует версии, которая размещена на контроллере.
- Устанавливает пароль доступа.
- Выполняет конфигурирование в соответствии с настройками для данной локации (ap-location): выбранным профилем конфигурации для данного типа точек доступа и SSID.
Точки доступа могут быть подключены к контроллеру WLC через L2- или L3-сеть предприятия.
Выделение и настройка VLAN при подключении новых точек доступа может оказаться трудоемкой задачей, особенно если на сети предприятия между точками доступа и контроллером используется большое количество коммутаторов. Поэтому заводская конфигурация WLC предполагает построение SoftGRE DATA туннелей для передачи пользовательского трафика. Такое решение даже в L2-сети позволяет упростить подключение точек доступа, так как отсутствует необходимость прокидывать VLAN для каждого SSID через все коммутаторы.
При организации связи в L3-сети необходимо обеспечить настройку DHCP-relay на оборудовании сети предприятия для перенаправления DHCP-запросов точек доступа на WLC, где настроен пул IP-адресов для управления точками доступа, а также выдача 43 опции 15 подопции DHCP, содержащая URL контроллера.
Последовательность настройки контроллера беспроводных сетей WLC:
- Настройка интерфейсов, сетевых параметров и firewall.
- Настройка контроллера для организации SoftGRE DATA туннелей.
- Настройка DHCP-сервера.
- Настройка RADIUS-сервера.
- Настройка модуля управления точками доступа WLC:
- Настройка SSID.
- Настройка профилей конфигурации для каждого типа точек доступа.
- Создание локации (ap-location) и определение правил конфигурирования точек доступа, входящих в данную локацию.
- Определение подсетей обслуживаемых точек доступа.
- Настройка обновления точек доступа.
Настройка интерфейсов, сетевых параметров и firewall
Настройте профили TCP/UDP-портов для необходимых сервисов:
wlc# configure wlc(config)# object-group service ssh wlc(config-object-group-service)# port-range 22 wlc(config-object-group-service)# exit wlc(config)# object-group service dns wlc(config-object-group-service)# port-range 53 wlc(config-object-group-service)# exit wlc(config)# object-group service dhcp_server wlc(config-object-group-service)# port-range 67 wlc(config-object-group-service)# exit wlc(config)# object-group service dhcp_client wlc(config-object-group-service)# port-range 68 wlc(config-object-group-service)# exit wlc(config)# object-group service ntp wlc(config-object-group-service)# port-range 123 wlc(config-object-group-service)# exit wlc(config)# object-group service netconf wlc(config-object-group-service)# port-range 830 wlc(config-object-group-service)# exit wlc(config)# object-group service radius_auth wlc(config-object-group-service)# port-range 1812 wlc(config-object-group-service)# exit wlc(config)# object-group service sa wlc(config-object-group-service)# port-range 8043-8044 wlc(config-object-group-service)# exit wlc0(config)# object-group service airtune wlc(config-object-group-service)# port-range 8099 wlc(config-object-group-service)# exit
Создайте три зоны безопасности — зона пользователей (users), доверенная зона для точек доступа (trusted) и недоверенная зона для выхода в Интернет (untrusted):
wlc(config)# security zone users wlc(config-zone)# exit wlc(config)# security zone trusted wlc(config-zone)# exit wlc(config)# security zone untrusted wlc(config-zone)# exit
Настройте правила firewall:
wlc(config)# security zone-pair trusted untrusted wlc(config-zone-pair)# rule 1 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit wlc(config)# security zone-pair trusted trusted wlc(config-zone-pair)# rule 1 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit wlc(config)# security zone-pair trusted self wlc(config-zone-pair)# rule 10 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol tcp wlc(config-zone-pair-rule)# match destination-port ssh wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 20 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol icmp wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 30 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match source-port dhcp_client wlc(config-zone-pair-rule)# match destination-port dhcp_server wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 40 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match destination-port ntp wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 50 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol tcp wlc(config-zone-pair-rule)# match destination-port dns wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 60 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match destination-port dns wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 70 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol tcp wlc(config-zone-pair-rule)# match destination-port netconf wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit
wlc(config-zone-pair)# rule 80 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol tcp wlc(config-zone-pair-rule)# match destination-port sa wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 90 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match destination-port radius_auth wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 100 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol gre wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit wlc(config)# security zone-pair users self wlc(config-zone-pair)# rule 10 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol icmp wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 20 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match source-port dhcp_client wlc(config-zone-pair-rule)# match destination-port dhcp_server wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 30 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol tcp wlc(config-zone-pair-rule)# match destination-port dns wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# rule 40 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match destination-port dns wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit wlc(config)# security zone-pair untrusted self wlc(config-zone-pair)# rule 1 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# match protocol udp wlc(config-zone-pair-rule)# match source-port dhcp_server wlc(config-zone-pair-rule)# match destination-port dhcp_client wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit wlc(config)# security zone-pair users untrusted wlc(config-zone-pair)# rule 1 wlc(config-zone-pair-rule)# action permit wlc(config-zone-pair-rule)# enable wlc(config-zone-pair-rule)# exit wlc(config-zone-pair)# exit
Настройте NAT:
wlc(config)# nat source wlc(config-snat)# ruleset factory wlc(config-snat-ruleset)# to zone untrusted wlc(config-snat-ruleset)# rule 10 wlc(config-snat-rule)# description "replace 'source ip' by outgoing interface ip address" wlc(config-snat-rule)# action source-nat interface wlc(config-snat-rule)# enable wlc(config-snat-rule)# exit wlc(config-snat-ruleset)# exit wlc(config-snat)# exit
Создайте VLAN для uplink:
wlc(config)# vlan 2 wlc(config-vlan)# exit
Создайте пользовательский VLAN:
wlc(config)# vlan 3 wlc(config-vlan)# force-up wlc(config-vlan)# exit
Создайте интерфейсы для взаимодействия с подсетями управления точками доступа, пользователей Wi-Fi и Интернет:
#Конфигурируем параметры интерфейса для точек доступа: wlc(config)# bridge 1 wlc(config-bridge)# vlan 1 wlc(config-bridge)# security-zone trusted wlc(config-bridge)# ip address 192.168.1.1/24 wlc(config-bridge)# enable wlc(config-bridge)# exit #Конфигурируем параметры публичного интерфейса: wlc(config)# bridge 2 wlc(config-bridge)# vlan 2 wlc(config-bridge)# security-zone untrusted wlc(config-bridge)# ip address dhcp wlc(config-bridge)# enable wlc(config-bridge)# exit #Конфигурируем параметры интерфейса для пользователей Wi-Fi: wlc(config)# bridge 3 wlc(config-bridge)# security-zone users wlc(config-bridge)# ip address 192.168.2.1/24 wlc(config-bridge)# vlan 3 wlc(config-bridge)# enable wlc(config-bridge)# exit
Настройте порты:
#Конфигурируем интерфейсы для uplink: wlc(config)# interface gigabitethernet 1/0/1 wlc(config-if-gi)# mode switchport wlc(config-if-gi)# switchport access vlan 2 wlc(config-if-gi)# exit wlc(config)# interface tengigabitethernet 1/0/1 wlc(config-if-te)# mode switchport wlc(config-if-te)# switchport access vlan 2 wlc(config-if-te)# exit #Конфигурируем интерфейсы для подключения точек доступа: wlc(config)# interface gigabitethernet 1/0/2 wlc(config-if-gi)# mode switchport wlc(config-if-gi)# exit wlc(config)# interface gigabitethernet 1/0/3 wlc(config-if-gi)# mode switchport wlc(config-if-gi)# exit wlc(config)# interface gigabitethernet 1/0/4 wlc(config-if-gi)# mode switchport wlc(config-if-gi)# exit wlc(config)# interface tengigabitethernet 1/0/2 wlc(config-if-te)# mode switchport wlc(config-if-te)# exit
Включите разрешение DNS-имен:
wlc(config)# domain lookup enable
Настройте профиль для поднятия туннелей:
wlc(config)# tunnel softgre 1 wlc(config-softgre)# mode data wlc(config-softgre)# local address 192.168.1.1 wlc(config-softgre)# default-profile wlc(config-softgre)# enable wlc(config)# exit
Настройка DHCP-сервера
Необходимо обязательно указывать NTP-сервер, т.к. корректное время позволяет пройти проверку валидности сертификатов.
Настройте адресное пространство для устройств, которые будут подключены к контроллеру:
wlc(config)# ip dhcp-server pool ap-pool #Определяем подсеть: wlc(config-dhcp-server)# network 192.168.1.0/24 #Задаем диапазон выдаваемых IP-адресов: wlc(config-dhcp-server)# address-range 192.168.1.2-192.168.1.254 #Шлюз по умолчанию. Им является адрес бриджа управления ТД: wlc(config-dhcp-server)# default-router 192.168.1.1 #Выдаем адрес DNS-сервера: wlc(config-dhcp-server)# dns-server 192.168.1.1 #Необходимо обязательно указывать NTP-сервер, т.к. корректное время позволяет пройти проверку валидности сертификатов. #Выдаем 42 опцию DHCP, содержащую адрес NTP-сервера, для синхронизации времени на точках доступа: wlc(config-dhcp-server)# option 42 ip-address 192.168.1.1 #Выдаем 43 vendor specific опцию DHCP, которая содержит: - 12 подопцию, необходимую для построения SoftGRE data туннелей. Опция содержит IP-адрес softgre-интерфейса контроллера. wlc(config-dhcp-server)# vendor-specific wlc(config-dhcp-server-vendor-specific)# suboption 12 ascii-text "192.168.1.1" - 15 подопцию, необходимую для того, чтобы точка доступа автоматически пришла на контроллер и включилась в работу под его управлением. Опция содержит HTTPS URL контроллера. wlc(config-dhcp-server-vendor-specific)# suboption 15 ascii-text "https://192.168.1.1:8043" wlc(config-dhcp-server-vendor-specific)# exit wlc(config-dhcp-server)# exit
Настройте адресное пространство для пользователей:
wlc(config)# ip dhcp-server pool users-pool #Определяем подсеть: wlc(config-dhcp-server)# network 192.168.2.0/24 #Задаем диапазон выдаваемых пользователям Wi-Fi IP-адресов: wlc(config-dhcp-server)# address-range 192.168.2.2-192.168.2.254 #Шлюз по умолчанию: wlc(config-dhcp-server)# default-router 192.168.2.1 #Выдаем адрес DNS-сервера: wlc(config-dhcp-server)# dns-server 192.168.2.1 wlc(config-dhcp-server)# exit
Настройка RADIUS-сервера
Настройте локальный RADIUS-сервер.
wlc(config)# radius-server local #Настраиваем NAS ap. Содержит подсети точек доступа, которые будут обслуживаться локальным RADIUS-сервером при Enterprise-авторизации пользователей Wi-Fi: wlc(config-radius)# nas ap wlc(config-radius-nas)# key ascii-text password wlc(config-radius-nas)# network 192.168.1.0/24 wlc(config-radius-nas)# exit #Настраиваем NAS local. Используется при обращении WLC к локальному RADIUS-серверу при построении SoftGRE-туннелей: wlc(config-radius)# nas local wlc(config-radius-nas)# key ascii-text password wlc(config-radius-nas)# network 127.0.0.1/32 wlc(config-radius-nas)# exit #Создаем домен для пользователей: wlc(config-radius)# domain default #Создаем учетную запись пользователя Wi-Fi для подключения к Enterprise SSID: wlc(config-radius-domain)# user name1 wlc(config-radius-user)# password ascii-text password1 wlc(config-radius-user)# exit wlc(config-radius-domain)# exit #Настройки виртуального сервера содержат номера портов для аутентификации и аккаунтинга, настройки проксирования на внешний RADIUS server. Использование стандартных портов (1812 для аутентификации и 1813 для аккаунтинга) не требует настройки. В таком случае достаточно просто включения виртуального сервера (enable). wlc(config-radius)# virtual-server default wlc(config-radius-vserver)# enable wlc(config-radius-vserver)# exit wlc(config-radius)# enable wlc(config)# exit
В заводской конфигурации учетная запись пользователя не настроена в целях безопасности, поэтому для подключения к Enterprise SSID в заводской конфигурации необходимо создать учетную запись.
Определите параметры для взаимодействия с RADIUS-сервером: IP-адрес и ключ. Так как RADIUS-сервер находится локально на контроллере, в качестве адреса хоста задайте 127.0.0.1. Ключ должен совпадать с ключом, указанным для nas local.
wlc(config)# radius-server host 127.0.0.1 wlc(config-radius-server)# key ascii-text password wlc(config-radius-server)# exit
Добавьте профиль AAA, укажите адрес сервера, который будет использоваться:
wlc(config)# aaa radius-profile default_radius wlc(config-aaa-radius-profile)# radius-server host 127.0.0.1 wlc(config-aaa-radius-profile)# exit
Настройте и включите функционал автоматического поднятия SoftGRE-туннелей:
wlc(config)# softgre-controller #Так как RADIUS-сервер находится локально на контроллере,указываем nas-ip-address 127.0.0.1: wlc(config-softgre-controller)# nas-ip-address 127.0.0.1 #Выбираем режим создания data SoftGRE туннелей – WLC: wlc(config-softgre-controller)# data-tunnel configuration wlc #Выбираем созданный ранее ААА-профиль: wlc(config-softgre-controller)# aaa radius-profile default_radius wlc(config-softgre-controller)# keepalive-disable #Разрешаем трафик в пользовательском vlan: wlc(config-softgre-controller)# service-vlan add 3 wlc(config-softgre-controller)# enable wlc(config-softgre-controller)# exit
Настройка модуля управления точками доступа WLC
Перейдите к настройкам модуля управления конфигурацией точек доступа:
wlc(config)# wlc wlc(config-wlc)#
Настройте профиль RADIUS-сервера, который будет использоваться для аутентификации беспроводных клиентов Enterprise SSID точек доступа Wi-Fi. Если предполагается аутентификация клиентов на внешнем RADIUS-сервере, то здесь указывается его адрес и ключ. При такой настройке точка доступа будет проводить аутентификацию клиентов без участия WLC.
wlc(config-wlc)# radius-profile default-radius #Так как RADIUS-сервер находится локально на контроллере, указываем адрес контроллера в подсети точек доступа: wlc(config-wlc-radius-profile)# auth-address 192.168.1.1 #Ключ RADIUS-сервера должен совпадать с ключом, указанным для NAS ap: wlc(config-wlc-radius-profile)# auth-password ascii-text password #Указываем домен RADIUS. Этот домен должен совпадать с доменом, в котором созданы учетные записи пользователей Enterprise. wlc(config-wlc-radius-profile)# domain default wlc(config-wlc-radius-profile)# exit
Настройка SSID
Профиль SSID содержит настройки SSID точки доступа. Для примера приведена настройка Enterprise SSID:
wlc(config-wlc)# ssid-profile default-ssid #Description может содержать краткое описание профиля: wlc(config-wlc-ssid-profile)# description default-ssid #SSID – название беспроводной сети, которое будут видеть пользователи при сканировании эфира: wlc(config-wlc-ssid-profile)# ssid default-ssid #VLAN ID – номер VLAN для передачи пользовательского трафика. При передаче трафика Wi-Fi клиентам метка будет сниматься точкой доступа. При прохождении трафика в обратную сторону на нетегированный трафик от клиентов метка будет навешиваться: wlc(config-wlc-ssid-profile)# vlan-id 3 #Security mode – режим безопасности доступа к беспроводной сети. Для Enterprise авторизации выберите режим WPA2_1X: wlc(config-wlc-ssid-profile)# security-mode WPA2_1X #Указываем профиль настроек RADIUS-сервера, который будет использоваться для авторизации пользователей Wi-Fi: wlc(config-wlc-ssid-profile)# radius-profile default-radius #Далее необходимо указать хотя бы один диапазон, в котором будет работать SSID: 2.4/5 ГГц: wlc(config-wlc-ssid-profile)# band 2g wlc(config-wlc-ssid-profile)# band 5g #Активируем профиль SSID. В случае необходимости отключения SSID на всех локациях, SSID-профиль можно выключить командой 'no enable': wlc(config-wlc-ssid-profile)# enable wlc(config-wlc-ssid-profile)# exit
Настройка профилей конфигурации
Создайте профиль общих настроек точек доступа:
wlc(config-wlc)# ap-profile default-ap #Задаем пароль для подключения к точке доступа: wlc(config-wlc-ap-profile)# password ascii-text password #Если необходимо, можно активировать доступ к точкам доступа по ssh/telnet и web-интерфейс: wlc(config-wlc-ap-profile)# services wlc(config-wlc-ap-profile-services)# ip ssh server wlc(config-wlc-ap-profile-services)# ip telnet server wlc(config-wlc-ap-profile-services)# ip http server wlc(config-wlc-ap-profile)# exit
Создайте профили конфигурации точек доступа:
Для каждой точки доступа можно переопределить параметры отдельно через индивидуальный профиль. Подробную информацию о точках доступа можно найти в официальной документации по ссылке.
Создайте профиль конфигурирования радиоинтерфейса, работающего в частотном диапазоне 2,4 ГГц:
wlc(config-wlc)# radio-2g-profile default_2g #Задаем список каналов, из которых точка доступа будет автоматически выбирать наименее загруженный радиоканал: wlc(config-wlc-radio-2g-profile)# limit-channels 1,6,11 #Выбираем IEEE 802.11 режим работы радиоинтерфейса: wlc(config-wlc-radio-2g-profile)# work-mode bgnax #Задаем ширину радиоканала: wlc(config-wlc-radio-2g-profile)# bandwidth 20 #Выставляем мощность сигнала передатчика в дБм: wlc(config-wlc-radio-2g-profile)# tx-power maximal wlc(config-wlc-radio-2g-profile)# exit
Создайте профиль конфигурирования радиоинтерфейса, работающего в частотном диапазоне 5 ГГц:
wlc(config-wlc)# radio-5g-profile default_5g #Переводим режим динамического выбора частоты в принудительный режим: wlc(config-wlc-radio-5g-profile)# dfs forced #Задаем список каналов, из которых точка доступа будет автоматически выбирать наименее загруженный радиоканал: wlc(config-wlc-radio-5g-profile)# limit-channels 36,40,44,48,52,56,60,64 #Выбираем IEEE 802.11 режим работы радиоинтерфейса: wlc(config-wlc-radio-5g-profile)# work-mode anacax #Задаем ширину радиоканала: wlc(config-wlc-radio-5g-profile)# bandwidth 20 #Выставляем мощность сигнала передатчика в дБм: wlc(config-wlc-radio-5g-profile)# tx-power maximal wlc(config-wlc-radio-5g-profile)# exit
Настройка локации
Под локацией понимается группа точек доступа, предназначенная для предоставления сервиса внутри топографического и/или логического сегмента сети, которые в общем случае будут конфигурироваться по одним и тем же правилам (профилям). Локация для точки (ap-location) определяется при подключении точки к контроллеру в зависимости от адресного пространства. Исключение составляет переопределение (override) радио-параметров и/или ap-location в индивидуально созданном шаблоне для точки доступа по ее MAC-адресу.
Создайте локацию и определите правила конфигурирования точек доступа, входящих в данную локацию:
wlc(config-wlc)# ap-location default-location #Description может содержать краткое описание локации: wlc(config-wlc-ap-location)# description default-location #Указываем профили конфигурирования радиоинтерфейсов: wlc(config-wlc-ap-location)# radio-2g-profile default_2g wlc(config-wlc-ap-location)# radio-5g-profile default_5g #Указываем профиль общих настроек точек доступа: wlc(config-wlc-ap-location)# ap-profile default-ap #Указываем профили беспроводных сетей, которые будут предоставлять услуги в данной локации: wlc(config-wlc-ap-location)# ssid-profile default-ssid default #Так как схема предполагает передачу пользовательского трафика через SoftGRE-туннели, то необходимо указать, что локация работает в режиме туннелирования: wlc(config-wlc-ap-location)# mode tunnel wlc(config-wlc-ap-location)# exit
Определение подсетей обслуживаемых точек доступа
Определите адресное пространство подключаемых точек доступа:
wlc(config-wlc)# ip-pool default-ip-pool #Description может содержать краткое описание пула адресов: wlc(config-wlc-ip-pool)# description default-ip-pool #Подсеть IP-адресов точек доступа указывается в параметре network. Если данный параметр не определен, то все точки доступа будут попадать под данное правило. #Указываем ap-location, которая будет присваиваться точкам доступа данного пула адресов: wlc(config-wlc-ip-pool)# ap-location default-location wlc(config-wlc-ip-pool)# exit
Точки доступа, подсети которых не определены в ip-pool, не будут обслуживаться контроллером.
Авторегистрация точек доступа
Активируйте авторегистрацию точек доступа на контроллере:
wlc(config-wlc)# service-activator wlc(config-wlc-service-activator)# aps join auto
При подключении новых точек доступа не потребуется дополнительных действий, точки доступа будут зарегистроированы в автоматическом режиме.
Включение функционала WLC
Активируйте работу WLC, укажите IP-адрес контроллера для точек доступа и сохраните настройки:
wlc(config-wlc)# enable wlc(config-wlc)# outside-address 192.168.1.1 wlc(config-wlc)# end wlc# commit wlc# confirm
Web-интерфейс для мониторинга
Для мониторинга точек доступа доступен web-интерфейс, который можно включить командой:
wlc(config)# ip http server wlc(config)# end wlc# commit wlc# confirm
Web-интерфейс будет доступен по URL: http://<IP-address_wlc>, в конфигурации по умолчанию логин/пароль: admin/password.
Обновление точек доступа
В конфигурации по умолчанию при подключении точка доступа сразу автоматически обновится на прошивку, которая загружена на WLC. Если точка доступа уже находится под управлением WLC, то она обновится на новую прошивку сразу после ее загрузки.
Для загрузки прошивки используйте команду:
#IP-адрес TFTP-сервера – 192.168.1.2, WEP-1L-1.2.5_build_16.tar.gz – название файла ПО. wlc# copy tftp://192.168.1.2:/WEP-1L-1.2.5_build_16.tar.gz system:access-points-firmwares
Если на WLC загружено несколько файлов ПО, то точка доступа будет обновляться на самую последнюю версию.
AirTune configuration
Одним из приоритетных направлений по развитию точек доступа в области Enterprise&High-Density Wi-Fi является реализация сервиса AirTune, основной функцией которого является Radio Resource Management (RRM).
Radio Resource Management позволяет автоматически оптимизировать характеристики точек доступа в зависимости от текущих условий. Сервис AirTune не заменяет собой процедуры радиопланирования, но позволяет провести финальный этап оптимизации сети, а также вести постоянный контроль.
Используемые технологии и алгоритмы:
- Dynamic Channel Assignment (DCA) – алгоритм автоматического распределения частотных каналов каждой точки доступа в сети для избежания интерференции между ними;
Transmit Power Control (TPC) – алгоритм управления мощностью передатчиков с целью обеспечения оптимальной зоны покрытия сети и минимизации «конфликтных» областей, где клиент находится в зоне уверенного приема нескольких соседних точек доступа;
- Load Balancing – алгоритм автоматического распределения клиентских устройств между точками. В случае перегрузки сервис определит более оптимальную ТД для подключения клиента и выдаст рекомендации на точки доступа, клиент будет видеть в эфире только 1 ТД, рекомендованную для авторизации;
- Roaming – поддержка стандартов бесшовного роуминга 802.11 k/r.
Основными задачами функционала являются:
- Автоматическая настройка рабочих каналов между точками доступа;
- Автоматическая подстройка излучаемой мощности для стабильности зоны покрытия («соты»);
- Оптимизация пропускной способности беспроводной сети;
- Минимизация «конфликтных» областей между точками доступа;
- Равномерное распределение нагрузки между точками доступа;
- Поиск оптимальной точки доступа для клиента находящегося в «неуверенной» зоне приема;
- Минимизация «случайных» переподключений клиентов на границах «сот»;
- Поддержка бесшовного роуминга клиентов между точками доступа.
При работе функционала TPC/DCA точки доступа по команде от сервиса с помощью специальных пакетов (Action Frame) собирают информацию о радиосреде в текущий момент времени. Затем передают информацию на сервис, который выполняет анализ «качества радиоэфира» и проводит оптимизацию параметров для каждой точки доступа, что обеспечивает равномерность зоны покрытия и минимизацию интерференции.
Также сервис включает в себя функционал роуминга:
- Синхронизация списков соседних точек доступа стандарта 802.11k, который позволяет клиенту при ослабевании сигнала с текущей точки доступа искать более подходящую точку доступа из рекомендуемого списка, а не анализируя весь эфир.
- Согласование ключей между точками доступа для роуминга стандарта 802.11r, который позволяет значительно ускорять процесс переключения клиента между точками доступа, т.к. клиенту не нужно будет проходить повторную полную авторизацию на встречной точке доступа, только ускоренную.
Для работы роуминга стандартов 802.11k/r необходима поддержка стандарта со стороны клиентов.
Простой пример работы оптимизации сети с помощью сервиса представлен на картинке (функционал DCA+TPC):
Алгоритм работы
ТД при подключении к серверу (соединение между ТД и сервером осуществляется по протоколу WebSocket) отправляет сообщение "subscribe-request", где передает свои параметры, такие как:
- заводские установочные параметры (серийный номер, тип устройство, MAC-адрес);
- имя локации (географический домен);
- радио настройки (канал, мощность);
- список SSID;
- список подключенных клиентов.
После того как ТД построила сессию с сервисом, на AirTune точки группируются по доменам. Если на сервисе нет домена, которому принадлежит точка, AirTune отправляет отказ в обслуживании.
Если на AirTune домен настроен, то сервер отправляет "subscribe-response" c указанием какие функции (DCA, TPC, Load Balance) настроены для этого домена.
Оптимизация (DCA, TPC) проходит внутри домена по следующему сценарию:
1) Первым этапом происходит авторизация ТД на сервисе AirTune, для этого система управления посредством SNMP-set запроса конфигурирует на точках доступа URL сервиса AirTune;
2) ТД поднимают сессию с сервисом, обменявшись пакетами Subscribe-Request/Subscribe-Response, в которых ТД информирует сервис о текущей конфигурации. В случае если на сервисе не существует географический домен, переданный в сообщении от точки, сервис будет игнорировать запросы. Если домен найден, подключение происходит успешно;
3) Далее сервер отправляет на точки запрос "rrm-request-mode", чтобы актуализировать текущую информацию о них, т.к. оптимизация может начаться не только после подключения точки, а планово либо по команде администратора спустя долгое время после первичного подключения;
4) Точки доступа отвечают "rrm-response-mode", в котором передают свои текущие радио параметры;
5) Сервер отправляет запрос на сканирование окружения "rrm-update". В зависимости от опции eltex-rrm-scan сканирование может быть "обычным" (точка перебирает доступные каналы и детектирует все видимые точки) либо специальным, когда только точки из домена передают специальные action-пакеты в один, заранее определенный, момент времени;
6) Точки отправляют результат сканирования на сервер сообщением "rrm-response";
7) Получив результаты от всех ТД в домене, сервер в зависимости от настроек определяет для каждой точки оптимальную мощность, оптимальный канал, список соседей и отправляет сообщение "rrm-info";
8) После этого ТД применяют рекомендованные настройки, и оптимизация считается завершенной.
Оптимизация происходит в следующих случаях:
- новая точка добавилась в домен;
- одна из ТД была отключена;
- на одной из точек были изменены радио параметры;
- по таймеру (Optimization interval);
- по нажатию администратором соответствующей кнопки.
Оптимизация не происходит в случае:
- перезапуска ТД;
- короткого пропадания связи между ТД и сервисом;
- обновления ТД.
Сценарий балансировки клиентов на ТД:
1) В случае если алгоритмы TPC/DCA включены вместе с балансировщиком либо отключена опция "Use all AP for Balance", то первым этапом происходит поиск соседствующих точек в эфире;
В случае если стоит флаг "Use all AP for Balance" в конфигурации AirTune, то пункт "Поиск соседствующих точек в эфире" будет пропущен, рассылка будет осуществляться всем ТД, находящимся в одном домене.
2) Далее начинаются сценарии работы балансировщика. При подключении нового клиента с ТД на сервер отправляется сообщение "rrm-client-assoc", в котором содержится MAC-адрес клиента SSID, к которому клиент подключился. В случае если подключенный клиент находится в зоне уверенного приема и ТД не является загруженной, сервисом никаких действий не предпринимается, отправляется только сообщение "RRM-Client-Assoc-Ack" для портальных клиентов, после него ТД разблокирует клиентов для доступа в интернет (если пользователь уже авторизовался на портале);
3) Если при подключении клиента данная точка является загруженной (превышен лимит клиентов) или клиент имеет сигнал ниже установленного уровня, сервер инициирует процесс балансировки этого клиента;
4) Сервис отправляет "соседним" ТД, на которых настроен такой же SSID, сообщение "rrm-probe-request", чтобы определить с каким уровнем сигнала ТД "видят" данного клиента;
5) ТД отвечают сообщением "rrm-probe-response", в котором указывают уровень сигнала RSSI;
6) Если сервер не нашел подходящей точки для клиента, он оставляет его на текущей. Если оптимальная точка найдена, клиента отключаем от текущей ТД командой "rrm-disassoc-request", на всех остальных, кроме оптимальной, блокируем клиента командой "rrm-blacklist", таким образом клиент видит в эфире только 1 целевую ТД и произойдет переключение клиента (роуминг).
Балансировка клиентов между точками доступа происходит в рамках одного интерфейса (2.4 ГГц или 5 ГГц).
Если клиент подключился в 2.4 ГГц к загруженной ТД, то его балансировка на свободный интерфейс 5 ГГц второй точки доступа происходить не будет, только на аналогичный интерфейс (2.4 ГГц).
Если клиентское устройство поддерживает функционал рандомизации MAC-адреса в Probe Request, то для таких клиентов функционал работать не будет, т.к. анализ уровня сигнала от клиента на соседних точках доступа основывается на менеджмент-пакетах от клиента (Probe request).
Configuration algorithm
По умолчанию все необходимые настройки для работы сервиса настроены, нужно только указать IP-адрес контроллера, который виден точкам доступа, включить сервис, создать профиль и привязать его к локации.
Настройки производятся в режиме конфигурирования (config) раздела настройки контроллера WLC (config-wlc).
Step | Description | Command | Keys |
---|---|---|---|
1 | Перейти в раздел конфигурирования WLC. | wlc# configure wlc(config-wlc)# | |
2 | Создать профиль AirTune. | wlc(config-wlc)# airtune-profile <NAME> wlc(config-airtune-profile)#exit wlc(config-wlc)# | <NAME> – название профиля, задается строкой до 235 символов. |
3 | Перейти в локацию, для которой требуется автоматическая оптимизация настроек точек доступа. | wlc(config-wlc)# ap-location <NAME> wlc(config-wlc-ap-location)# | <NAME> – название профиля локации, задается строкой до 235 символов. |
4 | Привязать созданный профиль к локации. | wlc(config-wlc-ap-location)# airtune-profile <NAME> wlc(config-wlc-ap-location)#exit wlc(config-wlc)# | <NAME> – название профиля локации, задается строкой до 235 символов. |
5 | Перейти в раздел общих настроек сервиса. | wlc(config-wlc)# airtune wlc(config-airtune)# | |
6 | Активировать работу сервиса. | wlc(config-airtune)# enable wlc(config-airtune)#end |
Configuration example
#Создаем профиль airtune, по умолчанию в нем уже указаны оптимальные настройки сервиса, поэтому достаточно просто создать сам профиль: wlc# configure wlc(config)# wlc wlc(config-wlc)# airtune-profile default_airtune wlc(config-airtune-profile)#exit #Добавляем профиль в локацию, чтобы разрешить оптимизацию в выбранной локации: wlc(config-wlc)# wlc(config-wlc)# ap-location default-location wlc(config-wlc-ap-location)# airtune-profile default_airtune wlc(config-wlc-ap-location)#exit #Глобально активируем функционал airtune в контроллере (оптимизация будет проходить только в локациях с профилем airtune): wlc(config-wlc)# airtune wlc(config-airtune)# enable wlc(config-wlc)# end wlc# commit wlc# confirm