Связаться с менеджером

Главная > Статьи > Пример автоматической настройки CPE Wive-NG-HQ в ACS

Пример автоматической настройки CPE Wive-NG-HQ в ACS

Для автоматической массовой настройки WiFi-роутеров, ONU и других абонентских устройств (CPE) с использованием протокола CWMP (TR-069 / TR-098) можно использовать OpenSource ACS сервер GenieACS.

Для первоначальной настройки роутеров Wive-NG нужен provision скрипт. В нём зададим следующие параметры:

  1. Новый SSID, это будет “HomenetXX” и “Homenet2_XX” (для 2,4ГГц), как у однодиапазонных моделей, так и у двухдиапазонных. Где XX это последние цифры мак-адреса. (ниже в коментариях пример) Это не самое лучшее решение для SSID, но самый простой пример решения задачи что бы SSID рядом стоящих точек не повторялись;

  2. Задать пароль для WiFI, это будет тоже содержимое атрибута SerialNumber (TR-098), обычно там содержится серийный номер устройства;

  3. Задать метод авторизации на беспроводной сети WPA2/3-PSK;

  4. Настраивать будем только устройства с установленным тэгом “NEW”;

  5. После настройки скрипт снимает тэг “NEW” и ставит тэг “Inited”;

  6. Для применения настроек перезагружаем устройство. Однако только если оно недавно НЕ перегружалось

//Initial setup
const time = Date.now();
const mac = declare("DeviceID.SerialNumber",{value:1}).value[0];
const wkey = mac;
//const wkey = "Homenet2";
const ssid = "Homenet2" + mac.substring(9);
//const ssid = "Homenet";
const ssid5 = "Homenet" + mac.substring(9);
const bam = "EAPAuthentication";
const enc = "AESEncryption";
log("SSID: "+ssid);
log("WLAN KEY: "+wkey);
log('Setting up WLAN Connection');
declare("InternetGatewayDevice.ManagementServer.PeriodicInformTime",{value:time},{value:bam});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.*.*", {path: time}); //Refresh the node...
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.BasicAuthenticationMode",{value:time},{value:bam});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.WPAAuthenticationMode",{value:time},{value:bam});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.WPAEncryptionModes",{value:time},{value:enc});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.IEEE11iAuthenticationMode",{value:time},{value:"PSKAuthentication"});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.IEEE11iEncryptionModes",{value:time},{value:enc});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.SSID",{value:time},{value:ssid});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.KeyPassphrase",{value:time},{value:wkey});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.BasicAuthenticationMode",{value:time},{value:bam});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.WPAAuthenticationMode",{value:time},{value:bam});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.WPAEncryptionModes",{value:time},{value:enc});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.IEEE11iAuthenticationMode",{value:time},{value:"PSKAuthentication"});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.IEEE11iEncryptionModes",{value:time},{value:enc});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.SSID",{value:time},{value:ssid5});
declare("InternetGatewayDevice.LANDevice.1.WLANConfiguration.11.KeyPassphrase",{value:time},{value:wkey});
declare("Tags.NEW", null, {value: false});
declare("Tags.Inited", null, {value: true});
declare("Reboot", null, {value: Date.now() - (300 * 1000)});

Осталось создать Preset. Где указать Вес (приоритет), Расписание (cron формат), Events (по необходимости, BOOT, BOOTSTRAP, inform, Registered). Ну и в Precondition указать выборку устройств по тэгу NEW:

Tags.NEW IS NOT NULL

И последнее, выбрать из выпадающего списка наш предварительно созданный вышеописанный provision-script.

0 комментариев
Что бы оставить комментарий вам необходимо авторизоваться