Просмотр сообщений
|
Страниц: 1 ... 4 5 [6]
|
76
|
Главная категория / Nodeny Plus / Re: Dhcp + Radius
|
: 27 Октября 2016, 16:30:25
|
у Accel-ppp есть свой встроенный DHCP # netstat -tulpn | grep :67 udp 0 0 0.0.0.0:67 0.0.0.0:* 6567/accel-pppd udp 0 0 0.0.0.0:67 0.0.0.0:* 6567/accel-pppd
|
|
|
77
|
Главная категория / Nodeny Plus / Re: Nodeny plus + Debain + Accel-ppp
|
: 27 Октября 2016, 11:39:06
|
В тарифе указываем теги тарифа. Конечный вариант таков. DROP PROCEDURE IF EXISTS `radreply`; DELIMITER $$ CREATE PROCEDURE `radreply`(IN login VARCHAR(64)) BEGIN DECLARE usr_id INT; DECLARE usr_ip VARCHAR(15) DEFAULT NULL; DECLARE usr_tarif VARCHAR(15) DEFAULT NULL;
SELECT id INTO usr_id FROM users WHERE name=login LIMIT 1; SELECT get_ip(usr_id) INTO usr_ip; SELECT tags INTO usr_tarif FROM users_services LIMIT 1;
SELECT NULL,login,'Framed-IP-Address',usr_ip,'='; SELECT NULL,login,'Framed-IP-Netmask','255.255.255.255','='; SELECT NULL,login,'Framed-Protocol','PPP','='; SELECT NULL,login,'Acct-Interim-Interval','60','=';
IF usr_tarif LIKE '%,medium,%' THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','21504','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','21504','='; END IF;
IF usr_tarif LIKE '%,fast,%' THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','51200','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','51200','='; END IF;
IF usr_tarif LIKE '%,ultra,%' THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','102400','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','102400','='; ELSE SELECT NULL,login,'PPPD-Downstream-Speed-Limit','2048','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','2048','='; END IF;
END$$ DELIMITER ; Заметил особенность или глюк При изменении тега тарифа в вебе, в mysql он не меняется до тех пор, пока не переназначишь услугу. К примеру mysql> SELECT tags FROM users_services WHERE tags LIKE '%,speed,%'; +----------------------------------+ | tags | +----------------------------------+ | ,medium,inet,speed,start_traf=0, | +----------------------------------+ 1 row in set (0.00 sec)
Меняем тег в морде на medium_new получаем mysql> SELECT tags FROM users_services WHERE tags LIKE '%,speed,%'; +----------------------------------+ | tags | +----------------------------------+ | ,medium,inet,speed,start_traf=0, | +----------------------------------+ 1 row in set (0.00 sec)
Переназначачем услугу И только теперь получаем изменённый тег. mysql> SELECT tags FROM users_services WHERE tags LIKE '%,speed,%'; +--------------------------------------+ | tags | +--------------------------------------+ | ,medium_new,inet,speed,start_traf=0, | +--------------------------------------+ 1 row in set (0.00 sec)
|
|
|
78
|
Главная категория / Nodeny Plus / Re: Nodeny plus + Debain + Accel-ppp
|
: 26 Октября 2016, 03:59:16
|
Как правильно в mysql-процедуре radreply передать эти параметры.
Разобрался, вариант такой годится DROP PROCEDURE IF EXISTS `radreply`; DELIMITER $$ CREATE PROCEDURE `radreply`(IN login VARCHAR(64)) BEGIN DECLARE usr_id INT; DECLARE usr_ip VARCHAR(15) DEFAULT NULL; DECLARE usr_tarif VARCHAR(15) DEFAULT NULL;
SELECT id INTO usr_id FROM users WHERE name=login LIMIT 1; SELECT get_ip(usr_id) INTO usr_ip; SELECT service_id INTO usr_tarif from users_services LIMIT 1;
SELECT NULL,login,'Framed-IP-Address',usr_ip,'='; SELECT NULL,login,'Framed-IP-Netmask','255.255.255.255','='; SELECT NULL,login,'Framed-Protocol','PPP','=';
IF usr_tarif = 1 THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','1024','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','1024','='; END IF;
IF usr_tarif = 2 THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','2048','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','2048','='; END IF;
IF usr_tarif = 3 THEN SELECT NULL,login,'PPPD-Downstream-Speed-Limit','4096','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','4096','='; END IF;
END$$ DELIMITER ; Завтра надо с тегами попробовать Не зря же они в тарифе указаны.
|
|
|
79
|
Главная категория / Nodeny Plus / Re: Nodeny plus + Debain + Accel-ppp
|
: 25 Октября 2016, 18:52:11
|
А как правильно выдрать тариф через радиус. mysql> select param from services; $VAR1 = {'script' => '','min_traf' => '','period' => 2592000,'mode' => '2','speed_out4' => '','speed_in4' => '','speed_out1' => 1024000,'speed_in1' => 1024000,'tags' => 'medium','speed_out3' => '','speed_out2' => '','speed_in2' => '','wait_pos_balance' => '0','speed_in3' => ''};
есть такие значение в тарифе 'speed_out1' => 1024000,'speed_in1' => 1024000,'tags' => 'medium' Как правильно в mysql-процедуре radreply передать эти параметры. Нечто, вроде DROP PROCEDURE IF EXISTS `radreply`; DELIMITER $$ CREATE PROCEDURE `radreply`(IN login VARCHAR(64)) BEGIN DECLARE usr_id INT; DECLARE usr_ip VARCHAR(15) DEFAULT NULL; DECLARE s_param VARCHAR(15) DEFAULT 1024;
SELECT users.id,services.param INTO usr_id,s_param FROM users,services WHERE name=login LIMIT 1; SELECT get_ip(usr_id) INTO usr_ip;
SELECT NULL,login,'Framed-IP-Address',usr_ip,'='; SELECT NULL,login,'Framed-IP-Netmask','255.255.255.255','='; SELECT NULL,login,'Framed-Protocol','PPP','='; SELECT NULL,login,'PPPD-Downstream-Speed-Limit','s_param','='; SELECT NULL,login,'PPPD-Upstream-Speed-Limit','s_param','=';
END$$ DELIMITER ;
|
|
|
81
|
Главная категория / Nodeny Plus / Re: Модуль PON для N+
|
: 19 Февраля 2016, 14:26:22
|
Можно не отвязывать OLT-derevnya1# write ifindex Now saving current ifindex to flash memory... OK! OLT-derevnya1#
wr ifindex и ону которая была зарегестрирована появится на том же порту, даже после перезагрузки олта.
|
|
|
82
|
Главная категория / Nodeny Plus / Re: Модуль PON для N+
|
: 19 Февраля 2016, 11:49:46
|
Примерное ТЗ, что было бы полезно для PON Данные можно выдирать непосрдественно с олта через telnet или snmp. Олт - концентратор (на каждый порт цепляется до 64 ону) Чтобы не углубляться Ону представляет в простом случае тупой конвертор, с одной стороны у неё пон интерфейс оптики, с другой у неё медный порт куда включено уже железо абона, больше от неё нефига не надо. В нашем билинге для удобства ведения абонентов в билинге Добавлено 3 поля в данных клиента. OLT ( OLT-derevnya1 - к какому из олтов bdcom подключен абонент) PORT_OLT (epon0/1:4 - на каком порту олта зарегестрировалась ону )) ONUID ( a0c6.ec00.1461 собственно мак самой ону) 1. Кнопка опрос по telnet 2. Кнопка опрос по snmp 1.1 Нам необходимо узнать в онлайне ли абонентское устройсвто или нет (onu) Заходим на олт telnet 192.168.0.1 login pass OLT-derevnya1# show epon onu-information interface epON 0/1 4 Interface EPON0/1 has registered 1 ONUs: IntfName VendorID ModelID MAC Address Description BindType Status Dereg Reason ---------- --------- -------- -------------- --------------- --------- --------------- ----------------- EPON0/1:4 a0c6.ec00.1461 N/A static auto_configured N/A
a0c6.ec00.1461 - мак-адрес ону Параметр auto_configured говорит нам о том, что ону в онлайне, в противном случае OLT-derevnya1# show epon onu-information interface epON 0/1 14 Interface EPON0/1 has registered 1 ONUs: IntfName VendorID ModelID MAC Address Description BindType Status Dereg Reason ---------- --------- -------- -------------- --------------- --------- --------------- ----------------- EPON0/1:14 BDCM 3024 fcfa.f796.6763 N/A static deregistered power off В Случае если ону deregistered - дальнейшие действия производить не надо (выключена ону, порван оптич кабель, нет короче физики). В случае если ону в онлайне выводим статус (зелёный цвет) в статусе клиента поле onu is online 1.2 Узнаём какой уровень сигнала у данной onu OLT-derevnya1# show epon optical-transceiver-diagnosis interface epON 0/1:4 interface RxPower(dBm) ----------- -------------- epon0/1:4 -19.2 Вплоть до -26 иногда до -28 дбм уровень сигнала приемлим, всё что меньше считается low signal / абонент в таком случае может работать со сбоями, потерями, лагами etc.. Выводим в поле под статусом ону, её уровень сигнала // Примечание, имеем большой парк ону, некоторые в виду своей китайчатины не способны отдавать корректные данные по уровню сигнала 1.3 Теперь нам надо знать, а есть ли физика уже от ону по меди до клиентского устройства, это также может отдать олт OLT-derevnya1# show epon interface ePON 0/1:4 onu port 1 state Hardware state is Link-Up
onu port 1 state показывает какраз 1 медный порт, в случае если стоит 4-портовая (1 оптич порт и 4 медных порта) ону соотвественно будет show epon interface ePON 0/1:4 onu port 2 state для второго порта, 3 и 4. 1.4 Нам нужна необходимость перезагрузить абонентское ону, и такое олт умеет (2-мя способами) Нужна кнопка reset там же в данных об абоненте. Способ 1 OLT-derevnya1# epon reboot onu mac-address a0c6.ec00.1461 Are you sure to reboot the ONU(y/n)?y OLT-derevnya1#
Способ 2 OLT-derevnya1#epon reboot onu interface epON 0/1:4 Are you sure to reboot the ONU(y/n)?y OLT-derevnya1#
Перегружается достаточно быстро, до 10 сек на вскидку. 1.5 Смотрим приходят ли мак-адреса абонента / иключая мак-адрес самой ону OLT-derevnya1# show mac address-table dynamic interface epON 0/1:4 | exclude a0c6.ec00.1461 Mac Address Table (Total 2) ------------------------------------------
Vlan Mac Address Type Ports ---- ----------- ---- ----- 7 f81a.678b.f765 DYNAMIC epon0/1:4
Вот первые мысли, что пришли в голову. Про snmp можно выдрать всю туже информацию, если надо поищу позже.
|
|
|
|