dm765 Опубликовано 29 октября, 2009 (изменено) · Жалоба Добрый день уважаемые коллеги! В системе работает несколько ВПН серверов и один Радиус. Пользователи авторизуются и получают динамические ИП адреса на Радиус-сервере. Радиус сервер работает на: radius# uname -aFreeBSD 7.1-RELEASE radius# pkg_info freeradius-1.1.7_3 В качестве ВПН сервера выступает Микротик. Одновременно обычно работает 20 пользователей, т.е. 20 PPtP сессий. В конфиге радиуса задан пул на 254 ИП адреса. Периодически возникает проблема при подключении пользователя - сервер не может выдать ИП адрес. Решается удалением файлов db.user_ip_pool и db.user_ip_pool_index и перезагрузкой процесса radiusd. В radiusd.conf относительно пулов адресов прописано так ippool user_ip_pool { range-start = 192.168.54.1 range-stop = 192.168.54.254 netmask = 255.255.255.0 cache-size = 260 session-db = ${raddbdir}/db.user_ip_pool ip-index = ${raddbdir}/db.user_ip_pool_index override = no maximum-timeout = 0 } Изменено 29 октября, 2009 пользователем dm765 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
SmalleR Опубликовано 29 октября, 2009 · Жалоба Не используйте для этого радиус! Зачем он нужен? Пропишите IP пул в настройках ppp профиля в Mikrotik. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 29 октября, 2009 · Жалоба SmalleR, +1 Если адреса динамические - пусть их задаёт PPP сервер, если статические - задавайте радиусом Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба У меня 1 блок ИП адресов (с 192.168.54.1 по 192.168.54.254) на несколько ВПН серверов и у каждого пользователя свои ограничения по скорости. Поэтому удобнее когда адреса выдаются централизовано из одного источника. Все адреса динамические. Когда в качестве ВПН серверов использовался MPD5 то такой проблемы замечено не было. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 29 октября, 2009 · Жалоба Не понял, причем тут IP адреса и ограничения скорости? У вас чем скорость ограничивается? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба Пользователи получают адреса из пула с 192.168.54.1 по 192.168.54.254 Скорость ограничивает радиус. Запись для пользователя в радиусе test User-Password == "teые", Pool-Name := "user_ip_pool" Mikrotik-Rate-Limit += "4096k/4096k" Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
SmalleR Опубликовано 29 октября, 2009 · Жалоба У меня 1 блок ИП адресов (с 192.168.54.1 по 192.168.54.254) на несколько ВПН серверов и у каждого пользователя свои ограничения по скорости. Поэтому удобнее когда адреса выдаются централизовано из одного источника. Все адреса динамические. Когда в качестве ВПН серверов использовался MPD5 то такой проблемы замечено не было. А как бордер узнаёт, каким "ВПН сервером" сейчас обслуживается клиент с выданным IP адресом из одного блока? Mikrotik-Rate-Limit += "4096k/4096k"Зачем тогда знать IP для ограниичения скорости, если используется этот атрибут? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mousus Опубликовано 29 октября, 2009 · Жалоба а разве радиус у вас не базой на postgresql/mysql работает?? помоему выдавать адреса из базы можно, немного подправив саму базу и хранимые процедуры в ней отвечающие за ответ радиусу Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба Пользователь подключается к одному из ВПН серверов (через механизм Raund Robin на ДНС), для того чтобы создалось PPTP соединение, ВПН сервер передает запрос на Радиус и если юзернэйм и пароль правильные, то передает микротику ИП адрес из указанного своего пула и параметр ограничения скорости для этого пользователя. В результате создается PPTP соединение для этого юзэрнэйма, с ИП адресом который выдал Радиус и ограничением скорости который также выдал Радиус. Ограничение скорости привязано к юзэрнэйму. Зачем тогда знать IP для ограниичения скорости, если используется этот атрибут?Не понял этого вопроса. а разве радиус у вас не базой на postgresql/mysql работает?Базы нет, все пользователи и их ограничения хранятся в текстовом файле. Складывается такое ощущение, что выданные радиусом ИП адреса, после использования не возвращаются обратно в пул. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба Чем можно прочитать db.user_ip_pool и db.user_ip_pool_index эти файлы? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
mousus Опубликовано 29 октября, 2009 · Жалоба ну если у вас всё настолько тривиально то вам сюда http://code.google.com/p/cakebilling/ Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба ну если у вас всё настолько тривиально то вам сюда http://code.google.com/p/cakebilling/ Это к какому вопросу? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
SmalleR Опубликовано 29 октября, 2009 · Жалоба Складывается такое ощущение, что выданные радиусом ИП адреса, после использования не возвращаются обратно в пул. Похоже, что это не очень природно для Radius. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 · Жалоба Чем можно прочитать db.user_ip_pool и db.user_ip_pool_index эти файлы?С этим разобрался. Остается вопрос - почему же радиус отказывается выдавать ИП адрес, если аутентификация прошла? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
networks Опубликовано 29 октября, 2009 · Жалоба Сделайте лучше через sql, это даст вам больше гибкости :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 29 октября, 2009 (изменено) · Жалоба Хотелось бы все же с этим вопросом разобраться. Може у кого и были подобные проблемы. Сделайте лучше через sql, это даст вам больше гибкости :)Если есть возможность, укажите пожалуйста ссылочку на рабочий конфиг Радиус + МуSQL, если я правильно понял. Изменено 29 октября, 2009 пользователем dm765 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 30 октября, 2009 · Жалоба freeradius.org -> wiki radiusd debug Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 2 ноября, 2009 · Жалоба С проблемой разобрался. Уточните еще, как Вы понимаете параметр в настройках ip pool override = no Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 4 ноября, 2009 (изменено) · Жалоба Вероятно он отвечает за выдачу IP адреса с пула. Если стоит yes - то он будет выдавать один и тот-же IP сразу нескольким абонентам, если no - то проверять, выдал ли он его или нет. В вашем случае, возможно, радиус уже выдал один ип, и для другого абонента должен выдать такой-же, но не выдаёт благодаря этой настройке (что правильно). IAS по крайней мере работает именно так. Изменено 4 ноября, 2009 пользователем terrible Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
MagMike Опубликовано 5 ноября, 2009 · Жалоба Чем можно прочитать db.user_ip_pool и db.user_ip_pool_index эти файлы? rlm_ippool_tool Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 24 ноября, 2009 · Жалоба Ребята спасибо за внимание к вопросу, но походу проблема не снялась с повестки...ИП адреса все же заканчиваются. Заметил еще такую вещь, что например команда radwho показывает 13 активных сессий (и это совпадает с числом сессий на серверах доступа), а rlm_ippool_tool 60 выданных ИП адресов. В идеале должно же количество активных сессий = числу выданных ИП? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
rus-p Опубликовано 26 ноября, 2009 · Жалоба Чему у вас равен maximum-timeout ? Получает ли радиус от микротика accounting-stop, после того как пользователь закрывает сессию ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 27 ноября, 2009 · Жалоба 1. Радиус получает от микротика accounting-stop , все сессии закрываются корректно. 2. maximum-timeout = 0 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
rus-p Опубликовано 30 ноября, 2009 (изменено) · Жалоба Тогда только дебаг и логи. Потеря стоповых udp пакетов достаточно распространена. Бороться с этим можно, например, перейдя в sql. Либо порыться в настройках миктотика и найти там таймаут на сессию, тогда это же время указать в радиусе, чтоб раз в сутки например ресетилась сессия. Cекция accounting в радиусе работает ? Изменено 30 ноября, 2009 пользователем rus-p Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
dm765 Опубликовано 2 декабря, 2009 (изменено) · Жалоба accounting работает. В микротике есть session-timeout , но это время было не активировано.. Активировал, поставил 00:00 посмотрим результат... Изменено 2 декабря, 2009 пользователем dm765 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...