Jump to content

Recommended Posts

скачал ..

буду выписывать то что найду

на данный момент (компиляция)

sensors.h:285:

не неопределенная функция ToString

думаю упущено #ifdef DEBUG

 

после установки нет файла для конфигурации smux

 

создал сам по типу

<Module smux>

Server = 127.0.0.1

Port= 4445

Password = 123456

</Module>

В результате

не пускается .. в логах старгазера

2011-09-02 15:39:54 -- Error: Cannot connect.

 

С радиусом (даже с пред идущими библиотеками которые удачно работали с 2.407) .. начались сигфаулты (думаю из за измемений в структуре клиентов пока не рылся там)

Link to post
Share on other sites

Палево! :)

sensors.h поправил, там действительно надо было #ifdef DEBUG .. #endif

Cannot connect - а коннектиться-то есть куда? И порт нестандартный... Вот мой конфиг:

<Module smux>                                                              
   	Port = 199                                                             
   	Server = 10.0.0.1                                                      
</Module>

Конфиг на стороне snmpd:

smuxpeer .1.3.6.1.4.1.38313
smuxsocket 10.0.0.1

В радиусе я, кажется, ничего не менял.

Link to post
Share on other sites

сделай игнор смукса если конф есть а сервер не отвечает и перезапрос на соединение .. а то будут глюки.

Я сейчас пытаюсь приплюсовать радиус атрибуты для шейпера .... :D разнес твой старгазер в пух и прах. Если что выйдет отошлю для изучения (добавил поле шейп ин и шейп аут к тарифу тока вот как их дергать параллельно с назвением тарифа в структуру для передачи радиуса.. пока тут толчусь )

Link to post
Share on other sites

Я все таки это сделал :D))

Добавил в тариф UpSpeed i DOWNSpeed :) Пока что только для файловой DB, передаю их по радиус атрибуту .. Осталось как то придумать чтоб его в конфигуратор виндовый воткнуть. Он у меня что то не компилируется

Link to post
Share on other sites

сделай игнор смукса если конф есть а сервер не отвечает и перезапрос на соединение .. а то будут глюки.

Я сейчас пытаюсь приплюсовать радиус атрибуты для шейпера .... :D разнес твой старгазер в пух и прах. Если что выйдет отошлю для изучения (добавил поле шейп ин и шейп аут к тарифу тока вот как их дергать параллельно с назвением тарифа в структуру для передачи радиуса.. пока тут толчусь )

Игнор ни в коем случае. Раз админ указал в конфиге smux, значит он ему нужен. А раз необходимый функционал реализовать невозможно (нет коннекта) то и сервер стартовать не должен.

А вот переустановку соединения надо сделать, да.

 

Добавить к тарифу поля шейпера не так просто как кажется на первый взгляд.

Link to post
Share on other sites

ну если лимитировать вес трафик а не по директориям .. выходит нормально и не сложно , На счет смукса может на тот монент когда стартует сервер , сервер snmp недоступен но станет досупен позже .. Зачем тормозить все остальное пока не станет доступен snmp сервер ? пусть если нет коннекта просто грузит следующий модуль а не вешает ядро, и через какой либо интервал сново пытается зайти на snmpd

Link to post
Share on other sites

ну если лимитировать вес трафик а не по директориям .. выходит нормально и не сложно , На счет смукса может на тот монент когда стартует сервер , сервер snmp недоступен но станет досупен позже .. Зачем тормозить все остальное пока не станет доступен snmp сервер ? пусть если нет коннекта просто грузит следующий модуль а не вешает ядро, и через какой либо интервал сново пытается зайти на snmpd

Доступность snmpd решается управлением приоритетами запуска дэмонов при старте сервера. Никого ведь не удивляет что Stargazer не стартует если недоступен сервер БД (хотя этот вопрос активно обсуждается)?

Даже если шейпа всего два на тариф - их надо добавить в БД, в ядро системы (передача в OnConnect/OnDisconnect), в плагины conf_sg, conf_rpc и remote, в графический и консольный конфигуратор. И при всем этом такие шейпы мало кого устроят. Полноценная реализация должна уметь привязывать шейпы к направлениям, временным интервалам, порогам, переопределять шейпы для конкретного пользователя, поддерживаться всеми плагинами БД (неплохо бы еще и обратную совместимость реализовать)... В общем, куча работы.

Link to post
Share on other sites

да делов конечно там много ... я только в файловую бд добавил и связал с конфигуратором никсовым и вскоре убедился что зря мучался так как в итоге линукс у меня отказывается нормально шейпить ppp как не кручу с загран трафиком все титптоп, а с росийским траблы. Склонен винить в этом mppe так как с мту глюки и т.п .... но не вариант ТАКОЕ на продакшен поставить.

На счет snmpd он не всегда на той же машине что и ядро биллинга .. и эта машина может быть недосупна в сжязи с какими либо проблемами

Link to post
Share on other sites

...

На счет snmpd он не всегда на той же машине что и ядро биллинга .. и эта машина может быть недосупна в сжязи с какими либо проблемами

Как и СУБД, не так-ли? :)

Проблема в том что SMUX - пассивное звено. Он не может отследить потерю связи. После регистрации на snmp-сервере он только получает запросы и отдает ответы. По этому я даже затрудняюсь представить себе как отслеживать состояние соединения. В прочем, надо почитать стандарт повнимательнее...

Link to post
Share on other sites
да делов конечно там много ... я только в файловую бд добавил и связал с конфигуратором никсовым и вскоре убедился что зря мучался так как в итоге линукс у меня отказывается нормально шейпить ppp как не кручу с загран трафиком все титптоп, а с росийским траблы. Склонен винить в этом mppe так как с мту глюки и т.п .... но не вариант ТАКОЕ на продакшен поставить. На счет snmpd он не всегда на той же машине что и ядро биллинга .. и эта машина может быть недосупна в сжязи с какими либо проблемами

Не получилось прикрутить к ppp шейпы? Не пробовал на форвардинге резать с метками?

Link to post
Share on other sites

прикрутить получилось .. даже передаю лимиты в радиус атрибутах .. просто ppp глючит как только его в фильтр загоняю (на разные сети по разному трафик начинает ходить). Сменил линукс с дебиана на убунту-сервер .. вроде полегчало ... ядро то же . глюков с ppp меньше

Link to post
Share on other sites

# Defines fee charging rules.                                                  
# 0 - classic rules, allow fee charge even cash is negative;                   
# 1 - disallow fee charge if cash value is negative;                           
# 2 - disallow fee charge if there is not enought cash (cash < fee).           
# Parameter: optional                                                          
# Value: 0 - 2                                                                 
# Default: 0 (classic)                                                         
# FeeChargeType = 0                                                            

# Enable or disable reconnect on tariff change                                 
# Parameter: optional                                                          
# Values: yes, no                                                              
# Default: no                                                                  
# ReconnectOnTariffChange = no

Но их можно не тестить, они покрыты юнит-тестами. Работают.

Link to post
Share on other sites

Дергалка пользователей с TariffChange.

Я вообще через OnChange меняю скорость юзерам и не надо ресесить юзера.

if [ "$param" = "tariff" ];
then
####################################################################################################################

#echo "User: '$login'. Parameter $param changed from '$oldValue' to '$newValue'" >> /var/stargazer/users.chg.log

new_tariff=`echo $newValue`
old_tariff=`echo $oldValue`


  # Меняем шейп, если тариф был изменен
  if [ "$newValue" != "$oldValue" ];
  then
speedkb=`fspeedkb $newValue`

mark=$(cat /var/stargazer/users/$login/shaper_mark)
mark1=$(cat /var/stargazer/users/$login/shaper_mark1)
echo "$speedkb" > /var/stargazer/users/$login/shaper_rate


# Shaper
######################################################################################
#INET-Download
/sbin/tc class change dev $int_iface_down parent 1:1 classid 1:$mark htb rate $speedkb

#INET-Upload
/sbin/tc class change dev $int_iface_up parent 1:1 classid 1:$mark1 htb rate $speedkb
/sbin/tc class change dev $int_iface_down parent 1:1 classid 1:$mark1 htb rate $speedkb
######################################################################################
  fi

####################################################################################################################
fi

Link to post
Share on other sites

Кстате по ходу работы над авторизацией юзеров .. может все таки добавить в Всегда Online вариант когда несколько IP у юзера ?

На текущем этапе это чертовски сложно. Потребует переписать почти все ядро.

Link to post
Share on other sites
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...