Биллинговая система Nodeny

Главная категория => Nodeny 49 => Тема начата: Vespertilio от 11 Октября 2009, 10:53:43



Название: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 11 Октября 2009, 10:53:43
Вобщем после обновления с 49.06 до 49.31 биллинг перестал логиниться на микротик и выставлять правила. Причем вроде бы не сразу а через пару часов.
В логах noserver вот такое нашел:

11.10.2009 00:18:09 Starting noserver
Out of memory during "large" request for 536875008 bytes, total sbrk() is 272621568 bytes at hw_mikrotik.pl line 84.

помогите плиз! Пока всем абонентам открыл доступ в ручную.


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Efendy от 11 Октября 2009, 17:31:59
а сколько по top скрипт памяти откушивает?


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Efendy от 11 Октября 2009, 17:55:49
Хотя я предварительно догадываюсь в чем бок. По API микротик в ответе передает длину данных. Если вдруг какой-то сбой (у него) и он передаст длину очень большую, то скрипту не хватит памяти. Врядли микротик пытался передать мегабайты, думаю это его глюк, хотя странно, что повторяющийся. Вот сейчас думаю как обрабатывать неверную длину. Давай предварительно сделаем так. В hw_mikrotik.pl срока 113
Цитировать
return $len;

перед ней вставь код:

Код:
  if( $len>10**6 )
  {
     &hw_recv_data($sock,\$c,1000);
     $len=-1;
  }


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 11 Октября 2009, 19:43:22
Код вставил.

nodeny.pl хавает ~11Метров.



Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 11 Октября 2009, 19:47:28
Да и при обновлении он заменил файлик nofire.pl я потом обратно залил файл nofire.pl из архива mikrotik.queue


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 11 Октября 2009, 20:06:53
Еще один бок, но это не так срочно. Пока биллинг работал, он насоздавал 70 дублирующих записей IP для каждого пользователя в Address-List и их количиство увеличивается.. это за неделю работы. Вроде в коде описана синхронизация, интересно почему она не работает...

И возможно ли сделать вывод работы скриптов hw_mikrotik в какой-нибуть лог. Типо debug режим :-)


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите l
Отправлено: Vespertilio от 11 Октября 2009, 20:17:31
Вот еще кусок лога:

Код:
11.10.2009 21:16:33 Процесс с pid=80072 не отвечает на сигналы. Вероятно, не запущен. Удаляю pid-file
11.10.2009 21:16:33 Starting noserver
Undefined subroutine &main::time_now called at /usr/local/nodeny/nofire.pl line 124.
11.10.2009 21:16:36 Процесс с pid=80076 не отвечает на сигналы. Вероятно, не запущен. Удаляю pid-file
11.10.2009 21:16:36 Starting noserver
Undefined subroutine &main::time_now called at /usr/local/nodeny/nofire.pl line 124. 

ИМХО не стартует nofire.pl, только вот почему? На 49.08 работало нормально все. В принципе ошибку он выдает, только я не силен в Перле, поэтому не знаю что тут фиксить:
Код:
if (&time_now()>$NF_t_sync)
 {
    &NF_Debug('Synchronization');
    my $old_t_sync=$NF_t_sync;
    my %ip_list=();
    my ($ip,$list,$p_list);
    $NF_t_sync=&time_now()+$NF_t_check;
    if ( !&HW_get_ip_list({'list_ptr'=>\%ip_list}) )
    {
       &NF_Debug("Error getting ip lists");
    }
......


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Efendy от 11 Октября 2009, 22:01:21
Насчет ошибки "Undefined subroutine &main::time_now" - это косяк я уже описывал, в 50.32й версии уже не будет, пока что вручную надо поменять все &time_now() на &TimeNow().

Насчет debug-режима:

Код:
$NF_verbose=1;	# 1 - действия выводить `на экран`, 2 - очень подробно


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 12 Октября 2009, 00:01:15
Ок спасибо, попробую


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Vespertilio от 12 Октября 2009, 00:08:21
Огромное спасибо! Помогло.


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: wise от 10 Ноября 2009, 01:24:09
Привет ! Решили проблему с многократным дублированием в access-list ?


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: VitalVas от 10 Ноября 2009, 01:56:38
дубляжу в микротику нету


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: Maks от 10 Ноября 2009, 09:40:34
Подскажите люди дорбые с Микротиком

Работают ли альтернативные направления если роутером выступает микротик.
И использовать стандартные функции управления (API)

При чтении мануала я понял что понятие как альтернативное направление отсутствует, скорость будет только одна. Max-limit:

Правельно ли я понял или ошибся?


Название: Re: Проблема с синхоринизацией с Mikrotik! Помогите срочно плз.
Отправлено: versus от 10 Ноября 2009, 09:54:33
пошел оффтоп! Проблема решена, поэтому тему закрываю