mpd 5.6 + ipfw table + dir 300.b3e problem?

Help
Sancho
2013-04-10
2013-05-17
  • Sancho
    Sancho
    2013-04-10

    Имеется сервер FreeBSD 8.3-RELEASE #0: amd64
    На нем установлен mpd-5.6 и настроен как pptp сервер.
    Авторизация клиентов по радиусу.

    Ситуация следующая.
    При успешной авторизации на сервере виндовым клиентом или через какой-либо роутер, радиус передает mpd cледующую строчку:
    "/bin/echo User-Name = $2, mpd-table-static +=\"8=$3 29\" | radclient -d /usr/local/share/freeradius/ -x $5:3799 coa 5yfed565gf76f346gu6", сооответственно
    в выводе ipfw table 8 list видно например 6.15.14.6/32 29

    НО есть одно "но", есть роутер DLINK DIR-300 b3e.
    При авторизации он успешно подключается, если смотреть tcpdump`ом,
    то видно что COA запрос приходит, но в таблице Ipfw пусто!!!
    Тут же отключаю роутер, с этими же учетными данными подключаюсь виндовым клиентом
    или использую другой роутер, например DLINK DIR-300 rev.b5, то все проходит нормально.

    Какие будут мысли на сей счет?

     
    Last edit: Sancho 2013-04-11
  • Сравнить данные tcpdump'а двух роутеров.
    Или включить подробный лог на mpd и посмотреть, где ошибка.

     
    Last edit: Dmitry S. Luhtionov 2013-04-11
  • Sancho
    Sancho
    2013-04-11

    Что хочу добавить, если с биллинга(там же радиус) вручную запустить комманду описаную выше то все приходит нормально. И еще, линк успешно дропается если биллинг посылает мпд такую команду "/bin/echo User-Name = $2 | radclient -x $4:3799 40 5yfed565gf76f346gu6"
    Вообще, не понятно, как роутер может влиять на такое поведение, причем определенной ревизии :(

    Посоветуете ключи для вывода tcpdump`a чтоб можно было в более-менее удобочитаемом виде посмотреть?
    И, в конфиге мпд не указывал флаги, он полный вывод в лог делает?

     
  • Sancho
    Sancho
    2013-04-11

    Вот лог мпд

    при подключении злосчатсного роутера, при этом в таблицу ipfw ничего не пишется:

    Apr 11 14:28:22 vpn2 mpd: radsrv: CoA request
    Apr 11 14:28:22 vpn2 mpd: radsrv: Got RAD_USER_NAME: old
    Apr 11 14:28:22 vpn2 mpd: radsrv: Get RAD_MPD_TABLE_STATIC: 8=6.15.14.6/32 29
    Apr 11 14:28:22 vpn2 mpd: radsrv: Matched link: L-1

    при подключении, например, виндового клиента, в таблицу все нормально заносится:

    Apr 11 14:42:03 vpn2 mpd: radsrv: CoA request
    Apr 11 14:42:03 vpn2 mpd: radsrv: Got RAD_USER_NAME: old
    Apr 11 14:42:03 vpn2 mpd: radsrv: Get RAD_MPD_TABLE_STATIC: 8=6.15.14.6/32 29
    Apr 11 14:42:03 vpn2 mpd: radsrv: Matched link: L-1

     
  • Для линка L1 дайте вывод команды "show auth" для обеих случаев
    Для более детального лога сделайте "log +iface2"

     
  • Sancho
    Sancho
    2013-04-11

    Приложил лог мпд разделенный на три части, каждая подписана.
    И вывод show auth, тоже разделен на три части и подписан.

     
    Last edit: Sancho 2013-04-11
    Attachments
  • Sancho
    Sancho
    2013-04-12

    Ну, что же, со сборкой 5.7 от 12 апреля моя проблема вроде как решилась, надеюсь не только в отношении вышеописанного роутера, потому как и на роутерах некоторых других производителях это тоже проявлялось. Седня ночью так же установлю на боевом серваке и запущу, посмотрю, что завтра на утро будет. Если "наброса" не будет, значит все прошло скорее всего успешно...

    Upd:
    поторопился, не проканало, это я забыл убрать правил прописаное вручную :(((

    Upd2:
    $%^ $% %&^( Таки работает, и, скорее всего на 5.6 тоже работало, позже опишу препологаемую причину...

     
    Last edit: Sancho 2013-04-12
  • Sancho
    Sancho
    2013-04-15

    Короче, у меня установлен lanbilling. При успешной авторизации по радиусу он запускает на выполенение "стартовый" скрипт.
    Добавив в этот скрипт sleep 1 перед /bin/echo User-Name=old, mpd-table-static +=\"8=$3 11\" | radclient -x $5:3799 coa 5yfed565gf76f346gu6 все зашуршало как надо.

     
    • Допускаю что это ограничение LanBilling, но как-то странно выглядит CoA через секунду после авторизации.

       
  • Sancho
    Sancho
    2013-05-17

    Не думаю, что в ланбиллинге дело, говорю же, на некоторых моделях роутеров такое проявляется, не на всех. Тем более, что с обычными клиентами винды или других систем таких проблем не было замечено.

     
  • Возможно это проблемы высокой загрузки CPU железного роутера, что он не успевает отрабатывать запросы авторизации ?
    При CoA запросе "дергается" линк. Поэтому некоторые китайские поделки могут некорректно это воспринимать.