roysbike Опубликовано 10 февраля, 2012 · Жалоба Есть идея выдавать статический NG-интерфейс при подключению к MPD5. Например логин 0001 - выдавать не только framed-ip и rules, но и номер интерфейса, например ng1. Если ли такая возможность? никто не реализовывал? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 10 февраля, 2012 · Жалоба Какую цель преследуете? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 10 февраля, 2012 · Жалоба Какую цель преследуете? например, снятие нагрузки с интерфейсов) это так ) не сказать цель. Так поиграть. На скока выростит нагрузка при 800 туннелей? У меня такое предположение , что бушку серверу сорвет. Тут еще другая тема. У меня 14 серверов) Если в подьездах стояло бы умное железо, то с порта снимал бы. А кто нить вообще практикует снятие нагрузки с ng-x ?? и например в rrdtool пихая в личный кабинет? Так Freedom делает в Воронеже. у них VPN Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 11 февраля, 2012 (изменено) · Жалоба Если Вам нужно получить "на входе" номер ng интерфейса конкретного юзера, то как вариант можно отпарсить (по IP или логину) вывод команды "show summary", подключившись telnet-ом к mpd конкретного NAS-а. Вывод show summary такой [] show summary Current daemon status summary Iface Bund Link LCP Device User From SB Initial pptp DOWN UNSPEC PPPoE Initial pppoe DOWN 00:00:00:00:00:00 ppp_1 Initial pppoe DOWN 00:00:00:00:00:00 B Down P Down ng0 B-2 Up SB-4 Opened pptp UP USER1 10.0.196.109 ng1 B-3 Up SB-5 Opened pptp UP USER2 10.0.198.28 ng2 B-4 Up SB-6 Opened pptp UP USER3 10.0.194.4 Подключаться telnet-ом к NAS-у можно например через nc Изменено 11 февраля, 2012 пользователем AlKov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 11 февраля, 2012 · Жалоба Если Вам нужно получить "на входе" номер ng интерфейса конкретного юзера, то как вариант можно отпарсить (по IP или логину) вывод команды "show summary", подключившись telnet-ом к mpd конкретного NAS-а. Вывод show summary такой [] show summary Current daemon status summary Iface Bund Link LCP Device User From SB Initial pptp DOWN UNSPEC PPPoE Initial pppoe DOWN 00:00:00:00:00:00 ppp_1 Initial pppoe DOWN 00:00:00:00:00:00 B Down P Down ng0 B-2 Up SB-4 Opened pptp UP USER1 10.0.196.109 ng1 B-3 Up SB-5 Opened pptp UP USER2 10.0.198.28 ng2 B-4 Up SB-6 Opened pptp UP USER3 10.0.194.4 Подключаться telnet-ом к NAS-у можно например через nc дело в том , что в ловлю пакеты радиуса и знаю на каком Nas подключен абонент и с каким интерфейсом. Можно ли за ранее в отдавать данные с базы, к какой интерфейс поднимать? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ilya Evseev Опубликовано 11 февраля, 2012 · Жалоба ловлю пакеты радиуса и знаю на каком Nas подключен абонент и с каким интерфейсом. Можно ли за ранее в отдавать данные с базы, к какой интерфейс поднимать? Вроде бы нет. Но можно оперативно сохранять в базе информацию "логин-шлюз-интерфейс" с помощью up-script: set iface up-script scriptset iface down-script script Mpd can optionally run a user program every time one of network protocols (IPCP/IPv6CP) at the interface is brought up or down. The up-script is called like this: script interface proto local-ip remote-ip authname [ dns1 server-ip ] [ dns2 server-ip ] peer-address If up-script exit status is not 0, mpd will kill respective protocol. http://mpd.sourceforge.net/doc5/mpd28.html Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 13 февраля, 2012 (изменено) · Жалоба можно попытаться приcваивать им имя через радиус. N Name Access Accounting Req Resp Req Resp ... 20 mpd-iface-name - + - - Изменено 13 февраля, 2012 пользователем andriko Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 13 февраля, 2012 (изменено) · Жалоба можно попытаться приcваивать им имя через радиус. N Name Access Accounting Req Resp Req Resp ... 20 mpd-iface-name - + - - Каким образом? P.S. Кстати, радиус-атрибут mpd-iface-name есть только в недавно вышедшей mpd 5.6 (у меня 5.5) и как с ним работать ничего не нагуглить пока не удалось. :( Изменено 13 февраля, 2012 пользователем AlKov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 14 февраля, 2012 · Жалоба наверно добавить в радрепли новый атрибут, ну и разрешить его где нужно... вот, на виртуалке, добавил в мпд.конф set iface name blabla получил: Feb 14 12:52:46 f8-2 mpd: [b-1] IPCP: LayerUp Feb 14 12:52:46 f8-2 mpd: [b-1] 10.0.0.1 -> 10.0.1.2 Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Up event Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Rename interface ng0 to blabla1 blabla1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1466 inet 10.0.0.1 --> 10.0.1.2 netmask 0xffffffff Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 14 февраля, 2012 · Жалоба наверно добавить в радрепли новый атрибут, ну и разрешить его где нужно... вот, на виртуалке, добавил в мпд.конф set iface name blabla получил: Feb 14 12:52:46 f8-2 mpd: [b-1] IPCP: LayerUp Feb 14 12:52:46 f8-2 mpd: [b-1] 10.0.0.1 -> 10.0.1.2 Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Up event Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Rename interface ng0 to blabla1 blabla1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1466 inet 10.0.0.1 --> 10.0.1.2 netmask 0xffffffff И? Ну получим мы при подключении вместо ng0 ... ng3000 - blabla0 ... blabla3000 и что дальше? Где жёсткая "привязка" к Login1 интерфейса blabla1 и к Login3000 интерфейса blabla3000? Всё остаётся на своих местах - mpd будет по-прежнему назначать Login1 случайный (свободный) "номер" из blabla "серии".. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 14 февраля, 2012 · Жалоба наверно добавить в радрепли новый атрибут, ну и разрешить его где нужно... вот, на виртуалке, добавил в мпд.конф set iface name blabla получил: Feb 14 12:52:46 f8-2 mpd: [b-1] IPCP: LayerUp Feb 14 12:52:46 f8-2 mpd: [b-1] 10.0.0.1 -> 10.0.1.2 Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Up event Feb 14 12:52:46 f8-2 mpd: [b-1] IFACE: Rename interface ng0 to blabla1 blabla1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1466 inet 10.0.0.1 --> 10.0.1.2 netmask 0xffffffff забавно) завтра попробую привзять логины к интерфейсу) Спасибо! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 14 февраля, 2012 (изменено) · Жалоба забавно) завтра попробую привзять логины к интерфейсу) Спасибо! Действительно забавно! У Вас чтО, всего 5 логинов? Это я к тому, что вот, на виртуалке, добавил в мпд.конф set iface name blabla И еще забавно будет ребутать mpd при каждом добавлении нового юзера (ведь надо же будет редактировать mpd.conf для каждого нового "блабла"). Ну а если их (юзеров) у вас тыщ 5-10, то mpd.conf будет выглядеть вообще наипрезабавнейше! ;) Изменено 14 февраля, 2012 пользователем AlKov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 15 февраля, 2012 (изменено) · Жалоба наверно добавить в радрепли новый атрибут, ну и разрешить его где нужно... у меня стенда под радиус сейчас нет, поетому проделал со статикой, roysbike вот проверит на радиусе :) INSERT INTO `radreply` SET UserName='vasia', Attribute='mpd-iface-name',op='=',Value='vasia'; INSERT INTO `radreply` SET UserName='petya', Attribute='mpd-iface-name',op='=',Value='petya'; п.с. вторую часть предложения придется разобрать самому ... Изменено 15 февраля, 2012 пользователем andriko Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 16 февраля, 2012 (изменено) · Жалоба наверно добавить в радрепли новый атрибут, ну и разрешить его где нужно... у меня стенда под радиус сейчас нет, поетому проделал со статикой, roysbike вот проверит на радиусе :) INSERT INTO `radreply` SET UserName='vasia', Attribute='mpd-iface-name',op='=',Value='vasia'; INSERT INTO `radreply` SET UserName='petya', Attribute='mpd-iface-name',op='=',Value='petya'; п.с. вторую часть предложения придется разобрать самому ... Как и обещал. Вообщем. Добавили атрибут в базу mpd-iface-name += имя_итерфейса. При авторизации, сервер с mpd создает интерфейс с заданным именем. Мы привезали логин к интерфейсу) Вообщем, может кому пригодится. 12985: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1400 inet 172.18.0.123 --> 172.16.59.31 netmask 0xffffffff 9766: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1400 inet 172.18.0.123 --> 172.16.40.105 netmask 0xffffffff 10537: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1400 inet 172.18.0.123 --> 172.16.43.126 netmask 0xffffffff 7304: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1400 inet 172.18.0.123 --> 172.16.30.145 netmask 0xffffffff 16710: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1460 inet 172.18.0.123 --> 172.16.74.4 netmask 0xffffffff 15954: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1480 inet 172.16.1.2 --> 172.16.70.248 netmask 0xffffffff Изменено 16 февраля, 2012 пользователем roysbike Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 16 февраля, 2012 · Жалоба Теперь другая проблема) Feb 17 01:50:22 vpn122 kernel: ng36: changing name to '19368' Feb 17 01:50:34 vpn122 kernel: 13331: changing name to 'ng28' Feb 17 01:52:51 vpn122 kernel: ng28: changing name to '16501' Feb 17 01:53:22 vpn122 kernel: 14106: changing name to 'ng33' . Вообщем при создании бандла он резервирует ng интерфейс и просто его переменовывает в логин. При отключении, он менят на ng. Как отлкючить логирование в messages о смене имени интерфайса?) у меня логи парсит nagios, заорался просто Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 17 февраля, 2012 (изменено) · Жалоба Теперь другая проблема) Feb 17 01:50:22 vpn122 kernel: ng36: changing name to '19368' Feb 17 01:50:34 vpn122 kernel: 13331: changing name to 'ng28' Feb 17 01:52:51 vpn122 kernel: ng28: changing name to '16501' Feb 17 01:53:22 vpn122 kernel: 14106: changing name to 'ng33' . Вообщем при создании бандла он резервирует ng интерфейс и просто его переменовывает в логин. При отключении, он менят на ng. Как отлкючить логирование в messages о смене имени интерфайса?) у меня логи парсит nagios, заорался просто Настроить в syslog.conf оправку этих сообщений в отдельный файл, или в /dev/null. P.S. И встречный вопрос - как отреагировал радиус на такие "экзотические имена" интерфейсов? Статистика (input/output) нормально снимается? И работает ли CoA с mpd с этой экзотикой? Изменено 17 февраля, 2012 пользователем AlKov Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 17 февраля, 2012 · Жалоба странно, что оно вообще с "чисто цифровыми" именами работает :) лог пишется тут /usr/src/sys/net/if.c: unmodified: line 2282 log(LOG_INFO, "%s: changing name to '%s'\n", ifp->if_xname, new_name); Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 17 февраля, 2012 · Жалоба лог пишется тут /usr/src/sys/net/if.c: unmodified: line 2282 Ну зачем же так издеваться над ОС? :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 19 февраля, 2012 · Жалоба Установил mpd 5.6 и проверил новую "игрушку". Обнаружилась интересная особенность (правда не относящаяся к mpd) - если длина имени переименованного интерфейса превышает 6 символов, перестаёт работать динамический роутинг(у меня rip). ifconfig отображает полное имя, а вот RIP почему-то "обрезает" всё что более 6 символов и при этом не анонсирует маршрут роутеру. Вот такая интересная "картина маслом".. :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lagman Опубликовано 21 февраля, 2012 · Жалоба Установил mpd 5.6 и проверил новую "игрушку". Обнаружилась интересная особенность (правда не относящаяся к mpd) - если длина имени переименованного интерфейса превышает 6 символов, перестаёт работать динамический роутинг(у меня rip). ifconfig отображает полное имя, а вот RIP почему-то "обрезает" всё что более 6 символов и при этом не анонсирует маршрут роутеру. Вот такая интересная "картина маслом".. :) RIP R.I.P. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlKov Опубликовано 21 февраля, 2012 · Жалоба RIP R.I.P. А по делу что-нибудь есть сообщить? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
terrible Опубликовано 24 февраля, 2012 · Жалоба А rip сам в лог что-нибудь пишет по этому поводу? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
andriko Опубликовано 28 февраля, 2012 · Жалоба не только рип - посмотрел с опенбгпд - таж петрушка похоже на исторический 640Кб 6 символов на имя девайса хотя роут монитор показывает полные имена. возможно, при компиляции использутся какие нить "копетибл" структуры Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...