Jump to content

Recommended Posts

Posted

В свое время использовали ICRadius + MySQL для карточной диалапной платформы: авторизация по логину/паролю + ограничение по времени устанавливалось параметром Total-Time-Limit (например, 18000 - это 5 часов). С ограничением доступа по времени ICRadius справлялся отлично.

А можно ли на той же связке ICRadius + MySQL вводить ограничение по трафику при авторизации по pptp абонентов, подключающихся по домовым сетям? Фактически речь идет об организации карточной же платформы , но параметром ограничения доступа пользователя в инет будет не время на линии (как в dialup), а объем трафика (как в домовых сетках).

Можно конечно кроном постоянно дергать статистику по текущим соединениям (например, раз в минуту) и сверять полученные данных с остатком для данной "pptp-интернет-карточки". Но частые "дергания" подгружают сервак, редкие "дергания" приведут к тому, что пользователь будет "перебирать" отпущенный ему трафик.

Заранее благодарен за идеи.

Posted

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

А вообще, радиус вроде умеет байты считать, почитайте к своей реализации справочку...

Posted

Вы все правильно пишете - радиус умеет считать трафик, но я уже описал выше проблему - для этого надо периодически кроном дергать текущие показания счетчиков. Это я знаю. Но это сильно подгружает сервер с радиусом. Хотел бы выслушать другие идеи решения этой задачи.

Posted

Сменить модель учета трафика. Например на сбор статистики в NetFlow/sFlow, радиус заставить сбрасывать сессию по окончании денег.

Posted
сбор статистики в NetFlow/sFlow

Наверное это правильно, если pptp терминируется на какой-нибудь cisco. У нас сам же Linux терминирует pptp. С него и дергать NetFlow?

Posted
сбор статистики в NetFlow/sFlow
Наверное это правильно, если pptp терминируется на какой-нибудь cisco. У нас сам же Linux терминирует pptp. С него и дергать NetFlow?

Без проблем. Ipcad и вперед.
Posted

Есть параметр. Атрибут "Session-Octets-Limit", при превышении - дропнет сессию. Желательно заставить pppd периодически сбрасывать interim accounting, и подправлять эту величину на актуальную, т.к. когда юзера сбросит - он может быстро переконнектится, и ваш биллинг не успеет стопнуть его (все зависит от исполнения).

Posted
Атрибут "Session-Octets-Limit", при превышении - дропнет сессию.

На сколько я знаю октеты и байты - это несколько разные вещи. В какой "пропорции" они между собой связаны?

Posted

Делал по правилам iptables.

При создании сессии создаётся разрешающее правило для этого инетрфейса/IP.

При закрытии сессии правило удаляется, насчитанные байты конвертируются в деньги, деньги списываются.

Раз в секунду проверяется лимит, если превышен - сессия сбрасывается.

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

Из плюсов - можно сделать бесплатную зону, если поколдовать - то зоны с разной тарификацией.

 

Байты и октеты - суть одно и то же.

Posted

угу, если я правильно помню - октет - это 8 бит.

А вообще,более-менее нормальный биллинг должен уметь считать трафик по направлению, как у телефонистов. Кстати, никто не задавался вопросом "раздать инет по направлению"?

То есть локал, район,регион,область,россия,мир по разным ценам(для анлимитов - повременка %)

Posted
Кстати, никто не задавался вопросом "раздать инет по направлению"?

То есть локал, район,регион,область,россия,мир по разным ценам(для анлимитов - повременка %)

Мы когда-то так делали, потом смысла не стало.

Хотя биллинг до сих пор честно считает по направлениям у помегабайтников...

Но самые большие мастера этих дел в СНГ хохлыукраинцы.

У них чуть ли не все провы делят по ценам UA-IX и внешку.

Posted
В этом случае как минимум NetFlow. Городить огород с iptables будет сложновато.
NetFlow c pptp ещё более сложновато, особенно учитывая задержку экспорта в 1 минуту минимум.

Для этого есть более другие решения (ISG, EDX), но они несколько монстроваты для тех, кто что-то лабает на коленке..

Posted

UglyAdmin - статические IP для клиентов, и все дела. В тарификации +-1 минута IMHO несущественны, даже для разных временных диапазонов, ну и в пакете NetFlow содержится инфа о времени начала flow и конце, можно поделить по среднестатической цифре. Хотя не очень красивое решение. Как вариант - заставить экспортера в межтарифные промежутки сбросить статистику по flow, и начать считать их заново.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.