Название: Параметри підключення абона Отправлено: tom от 12 Февраля 2019, 13:36:15 Вітаю, питання може більше до Стаса.
В яких випадках може видалятися значення поля uid в таблиці mac_uid. І в яких випадках взагалі обнуляються всі значення запису в таблиці? Є випадки коли в абона зникає параметри підключення, дивлюсь в базу, а в нього в uid пусто. Використовується один на порту. Сьогдні звернулися з подібною проблемою де використовую модуль з аліасами. Там зникли у клієнта параметри підключення, і в базі взагалі не знаходжу його мака, тобто повністю зник запис. Як віддебажити подібну проблему? Що в коді може таке робити і за яких умов. Перелопати процедуру radreplay - там немає жодного апдейта поля uid. Дякую за підказку Название: Re: Параметри підключення абона Отправлено: Efendy от 12 Февраля 2019, 19:47:23 web/user/_dhcp.pl вызывается когда абон с неизвестным маком попал на заглушку и дальше ввел корректный пароль. Биллинг знает, что такой-то ip в данный момент принадлежит этому залогиненному клиенту. Просто к слову скажу, что он не создает "привязку к ip" или "привязку ip к мак" - в данный момент ip это просто связующее звено чтобы получить мак. И вот мак привязывается уже к учетке. Я это несколько раз повторял, просто и сейчас повторю от фонаря на память.
Далее в коде встречается: Код: my $rows = Db->do("UPDATE mac_uid SET uid=0 WHERE uid=? AND ip<>INET_ATON(?)", $uid, $ses::ip); Другими словами, я делал чтобы на одной учетке был привязан только один мак. Я уже абсолютно точно не помню нахуа, но скорее всего для того чтобы юзеры не могли напривязывать много маков, возможно для каки-то жульничеств. Но. Потом я эту строку закомментировал. Так что проверь не раскомментирована ли она у тебя Возможно, где-то еще обнуляется, но там уже гляну позже Название: Re: Параметри підключення абона Отправлено: tom от 12 Февраля 2019, 23:43:31 web/user/_dhcp.pl вызывается когда абон с неизвестным маком попал на заглушку и дальше ввел корректный пароль. Биллинг знает, что такой-то ip в данный момент принадлежит этому залогиненному клиенту. Просто к слову скажу, что он не создает "привязку к ip" или "привязку ip к мак" - в данный момент ip это просто связующее звено чтобы получить мак. И вот мак привязывается уже к учетке. Я это несколько раз повторял, просто и сейчас повторю от фонаря на память. Далее в коде встречается: Код: my $rows = Db->do("UPDATE mac_uid SET uid=0 WHERE uid=? AND ip<>INET_ATON(?)", $uid, $ses::ip); Другими словами, я делал чтобы на одной учетке был привязан только один мак. Я уже абсолютно точно не помню нахуа, но скорее всего для того чтобы юзеры не могли напривязывать много маков, возможно для каки-то жульничеств. Но. Потом я эту строку закомментировал. Так что проверь не раскомментирована ли она у тебя Возможно, где-то еще обнуляется, но там уже гляну позже Якщо один на порту, то мак просто перезаписується. Там де аліаси, там немає один на порту - і там нашли "глюк", один з операторів випадково поставив галочку один на порту абону і у всих хто на цьому порту затерло )) Але є іноді затирання uid, хочу вияснити причину цього затирання, оськільки скрізь стоїть один на порту. І клієнт реально один на порту. Рядок закоментував, був розкоментований. Название: Re: Параметри підключення абона Отправлено: fet4 от 27 Апреля 2019, 14:18:11 Код: my $rows = Db->do("UPDATE mac_uid SET uid=0 WHERE uid=? AND ip<>INET_ATON(?)", $uid, $ses::ip); Но. Потом я эту строку закомментировал. Так что проверь не раскомментирована ли она у тебя В таком случае если клиент не с фиксированным подключением, получится привязать одну учетку к нескольким записям. |