Jump to content

Ubilling 0.8.5 rev 5754


Recommended Posts

При переходе с одной сети на другую не меняет netid у пользователя?

 

CHANGE MultiNetIP (2014200058) FROM 10.0.200.58 ON 10.4.0.24

 

До перехода

Array(    [0] => Array        (            [id] => 871            [netid] => 1            [ip] => 10.0.200.58            [mac] => XX:XX:XX:XX:XX:XX            [option] => NULL        ))

После изменения ip пользователя

Array(    [0] => Array        (            [id] => 871            [netid] => 1            [ip] => 10.4.0.24            [mac] => ХХ:ХХ:ХХ:ХХ:ХХ:ХХ            [option] => NULL        ))

Пользователь перешел с радио на пон.

Edited by Muator
Link to post
Share on other sites

Можете озвучить способ повторения бага? Ибо

Array
(
    [0] => Array
        (
            [id] => 42
            [netid] => 1
            [ip] => 172.30.0.33
            [mac] => 14:88:83:12:48:59
            [option] => NULL
        )

)


Array
(
    [0] => Array
        (
            [id] => 435
            [netid] => 2
            [ip] => 10.10.200.12
            [mac] => 14:88:83:12:48:59
            [option] => NULL
        )

)
Link to post
Share on other sites

У него id одинаковый для обоих случаев...

Шото больно похоже на ручную правку через update таблички ручками.

Edited by l1ght
Link to post
Share on other sites

Был пользователь созданный около 2 лет назад.

Решил перейти на др. технологию доступа с последующим изменением  сетевых настроек на  др. сеть.

 

У существующего Абонента кроме смены ip адреса  ничего не менялось ибо привык к лиц. счету и номеру договора...

 

До перехода

Array(    [0] => Array        (            [id] => ХХ            [netid] => 1            [ip] => 10.0.200.58            [mac] => XX:XX:XX:XX:XX:XX            [option] => NULL        ))

После изменения ip пользователя

Array(    [0] => Array        (            [id] => 871            [netid] => 1 (ДОЛЖНО БЫТЬ 8)            [ip] => 10.4.0.24            [mac] => ХХ:ХХ:ХХ:ХХ:ХХ:ХХ            [option] => NULL        ))

А вот netid нет

Edited by Muator
Link to post
Share on other sites

На демке повторить можете? Я покликал, норм netid меняется.

Оно у него, если несколько раз "потыцать" менялось netid на новый. Но потом, при (пополнении счета)ресете пользователя, возвращается "старый" netid.

Две версии назад, такого небыло.

Edited by sanyadnepr
Link to post
Share on other sites

 

 

Оно у него, если несколько раз "потыцать" менялось netid на новый. Но потом, при (пополнении счета)ресете пользователя, возвращается "старый" netid.

Мы же оба понимаем, что это нереально, потому, что просто нереально?

Я так и представил себе кусок кода, в функции пополнения бабла или ресета, котрый ломиться в табличку nethosts, ищет в ней запись по айпишке юзера, после чего, внезапно меняет netid на какой-то левый.

Link to post
Share on other sites

 

Оно у него, если несколько раз "потыцать" менялось netid на новый. Но потом, при (пополнении счета)ресете пользователя, возвращается "старый" netid.

Мы же оба понимаем, что это нереально, потому, что просто нереально?

Я так и представил себе кусок кода, в функции пополнения бабла или ресета, котрый ломиться в табличку nethosts, ищет в ней запись по айпишке юзера, после чего, внезапно меняет netid на какой-то левый.

 

Понимаем но...

Проверялось это слегка извращенным способом, но при этом проблема воспроизводится.

На сервере доступа "микротик", меняем руками пользователю netid, ресетим пользователя, получаем правильный netid, отлично, так и должно быть.

При переводе пользователя из одной подсети в другую, netid не меняется, пример описан выше.

Если в вебке еще раз поменять пользователю новый айпи на новый айпи из этой же подсети, netid изменяется на корректный и уже после ресета пользователя не слетает на "старый".

Edited by sanyadnepr
Link to post
Share on other sites
Проверялось это слегка извращенным способом, но при этом проблема воспроизводится.

Не вижу способа воспроизведения.

Покликал у себя, покликал на демке, покликал еще где-то, при помощи штатного модуля "смена IP" в профиле - все нормально, netid всегда верный.

 

 

 

На сервере доступа "микротик", меняем руками пользователю netid, ресетим пользователя, получаем правильный netid, отлично, так и должно быть.

О, уже и микротики появились. А он то тут при чем, к состоянию БД?

 

В самом модуле pl_ipchange с 0.8.4 (а именно с введения опции DB_LOCK_ENABLED, кстати можете попробовать повключать/повыключать) до 0.8.6 (там только очистку кеша после смены впулили) не менялось вообще ничего работающего. Ну, иконок еще дорисовали пару на кнопочках.

Edited by nightfly
Link to post
Share on other sites

Не вижу способа воспроизведения.

На его сервере, берем любого "старого" абонента, переводим в другую подсеть, получаем описанное выше, гарантированно.

Меняем новый айпи еще раз на новый, получаем новый netid.

 

О, уже и микротики появились. А он то тут при чем, к состоянию БД?

Конечно он тут не при чем. Он просто участвовал и рядом стоял.  :)

 

В самом модуле pl_ipchange с 0.8.4 (а именно с введения опции DB_LOCK_ENABLED, кстати можете попробовать повключать/повыключать) до 0.8.6 (там только очистку кеша после смены впулили) не менялось вообще ничего работающего. Ну, иконок еще дорисовали пару на кнопочках.

Два релиза назад, смена подсети и netid происходила без вышеописанного. Эта опция не включалась.
Link to post
Share on other sites

Я только что перерыл кучу кода и вообще не вижу как так может происходить...

В модуле при смене ипа передается ип и ид услуги. Дальше по иду услуги находится netid т.к. там прямая связь.

А нет ли там часом какого-то п@зд#ца с сервисами?

Покажите 

select id, netid from services;
Edited by l1ght
Link to post
Share on other sites

 

Я только что перерыл кучу кода и вообще не вижу как так может происходить...

В модуле при смене ипа передается ип и ид услуги. Дальше по иду услуги находится netid т.к. там прямая связь.

А нет ли там часом какого-то п@зд#ца с сервисами?

Покажите 

select id, netid from services;
array ( 0 => array ( 'id' => '1', 'netid' => '1', ), 1 => array ( 'id' => '2', 'netid' => '2', ), 2 => array ( 'id' => '3', 'netid' => '3', ), 3 => array ( 'id' => '4', 'netid' => '4', ), 4 => array ( 'id' => '5', 'netid' => '5', ), 5 => array ( 'id' => '6', 'netid' => '6', ), 6 => array ( 'id' => '7', 'netid' => '7', ), 7 => array ( 'id' => '8', 'netid' => '8', ), )
Edited by Muator
Link to post
Share on other sites

Выглядит как услуги вполне здорового человека.

А как воспроизводите то? Тут не сказано каким именно способом. 

 

 

Проверялось это слегка извращенным способом, но при этом проблема воспроизводится.
Link to post
Share on other sites

 

 

А как воспроизводите то? Тут не сказано каким именно способом. 

 

На его сервере, берем любого "старого" абонента, переводим в другую подсеть, получаем описанное выше, гарантированно. Меняем новый айпи еще раз на новый, получаем новый netid.
 
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...