napTu
СitizensТип контенту
Профили
Форум
Календарь
Все, що було написано napTu
-
походу этой фичи в 2.4 нету? жаль, очень жаль, мне тут как раз юзеры с двойными ип на одном логине жалуются, я им через личный скрипт делал работу обоих ип одновременно - подсчет не интересовал ибо безлимитка.
-
и кому пришло в голову поля обозначать звёздочкой? скрипт принимает вместо звёздочки список файлов в текущей директории. Я всё взял конечно в кавычки, но осадок неприятный остался! %)
-
билин. после перехода с 2.0 на 2.403b приходится править скрипт OnUserAdd. Ибо когда юзер добавляется, то поля в его конфе еще пустые, а потом они уже правятся после нажатия "ОК". наверное перенесу функционал скрипта OnUserAdd в OnUserChange. Кроме того поменялось обозначение полей передаваемых в OnUserChange...
-
короче ситуация такая: захожу в кофигуратор правлю юзера сохраняю обновляю во время обновления пытаюсь снова открыть юзера конфигуратор зависает в логе стг обнаруживается множество broken pipe что интересно, проблемы была как на версии 2.0, так и на 2.403b сейчас.(bsd410)
-
Я завернул веб трафик на локальный http при отключенном авторизаторе или при отсутствии денег на счету.
-
интересная конструкция. у меня собирается трафик с помощью one2many в один интерфейс iface0, а у тебя вгоняется множество интерфейсов сразу в netflow. Интересно, а зачем считается трафик на внешнем, не абонентском интерфейсе (em0)?
-
в моём вышеприведенном примере собирается только входящий в интерфейс поток. пришлось разбираться с тем как эта хрень работает. Нашел и обработал пример с двусторонним сбором: mkpeer fxp0: tee lower left connect fxp0: fxp0:lower upper right mkpeer fxp0:lower one2many left2right many0 connect fxp0:lower.left2right fxp0:lower many1 right2left name fxp0:lower.right2left o2m mkpeer o2m: netflow one iface0 name o2m:one netflow mkpeer netflow: ksocket export inet/dgram/udp msg netflow:export connect inet/127.0.0.1:4440 msg netflow: settimeouts { inactive=5 active=300 }
-
Спасибо большое, а то я уже было расстроился из-за : Сделал так (freeBSD4.10): для загрузки нетфлоу при старте системы вписал в /boot/loader.conf ng_ether_load="YES" ng_tee_load="YES" ng_netflow_load="YES" в /etc/rc.local ngctl -f /etc/netflow.conf в /etc/netflow.conf mkpeer fxp0: tee lower right connect fxp0: fxp0:lower upper left mkpeer fxp0:lower netflow right2left iface0 name fxp0:lower.right2left netflow msg netflow: settimeouts { inactive=5 active=300 } mkpeer netflow: ksocket export inet/dgram/udp msg netflow:export connect inet/127.0.0.1:4443 надеюсь будет работать
-
/usr/sbin/ngctl -f- <<-SEQ ? msg netflow: ng_netflow_settimeouts { inactive_timeout=15 active_timeout=60 } ? -SEQ ngctl: send msg: Function not implemented ngctl: line 1: error in file если не трудно, мож подскажете как?
-
у кого нибуть есть идеи как с этим ng_netflow сенсором останавливать закачку при окончании денег на счету абонента? Не очень то приятно потом ему объяснять что деньги посчитались потом, по окончании его мегазакачки.
-
не совсем понимаю смысл пинговалки. похоже пингуется только онлайн клиент и при удачном пинге пишется время последнего актива. а если у клиента фаервол не пускает пинги, тогда что? кроме того ведь есть встроенная проверка жив ли клиент в авторизаторе. Разу уж есть пинговалка, хочется пользоваться её результатом, а где его можно взять, кроме последнего времени активности?
-
Совместная работа двух серверов Stargazer
тема ответил в Goblin пользователя napTu в Питання по Stargazer
этот параметр есть только в сырцах стг2.4 можно ли запустить два стг2.0 на одной машине? на ExecMsgKey он похоже не реагирует -
Совместная работа двух серверов Stargazer
тема ответил в Goblin пользователя napTu в Питання по Stargazer
хотел было запустить паралельно второй старгез на той же машине, версию 2.0, а он не запускается. изменил местоположение, TCP/UDP порты, никак. в лог ничего не пишет, в процессах не висит. возможно ли так сделать? надо поэкспериметировать с дивертом, при этом не ложить рабочую версию. -
не скажитес, у меня под хрю на ноутбуке такая же байда. может это какой то софт или драйвера так себя ведут. пока не поборол.
-
В чем проблема "старые темы"? Я ищу в поиске причины падения стг. На данный вопрос не дано вразумительного ответа. Я поделился своим опытом
-
Пройдитесь поиском по форуму. Все кто сталкивался с этим багом решили проблему только сменой порта или перезагрузкой. В логах стг остановлен, в процессах его нет, в нетстате никого нет на порту, но после старта он не может прибиндить админ порт
-
я заметил что сервер падает при изменении одного длинного примечания на другое длинное
-
Тоже сталкиваюсь с подобной проблемой иногда. Стг походу отключает юзера по таймауту. Частично лечится увеличением таймаута.
-
Да ничего там не висит на этом порту. У меня стг2 периодически падает и, после перезапуска скриптом, не биндится админ порт. Приходится его менять на 55555, а после следующего падения на 5555 и так по кругу. Походу это глюк. Вопрос в том как узнать причину падения??? 3амечено что падать стало чаще после смены максимума юзеров со 100 до 200. Возможно еще связано с высокой загрузкой процессора.
-
Скрипты onConnect/onDisconnect
тема ответил в Den_LocalNet пользователя napTu в Питання по Stargazer
Скрипт с примером получения из конфигурации дополнительных данных о пользователе, а также с управлением приоритетами очередей: (freeBSD,ipfw) # Login LOGIN=$1 #user IP IP=$2 #cash CASH=$3 #user ID ID=$4 #получаем из поля DATA0 данные о приоритетах трафика в формате "90,30,5" UDATA0=`grep 'Group=' /usr/stg/var/users/$LOGIN/conf | cut -d '=' -f2` UDATA0=`echo $UDATA0 | tr -d A-Z` UDATA0=`echo $UDATA0 | tr -d a-z` prio1=`echo $UDATA0 | cut -d ',' -f1` prio2=`echo $UDATA0 | cut -d ',' -f2` prio3=`echo $UDATA0 | cut -d ',' -f3` if [ ! $prio1 ] then prio1=90 prio2=30 prio3=5 fi #получаем данные о тарифе и остатке FreeMb trf=`grep 'Tariff=' /usr/stg/var/users/$LOGIN/conf | cut -d '=' -f2` uah=`grep 'FreeMb=' /usr/stg/var/users/$LOGIN/stat | cut -d '=' -f2` uah=`echo $uah | cut -d '.' -f1` ipn=`echo $IP | cut -d '.' -f4` echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH" >> /usr/stg/var/users/$LOGIN/connect.log echo " " > NULL #для хранения текущего состояния пользователя используется файл с номером ID, который запускается также при перезаливке правил IPFW echo "#!/bin/sh" > /usr/stg/usr/user$ID #ifconfig lo0 192.168.55.$ipn/32 add #sleep .1 каждому юзеру отведены доп адреса на lo0, используемые в зависимости от типа трафика #здесь организован доступ к сокс. Для безлима доступность определяется наличием FreeMb. #дополнительный скрипт контроллирует остаток FreeMb if [ $trf != "bezlim" ] then #allow to 1080 echo "ipfw add `expr $ID '*' 10 + 30002` allow ip from $IP to 192.168.55.4 1080 in via rl0" >> /usr/stg/usr/user$ID else if [ $uah -gt 0 ] then echo "ipfw add `expr $ID '*' 10 + 30002` allow ip from $IP to 192.168.55.4 1080 in via rl0" >> /usr/stg/usr/user$ID else echo "ipfw add `expr $ID '*' 10 + 30002` deny ip from $IP to 192.168.55.4 1080 in via rl0" >> /usr/stg/usr/user$ID fi fi #правила разрешающие доступ через rl0 и на прокси echo "ipfw add `expr $ID '*' 10 + 30001` fwd 127.0.0.1,3128 all from $IP to any 80,81,82,8080,8101,8181 in recv rl0" >> /usr/stg/usr/user$ID echo "ipfw add `expr $ID '*' 10 + 30003` allow all from $IP to any in recv rl0" >> /usr/stg/usr/user$ID echo "ipfw add `expr $ID '*' 10 + 30004` allow all from any to $IP out xmit rl0" >> /usr/stg/usr/user$ID #организация отдельных очередей для юзеров #типы трафика: маленькие пакеты - высокий приоритет, http страницы через прокси - средний приоритет, файлы закачек через прокси и прочий трафик не через прокси - низкий приоритет. echo "ipfw queue `expr $ID '*' 10 + 1000` config pipe 1 weight $prio1 queue 20" >> /usr/stg/usr/user$ID echo "ipfw queue `expr $ID '*' 10 + 1001` config pipe 1 weight $prio2 queue 20" >> /usr/stg/usr/user$ID echo "ipfw queue `expr $ID '*' 10 + 1002` config pipe 1 weight $prio3 queue 20" >> /usr/stg/usr/user$ID #доступ на очередь #очередь настроена на пропуск трафика далее по правилам ipfw echo "ipfw add `expr $ID '*' 10 + 40001` queue `expr $ID '*' 10 + 1000` ip from any to $IP,192.168.55.$ipn,192.168.99.$ipn in recv ppp0 iplen 1-555" >> / echo "ipfw add `expr $ID '*' 10 + 40002` queue `expr $ID '*' 10 + 1001` ip from any to 192.168.55.$ipn in recv ppp0 iplen 556-9999" >> /usr/stg/usr/user$ echo "ipfw add `expr $ID '*' 10 + 40003` queue `expr $ID '*' 10 + 1002` ip from any to $IP,192.168.99.$ipn in recv ppp0 iplen 556-9999" >> /usr/stg/usr/u #в дисконнекте не забываем удалить # ipfw queue 100 delete # ipfw queue 200 delete и т.д. #запускаем созданный скрипт sh /usr/stg/usr/user$ID > NULL -
блин, перегрузил старгазер - стал вываливать bind admin socket filed Шо делать? пока что сменил порт на 55555 - работает. через нетстат не вижу занятого 5555 и еще. не понятно на кокой интерфейс цепляется стг. я бы поставил только локал и внутренний, а оно похоже цепляет все.
-
Изменение стоимости трафика в зависимости от време
тема ответил в stvol пользователя napTu в Питання по Stargazer
Я написал на основе cron-oвой подмены файла rules затем kill -HUP. У меня есть rules для ночи, для дня и для вечера. Три направления DIR1,2,3 соответствуют своему периоду времени. Т.о. достигается отдельный подсчет трафика по разным ценам. -
И как интересно происходит борьба с воровством трафика? Ведь такая ситуация возможна в любой сети со свичами.
-
Возможно, стоит подумать об открытии файервола только перед запросом юзера на обмен данными и его закрытии по завершению. Это хотя бы позволит исключить воровство трафика когда настоящий пользователь проавторизирован, но не качает данные. Не знаю как, но подумать надо. Может что-то вроде локального прокси. Есть запрос на обмен - открываем файервол через авторизатор, нет - закрываем. Или сделать работу сервера и авторизатора динамической. Нет данных - выход по таймауту. Есть данные - сервер шлёт запрос на авторизацию и по подтверждению открывается фаервол. Короче тотже VPN, только в профиль.
