AirOS и VLAN. Делимся опытом

Рейтинг
Оценка: 5Голосов: 1Комментарии: 1

Простенький скрипт для настройки большого количества VLAN-ов. Всем наверное известно, что с прошивки AirOS 5.5 в линейках устройств M-Series (Rocket M2/M5, NanoStation M2/M5, NanoBridge M2/M5 etc.) появилась возможность управления VLAN с Web-интерфейса. Но при количестве виртуальных сетей более 3, это довольно длительный процесс настройки, который я опишу в конце статьи. А учитывая, что настраивать нужно 2 точки доступа, то и времени потребуется гораздо больше. Конечно можно настроить одну точку, сделать с неё резервную копию и восстановить на другой эти настройки, затем изменив на второй IP-адрес, вы получите готовое оборудование для построения канала.

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

Вот короткий скрипт, который вам необходимо разместить на оба устройства в папку /etc/persistent, лишь изменив в нем IP и VLAN управления (переменная “RMVLAN”) на те, в которых они должны работать:

rc.poststart

#!/bin/sh

# RocketM5 fw ver. 5.5.6

# Management Vlan Settings

RMVLAN=21

# Vlan’s Settings

VLANS=”10 20 30 40 50 60 70 80 90 100 110 120 250 460 590 677 888 998 3067″

# IP Settings

IP_ADDR=192.168.99.254

NET_MASK=255.255.255.0

DEF_GW=192.168.99.1

ifconfig ath0 0.0.0.0 up

ifconfig br0 down

brctl delif br0 ath0

brctl delif br0 eth0

brctl delif br0 eth1

brctl delbr br0

# Add Remote Management Vlan

brctl addbr br.${RMVLAN}

vconfig add eth0 ${RMVLAN}

vconfig add ath0 ${RMVLAN}

ifconfig eth0.${RMVLAN} 0.0.0.0 up

ifconfig ath0.${RMVLAN} 0.0.0.0 up

brctl addif br.${RMVLAN} eth0.${RMVLAN}

brctl addif br.${RMVLAN} ath0.${RMVLAN}

ifconfig br.${RMVLAN} ${IP_ADDR} netmask ${NET_MASK} up

route del default gw 0.0.0.0

route add default gw ${DEF_GW} br.${RMVLAN}

# Apply Vlan’s

for a in `echo $VLANS`

do

brctl addbr br.$a

vconfig add ath0 $a

vconfig add eth0 $a

ifconfig ath0.$a 0.0.0.0 up

ifconfig eth0.$a 0.0.0.0 up

brctl addif br.$a ath0.$a

brctl addif br.$a eth0.$a

ifconfig br.$a 0.0.0.0 up

done

# Rescue IP Access

ifconfig eth0:1 192.168.1.20 netmask 255.255.255.0

# End of Script

Как видите под за комментированной # Apply VLAN’s выполняется циклический скрипт, который берет каждый по очереди параметр из переменной строки “VLANS”, и выполняет с ним необходимые действия по созданию интерфейсов и склеиванию их в бриджи.

Т.е. вы сохраняете этот скрипт в файл, редактируете его на компьютер точку доступа, перегружаете и все, у вас готовое к работе устройство.

Обратите внимание на аварийный IP (Rescue IP-Access), он предназначен для первоначальной настройки, если вы что-то нашаманили не то и доступ не появился по VLAN-у управления (а он идет тегированный), то по аварийному вы сможете достучаться до точки для изменения настройки. После того как все получится не забудьте удалить или за комментировать данную строчку и перегрузить устройство или воспользоваться командной:

ifconfig eth0:1 down

Теперь рассмотрим настройку VLAN-ов, способом, о котором я говорил в начале статьи, средствами Web-интерфейса. Я для примера настройки буду использовать Rocket M5 с прошиывкой ver. 5.6.3.

Наверное повторюсь, я уже об этом кажется писал, что в настройках беспроводного интерфейса обязательно должен стоять флажок “WDS (Transparent Bridge Mode)”, так как прозрачное прохождение тегированных пакетов разрешает именно он. Одно устройство должно быть в режиме “Access Point”, второе – в режиме “Bridge”, WDS должен быть включен на обеих.

Рис. 1. Настройка Rocket M5 с прошивкой ver. 5.6.3.

Рис. 1. Настройка Rocket M5 с прошивкой ver. 5.6.3.

 

Разочаровали UBNT-шники, один из пользователей форума, где-то около 2,5 лет назад, опубликовал ссылку на официальный документ, о том что в Украине для базовых станций используется частота 5340 МГц. С тех пор они наверное не смогли его перевести для подтверждения, и частоту так и не добавили.

Маленький секрет. Как включить страну “Compliance Test” на прошивках с версии 5.5.8 и выше, делать это можно как на полностью сброшенном устройстве, так и на рабочем, но с перезагрузкой:

ssh 192.168.1.20

Connecting to 192.168.1.20:22…

Connection established.

To escape to local shell, press ‘Ctrl+Alt+]’.

KM ,ok0KNWW

KM :NMMMMMMMM

KM .. WMMMMMMMMM

KM KM WMMMMMMMMM

KM KM WMMMMMMMMM

KM KM .. WMMMMMMMMM

KM .. KM WMMMMMMMMM

KM KM KM WMMMMMMMMM

KMNXWM KM WMMMMMMMMK

KMMMMMKONM WMMMMMMMW

KMMMMMMMMM WMMMMMMM x

lMMMMMMMMM WMMMMMN xK

MMMMMMMMMl ,WMMMP dXM:

lMMMMMMMMx . ,,,aaadXMMd

lNMMMMMMW: XOxolcclodOKMMMMWc

lXMMMMMNc lMMMMMMMMMMMMNo.

llONMMM0c lMMMMMMNOo’

‘lMN;. lMWl’

BusyBox v1.11.2 (2015-11-30 17:45:30 EET) built-in shell (ash)

Enter ‘help’ for a list of built-in commands.

XM.v5.6.3# touch ct

XM.v5.6.3# save

Found Active on[1] …

Found Backup1 on[2] …

Storing Active[2] … [%100]

Active->Backup[1] … [%100]

XM.v5.6.3# reboot

XM.v5.6.3#

Connection closed by foreign host.

Disconnected from remote host(192.168.1.20:22) at 20:06:54.

Но если вам нужно это сделать на рабочем канале, то перед перезагрузкой просто измените редактором vi в файле /tmp/system.cfg следующие параметры:

было:

radio.1.countrycode=804

radio.countrycode=804

стало:

radio.1.countrycode=511

radio.countrycode=511

и после этого reboot и получается примерно так:

Рис. 2. Частота 5340 МГц.

Рис. 2. Частота 5340 МГц.

 

Ну что ж, с беспроводным интерфейсом разобрались, приступим к виртуальным сетям Network->Configuration Mode: Advanced.

Первым делом рекомндую в “IP-Aliases” на интерфейс LAN0 добавить IP-адрес на случай если у вас Windows и есть проблема поднятия виртуальных VLAN, и на случай если вы ошиблись с настройками не потерять доступ к устройству.

Для начала нам нужно отредактировать текущие настройки для сети управления, предположим это VLAN 21 с адресом 192.168.99.254, и он у нас не заканчивается на этой точке, а проходит дальше на следующую. Для управления, по этому мы создаем их на интерфейсе LAN0(LAN0.21) и WLAN0(WLAN0.21), затем удаляем из BRIDGE0 интерфейсы LAN0 и WLAN0 и добавляем в него LAN0.21 и WLAN0.21, при этом “Management Interface” должен оставаться на интерфейсе “Bridge0” и он будет тегированный, на картинке это выглядит примерно так:

Рис. 3. Тегированный “Bridge0”.

Рис. 3. Тегированный “Bridge0”.

 

Здесь для каждой виртуальной сети необходимо выполнить 5 действий, для примера VLAN 333, VLAN Network:

  1. Создать интерфейс LAN0.333.
  2. Создать интерфейс WLAN0.333.
  3. Добавить в Bridge Network BRIDGE1.
  4. Добавить интерфейс LAN0.333 в BRIDGE1.
  5. Добавить интерфейс WLAN0.333 в BRIDGE1.

Затем “Change”, который я рекомендую нажимать после добавления каждого влана, так как бывало, что после долгих настроек огромного количества вланов, при нажатии на кнопку “Change” меня выбрасывало на страницу авторизации, и как вы понимаете, настройки не сохранялись. Применить…

Рис. 4. Выполнили 5 действий.

Рис. 4. Выполнили 5 действий.

 

А теперь представьте, что вам необходимо их прописать 70, нет, даже 50, если не будете путаться и безошибочно, то это займет гораздо больше времени, чем написать все эти вланы в строчку.

Отступление из практики. Если вам необходимо на рабочий канал добавить VLAN, но прерывания сервиса для вас критично, то могу посоветовать как это сделать безболезненно. Первым делом добавляете необходимый VLAN в настройки, в скрипте или через Web как у вас настроено, но не применяйте, сервис же нельзя прерывать.

После всего заходим на канальные точки доступа по очереди и выполняем следующие действия на примере VLAN-а 333:

Первым делом “save”, чтобы сохранить наши настройки и далее..:

XM.v5.6.3# vconfig add eth0 333

XM.v5.6.3# vconfig add ath0 333

XM.v5.6.3# ifconfig eth0.333 up

XM.v5.6.3# ifconfig ath0.333 up

XM.v5.6.3# brctl addbr br0.333

XM.v5.6.3# brctl addif br0.333 eth0.333

XM.v5.6.3# brctl addif br0.333 ath0.333

XM.v5.6.3# ifconfig br0.333 up

Необходимый VLAN проброшен через магистральные точки доступа без прерывания сервиса.

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

Вас может заинтересовать

 

(Снят с производства)
 
2167 грн 82.40 у.е.
Купить
 
2164 грн 82.30 у.е.
Купить
 
2157 грн 82 у.е.
Купить
1 2 »

Если Вы нашли ошибку в тексте, то выделите ее мышкой и нажмите Ctrl + Enter или нажмите здесь.

Сообщение об ошибке

Ошибка:

Ваш комментарий (не обязательно):

Да Отмена

Об авторе Valerij_Burec