Zap&Count All
Zap&Count All
В меню Online добавить кнопочку [Zap&Count ALL]. Я пока не вижу кнопочки Add 2log (ну раз разработчик говорит есть, значит где то есть) но уже хочется разом убирать 20-30 "подвисших" сессий, очень актуально после падения сервера..
-
- Site Admin
- Сообщения: 5746
- Зарегистрирован: Пт янв 28, 2005 3:11 pm
- Контактная информация:
-
- Сообщения: 3
- Зарегистрирован: Вт сен 19, 2006 9:29 am
- Откуда: Kaliningrad, Russia
- Контактная информация:
у меня после окончания сессии, пользователь висит в активных сессиях. на тарифных планах с трафиком это еще нормлаьно, потому как там траф не бугает и соотвественно не считается. а вот повременные тарифные планы этого не терпят им насчитывается лишнее время и снимает деньги. ZAP_ALL не отрабатывается. и при активной сессии при отработке скрипта billd -all выдается :
Error: Lost Alive / Login: test-obshaga, Last Alive: 172, Session-ID: 1/0/1/0_000000BB
где посмотреть , что поправить можно? сервер доступа cisco 3745, конфигурация как на сайте описано. протокол PPPoE, только скидывалку я немного поправил под себя (Hangup).
-----------added---------
просто zap & add2log отрабатывает.
автоматизировать бы хотелось, потому, как насчитывает лишнее.
Error: Lost Alive / Login: test-obshaga, Last Alive: 172, Session-ID: 1/0/1/0_000000BB
где посмотреть , что поправить можно? сервер доступа cisco 3745, конфигурация как на сайте описано. протокол PPPoE, только скидывалку я немного поправил под себя (Hangup).
-----------added---------
просто zap & add2log отрабатывает.
автоматизировать бы хотелось, потому, как насчитывает лишнее.
-
- Site Admin
- Сообщения: 5746
- Зарегистрирован: Пт янв 28, 2005 3:11 pm
- Контактная информация:
-
- Сообщения: 3
- Зарегистрирован: Вт сен 19, 2006 9:29 am
- Откуда: Kaliningrad, Russia
- Контактная информация:
ясно. я только начал пользовать поэтому спросил.
по поводу циски: я просто написал скрпит на bash, с содержимым из nas.pl и в billd сделал исправления:
# my $ret = hangup(\%NAS, "$nas_port_id", "$line->[0]", { ACCT_SESSION_IS => $acct_session_id,
# FRAMED_IP_ADDRESS => "$line->[3]" });
system "/usr/local/abills/libexec/kill_user.sh $RAD{USER_NAME}"; # моя строка
----kill_user.sh----
#!/usr/local/bin/bash
if [ $# -lt 1 ]; then
echo " Usage: `basename $0` username" 1>&2
exit 1
fi
cisco_user='abills';
NAS_IP='192.168.2.212';
SNMP_COM="bill_write_cmnt"
SNMPSET="/usr/local/bin/snmpset"
INTNAME=`finger @192.168.2.212 | awk '{print $1 " " $2}' | grep $1 | awk '{print $1}' | sed s/Vi/Virtual-Access/g`
INTNUM=`/usr/local/bin/snmpwalk -v 1 -c $SNMP_COM -O n $NAS_IP .1.3.6.1.2.1.2.2.1.2 | grep $INTNAME"$" | awk '{print $1}' | sed s/.1.3.6.1.2.1.2.2.1.2.//g`
$SNMPSET -v 1 -c $SNMP_COM $NAS_IP 1.3.6.1.2.1.2.2.1.7.$INTNUM i 2 > /dev/null 2>&1
----end kill_user.sh----
может и криво, но работает. на циске в конфиге соотвественно снмп для записи и ip finger
по поводу циски: я просто написал скрпит на bash, с содержимым из nas.pl и в billd сделал исправления:
# my $ret = hangup(\%NAS, "$nas_port_id", "$line->[0]", { ACCT_SESSION_IS => $acct_session_id,
# FRAMED_IP_ADDRESS => "$line->[3]" });
system "/usr/local/abills/libexec/kill_user.sh $RAD{USER_NAME}"; # моя строка
----kill_user.sh----
#!/usr/local/bin/bash
if [ $# -lt 1 ]; then
echo " Usage: `basename $0` username" 1>&2
exit 1
fi
cisco_user='abills';
NAS_IP='192.168.2.212';
SNMP_COM="bill_write_cmnt"
SNMPSET="/usr/local/bin/snmpset"
INTNAME=`finger @192.168.2.212 | awk '{print $1 " " $2}' | grep $1 | awk '{print $1}' | sed s/Vi/Virtual-Access/g`
INTNUM=`/usr/local/bin/snmpwalk -v 1 -c $SNMP_COM -O n $NAS_IP .1.3.6.1.2.1.2.2.1.2 | grep $INTNAME"$" | awk '{print $1}' | sed s/.1.3.6.1.2.1.2.2.1.2.//g`
$SNMPSET -v 1 -c $SNMP_COM $NAS_IP 1.3.6.1.2.1.2.2.1.7.$INTNUM i 2 > /dev/null 2>&1
----end kill_user.sh----
может и криво, но работает. на циске в конфиге соотвественно снмп для записи и ip finger
-
- Site Admin
- Сообщения: 5746
- Зарегистрирован: Пт янв 28, 2005 3:11 pm
- Контактная информация:
-
- Сообщения: 95
- Зарегистрирован: Сб июн 24, 2006 5:38 pm
~AsmodeuS~ писал(а):Это тот же способ что делает билинг если не указать
NAS_MNG_USER
#!/bin/sh
CISCO="x.x.x.x"
USERC="admin"
RSH="/usr/bin/rsh"
test -z "$1" && exit 1
VIRTUALINT=`/usr/bin/rsh -l $USERC $CISCO show users | grep -i " $1 " | awk '{print $1}';`
Vi=`echo $VIRTUALINT | sed -e "s/[[:alpha:]]*\([[:digit:]]\{1,\}\)/\1/"`
test -z "$Vi" && exit 2
$RSH -l $USERC $CISCO clear interface virtual-access $Vi
exit 0