RG-45 Опубликовано 26 апреля, 2016 (изменено) · Жалоба Привет! Обращение к тем юзает связку accel-ppp(radius)+lanbilling ,кто как кикает сессии pppoe . Может кто поделится скриптиком или поможет написать . Не бить ногами, никогда не писал скрипты ,получилась болванка : #!/bin/bash # # drop session pppoe by accel-ppp # # LOGIN=$1 nc 10.0.17.2 2001 terminate username LOGIN exit 0 Изменено 26 апреля, 2016 пользователем RG-45 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NiTr0 Опубликовано 26 апреля, 2016 · Жалоба не занимайтесь скриптоонанизмом, юзайте DM (RFC3576)... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 26 апреля, 2016 · Жалоба nc 10.0.17.2 2001 terminate username LOGIN exit 0 эквивалентно accel-cmd terminate username LOGIN Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
RG-45 Опубликовано 26 апреля, 2016 · Жалоба nc 10.0.17.2 2001 terminate username LOGIN exit 0 эквивалентно accel-cmd terminate username LOGIN Поясните пожста. Вчем? не занимайтесь скриптоонанизмом, юзайте DM (RFC3576)... Я не нашел атрибута в словаре биллинга . Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NiTr0 Опубликовано 26 апреля, 2016 · Жалоба Я не нашел атрибута в словаре биллинга . какого? и добавить ручками - не (если биллинг действительно его шлет но разрабы включить забыли)? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 27 апреля, 2016 · Жалоба echo "User-Name=LOGIN" | radclient -x ip_bras:3799 disconnect пароль_accel Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
RG-45 Опубликовано 27 апреля, 2016 · Жалоба echo "User-Name=LOGIN" | radclient -x ip_bras:3799 disconnect пароль_accel Проясните что это ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 27 апреля, 2016 · Жалоба RG-45 это PoD-запрос, о нём написано в первом же ответе в этом топике. вы вообще читаете, что вам пишут? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
RG-45 Опубликовано 27 апреля, 2016 · Жалоба RG-45 это PoD-запрос, о нём написано в первом же ответе в этом топике. вы вообще читаете, что вам пишут? Нет не читаю !!!! Я понимаю только картинки !!!! .....Травишь .... Конечно читаю . Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
hsvt Опубликовано 27 апреля, 2016 (изменено) · Жалоба Скрипт /usr/local/billing/handler, его логи в /usr/local/billing/srvctl.log COA - password - секрет для радиуса и DM. --action edit мы не используем, --action start мы тоже не используем, ip передается в --action start только один - тот который в sessionsradius в дебаг пишутся все действия, мы используем только --action stop: при смене скорости и блокировке. Первое: в действии —stop нужно сделать два крупных ветвления если —reason changed, ветка смена скорости иначе ветка остановки сессии, если остановка - тогда stop Как только работа будет отлажена, можно будет закомментировать строку log_error "DEBUG" внутри скрипта, уберутся строки содержащие DEBUG. #!/usr/bin/bash # # ###################################### ### Created by Vitaliy Razzhivin ### ### Network Solution, 2015 ### ### razzhivin@lanbilling.ru ### ### LB-base-2.0-007+ ### ### CentOS 5.x-6.x ### ### Accel-PPP ### ###################################### # # Prerequisites: # - netmask util (e.g: rpm -ivh http://pkgs.repoforge.org/netmask/netmask-2.3.7-3.2.el5.rf.x86_64.rpm) # - freeradius-utils (yum install freeradius-utils) PARAMS="$*" # all parameters for ./handler from billing LOG='/usr/local/billing/srvctl.log' # no comments COA_PORT='3799' # port is default COA_SECRET='YOURPASSWORD' # coa secret key RADCLIENT='/usr/bin/radclient -t1 -r1 -c1 -x' # use mega-special radius client that support CoA :) # flushing variables ACTION='' REASON='' SESSION='' LOGIN='' NAS='' IP='' SHAPE='' OLDSHAPE='' BNGNAME='' MAC='' GUEST='' PASSWORD='' OLDBLOCKED='' BLOCKED='' log() { echo "[`date +'%d-%m-%Y %H:%M:%S'`] (${SUBSCRIBER} ${IP}) - $1" >> $LOG # log regular events } log_error() { echo "[`date +'%d-%m-%Y %H:%M:%S'`] - $1 [$PARAMS]" >> $LOG # log error events } # parsing handler parameters while [ -n "$1" ] do case $1 in "--action") ACTION=$2 ;; "--reason") REASON=$2 ;; "--session") SESSION=$2 ;; "--login") LOGIN=$2 ;; "--nas") NAS=$2 ;; "--ip" | "--net") IP=$2 ;; "--shape") SHAPE=$2 ;; "--oldshape") OLDSHAPE=$2 ;; "--opt-bng-name") BNGNAME=$2 ;; "--mac") MAC=$2 ;; "--guest") GUEST=$2 ;; "--password") PASSWORD=$2 ;; "--oldblocked") OLDBLOCKED=$2 ;; "--blocked") BLOCKED=$2 ;; *) log_error "Unknown parameters: $1, $2" ;; esac shift 2 done log_error "DEBUG" case $ACTION in "stop") if [ -z ${LOGIN} ] then log_error "LOGIN is not defined" exit 1 fi if [ -z ${NAS} ] then log_error "NAS is not defined" exit 1 fi if [ -z ${IP} ] then log_error "IP is not defined" exit 1 fi if [ ${REASON} = 'changed' ] then if [ -z ${SHAPE} ] then log_error "SHAPE is not defined" exit 1 fi if [ -n ${OLDSHAPE} ] then log "Changing speed ${OLDSHAPE} => ${SHAPE}" echo "User-Name=${LOGIN}, Framed-IP-Address=${IP}, Filter-Id=${SHAPE}" | ${RADCLIENT} ${NAS}:${COA_PORT} coa ${COA_SECRET} >> ${LOG} fi else log "Logging off subscriber or blocked => ${REASON}" echo "User-Name=${LOGIN}, Framed-IP-Address=${IP}" | ${RADCLIENT} ${NAS}:${COA_PORT} disconnect ${COA_SECRET} >> ${LOG} fi ;; "isg-stop") echo "1" > /dev/null ;; "quota") echo "1" > /dev/null ;; "start") echo "1" > /dev/null ;; "edit") echo "1" > /dev/null ;; "off") echo "1" > /dev/null ;; "on") echo "1" > /dev/null ;; "create") echo "1" > /dev/null ;; "delete") echo "1" > /dev/null ;; *) log_error "Unknown action $action" ;; esac Изменено 27 апреля, 2016 пользователем hsvt Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
RG-45 Опубликовано 27 апреля, 2016 (изменено) · Жалоба В общем решили так : скрипт для ланбиллинга : #!/bin/bash # session pppoe by accel-ppp # # LOGIN=$2 echo terminate username ${LOGIN} | nc 10.0.17.2 2001 10.0.17.2 это IP acell-ppp не забываем прописать данный скрипт в настройках модуля радиуса. exit 0 Все работает !!! Пользуйтесь господа ! Изменено 27 апреля, 2016 пользователем RG-45 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 28 апреля, 2016 · Жалоба RG-45 А чем вас традиционный способ(и даже можно сказать, универсальный) с PoD через radclient не устроил. Зачем нужно пользовать CLI-команды? Ну реально, PoD по User-Name будет работать не только с accel, но и со многими другим BRAS (хотя некоторые хотят чётко session-id вместо user-name) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...