- Бесшовный роуминг 802.11r в OpenWrt
- Быстрый роуминг (802.11r) в WiFi сети на базе Lede (aka OpenWRT)
- Enabling 802.11r (Fast Roaming/Transition) on OpenWRT
- Installing WPAD
- SSH Into The AP
- Removing Other Forms of wpad
- Installing wpad
- Configuring Fast Roaming
- Using VLANs on OpenWRT
- Installing OpenWRT On a Meraki MR16
Бесшовный роуминг 802.11r в OpenWrt
2. Шифрование и алгоритм шифрования делаем одинаковые на всех роутерах.
3. Пароль устанавливаем одинаковый для всех точек доступа участвующих в роуминге.
4. Устанавливаем галочку 802.11r Fast Transition / 802.11r Быстрый Роуминг
5. NAS ID на каждом устройстве свой. Я использовал MAC-адрес без точек.
6. Mobility Domain / Мобильный домен на всех роутерах одинаковый — это 4-х значное число в hex
7. FT protocol / FT протокол — FT над DS
8. Generate PMK locally / Создать PMK локально — снять галочку, выключено
9. R1 Key Holder / Держатель ключа R1 в простой конфигурации совпадает с NAS ID
10. PMK R1 Push / Продвигать PMK R1 установить галочку, включено
11. External R0 Key Holder List / Внешний R0 Key Holder List настраивается на каждой точке доступа и имеет следующий формат:
MAC, MAC (без точек), 128bit_HEX_KEY это ключ везде одинаковый. MAC-адрес логично что разный.
Пример для 3х точек доступа, значит 3 записи:
74:9D:79:1B:FF:5A,749D791BFF5A,8a7fcc966ed0691ff2809e1f38c16996
E8:DE:27:C2:67:A8,E8DE27C267A8,8a7fcc966ed0691ff2809e1f38c16996
30:B5:C2:CB:BE:92,30B5C2CBBE92,8a7fcc966ed0691ff2809e1f38c16996
количество записей равно количеству точек доступа.
12. External R1 Key Holder List / Внешний R1 Key Holder List настраивается на каждой точке доступа и имеет следующий формат:
MAC, MAC, 128bit_HEX_KEY это ключ везде одинаковый. MAC-адрес логично что разный.
Пример для 3х точек доступа, значит 3 записи:
74:9D:79:1B:FF:5A,74:9D:79:1B:FF:5A,8a7fcc966ed0691ff2809e1f38c16996
E8:DE:27:C2:67:A8,E8:DE:27:C2:67:A8,8a7fcc966ed0691ff2809e1f38c16996
30:B5:C2:CB:BE:92,30:B5:C2:CB:BE:92,8a7fcc966ed0691ff2809e1f38c16996
количество записей равно количеству точек доступа.
Для настройки бесшовного роуминга необходимо проверить наличие пакетов, и при необходиости заменить wpad-mini, wpad-basic или wpad на пакеты wpad-mesh-openssl или wpad-mesh-wolfssl, или wpad-basic-openssl, или wpad-basic-wolfssl.
Информация о прошивке роутеров:
Быстрый роуминг (802.11r) в WiFi сети на базе Lede (aka OpenWRT)
Всем привет. Решил я закрепить полученный результат написав статью. А результат этот — это объединение нескольких WiFi точек доступа в сеть в одну неразрывную сеть, ещё её называют бесшовную. Смысл сего действия состоял в том, что моя «локальная» домашняя сеть разрослась до нескольких WiFi точек по причине её (сети) большой площади и невозможности достичь надлежащего качества всего одной точкой.
Первое и лобовое решение было поставить ещё несколько WiFi AP с тем же BSSID и с виду вроде всё работало, но как оказалось не всё. К примеру мой Android based телефон нормально переваривал эту ситуацию перепрыгивая с точки на точку при потере сигнала от одной и обнаружении сигнала от другой, но у пользователей чудного яФона возникла с этим проблема, сие устройства напрочь отказывались отключаться от уже пропавшей из радиуса действия точки и подключаться к новой, хоть и с более жирным сигналом. Ну и как полагается у сего контингента (никакой неприязни — просто сухие факты) началась вонь, что всё вокруг Г. мой чудный телефончик не может работать с этим барахлом. И начал я искать методы борьбы с этим.
Мои поиски привели меня к стандарту 802.11r. В котором нам обещают полную прозрачность для WiFi устройств сети их нескольких AP. И даже Apple подтверждает, что умеет так.
Ну ладно, ради спокойствия души своей и любителей яблок освоим новую дисциплину. Беглое изучение теории и практики показало, что hostapd вроде как умеет сие чудо. Все мои роутеры уже давно на Lede (кто не в курсе, это бывший OpenWRT) ну и как бы в этой связи настройка не должна была бы создать проблем. Но как всегда не всё так просто, либо я туговат 🙂
Для начала в lede по умолчанию устанавливается пакет wpad-mini, в нём собрана основная поддержка WiFi AP с минимумом возможной, дабы работало. Меня такой расклад не устраивает. Поэтому необходимо заменить пакет на wpad.
В простейшем случае для этого нужно выполнить команду:
пакет притянет с собой всё необходимое и заменит собою wpad-mini. В идеальном же варианте не плохо просто пере собрать образ прошивки средствами ImageBuilder.
После установки пакета нужно его под настроить. Если вы используете luci интерфейс, то в настройках WiFi сети в разделе Wireless Security появится галочка Enables fast roaming among access points that belong to the same Mobility Domain.
Включив которую нам предоставляют кучу полей для настройки функции роуминга между AP.
Если же у вас нет luci или вы предпочитаете настраивать железку изменяя кофиги, то это же делается строчкой:
в секции config wifi-iface файла конфигурации /etc/config/wireless. Я надеюсь не нужно объяснять, что это надо проделать на всех AP участвующих в роуминге.
Это было самое простое. А вот далее началось веселье.
Чтобы объяснить всем точкам, что они в одном роуминге надо это дело как-то настроить. Все мануалы что мне удалось найти упорно сводятся к настройке этого всего дела с использованием RADIUS авторизации. Но у меня нету и RADIUS и не нужен он мне, как я думаю и большинству из нас. Поэтому пришлось эксперементировать.
Пробежимся по полям, которые предлагает нам заполнить luci:
NAS ID — как я понял идентификатор текущей точки доступа в RADIUS сервере. И не нужен при отсутствии последнего, но Luci не даёт сохранить настройки, если это поле не заполнено. Ну чтож — заполним. Обычно все рекомендуют вписывать туда MAC адрес устройства без разделителей.
Mobility Domain — идентификатор конкретно вашей сети. Должен быть один у всех участвующих в роуминге точек. Представляет из себя 16битное число в шестнадцетиричной форме (HEX).
External R0 Key Holder List — вот тут будут участвовать NAS ID, а говорили нужен только для RADIUS. Или же эта функция не участвует без RADIUS? Поясните кто в курсе? Тут я добавил столько строк, сколько у меня точек доступа в сеть. В формате: MAC-адрес, NAS-ID, 128-bit ключ в виде HEX строки
Например: 12:fe:ed:6d:bf:ea, 12feed6dbfea, 8a7fcc966ed0691ff2809e1f38c16996
И так несколько раз с каждой точкой доступа, ключ я использовал один и тот же. Тоже, если кто в курсе как правильно?
External R1 Key Holder List — аналог предыдущей секции, только вместо NAS-ID некий R1KH-ID.
Я заполнил так: 12:fe:ed:6d:bf:ea, 12:fe:ed:6d:bf:ea, 8a7fcc966ed0691ff2809e1f38c16996
В итоге получилось примерно вот так:
В виде конфига всё это выглядит так:
option ieee80211r '1' option mobility_domain '4f57' option pmk_r1_push '1' list r0kh '12:fe:ed:6d:bf:ea,12feed6dbfea,8a7fcc966ed0691ff2809e1f38c16996' list r0kh 'e8:94:f6:e5:46:72,e894f6e54672,8a7fcc966ed0691ff2809e1f38c16996' list r1kh '12:fe:ed:6d:bf:ea,12:fe:ed:6d:bf:ea,8a7fcc966ed0691ff2809e1f38c16996' list r1kh 'e8:94:f6:e5:46:72,e8:94:f6:e5:46:72,8a7fcc966ed0691ff2809e1f38c16996' option nasid '12feed6dbfea' option r1_key_holder '12feed6dbfea'
Сохранив и перезагрузив все устройства не первый взгляд всё продолжило работать. У меня на Телефоне с Android с виду ничего не изменилось. Владельцы iPhone пока довольны — будем наблюдать. WiFi Анализатор видит мою сеть по прежнему как несколько точек, но помимо WPA-PSK авторизации добавилась FT-PSK.
Я писал статью, чтобы и самому не потерять найденное и чтобы получить критику и помощь в понимании сделанного 🙂 Буду благодарен за любые замечания.
Enabling 802.11r (Fast Roaming/Transition) on OpenWRT
802.11r, also known as Fast Roaming/Transition on OpenWRT allows clients to seamlessly switch between several access points depending on which one is closer to the client. This is great for locations with more than one access point as a client does not have to drop a connection to rescan for APs, but can instead switch between, dropping minimal packets and remaining secure. In this guide, you will learn how to enable fast roaming on OpenWRT.
Installing WPAD
wpad is a full-featured IEEE 802.1x authenticator/supplicant for OpenWRT. Your access point may already have it installed but in another format such as wpad-mini or wpad-basic. For fast roaming, wpad, the full package, is required.
SSH Into The AP
SSH into your access point. I will be using Windows’ default ssh client. You may be asked to access the RSA key of the client, and select yes. Enter in the password of the AP.
Removing Other Forms of wpad
First in the terminal, enter in:
opkg update
This will update the repositories and lists of packages on the access points. Then enter:
If you receive the following message:
Then you do not need to do anything to continue. If you receive a message saying that the wpad package could not be installed due to another package, i.e. wpad-basic or wpad-mini, then type:
opkg remove interfering-package
This should remove the interfering wpad packages.
Installing wpad
If there are no conflicting dependencies and packages, type in:
If you want WPA3 support, install wpad-openssl instead of wpad
Configuring Fast Roaming
Now that wpad is installed we can configure fast roaming.
Login to the Luci web interface. Navigate to Network>Wireless. Then choose the SSID you want to enable fast roaming on. Note that if you have more than one SSID or radio, then you will have to repeat these steps.
Select the SSID you want to enable fast roaming on, and go to the Wireless Security tab under Interface Configuration. Select the checkbox to enable 802.11r.
You will be greeted with several fields.
For the mobility domain, enter in an 4-character hexadecimal ID. Here are examples
Once you have entered these settings, copy and paste the same mobility domain if you have multiple SSIDs. If you have multiple access points, you will keep the same mobility domain.
Congrats, you should now have fast roaming enabled on your access points!
Using VLANs on OpenWRT
If you have ever used prosumer or enterprise networking equipment, you have probably run across a switch with “smart” capabilities or VLAN capabilities. VLANs by definition is “a virtual LAN is any broadcast domain that is partitioned and isolated in a computer network at the data link layer.” VLANs allow for multiple networks and subnets to be carried across one physical network link. Things You Will Need: * An OpenWRT Device supporting VLANs (see here for more info) set as a DHCP client on
Installing OpenWRT On a Meraki MR16
UPDATE 10/21. It appears that Cucumber WiFi (CT WiFi, etc.) was officially shut down September 3, 2021. I believe that leaves the only way to flash with Serial. I recently picked up 11 Meraki MR16’s off of eBay for a good price. I decided to buy these because I knew that they would be reliable access points for the price. Things you will need: * A computer (mine is running Windows) * A couple of ethernet cables * A Meraki MR16 Access Point * Something to push the reset button of