johnnys Опубликовано 21 апреля, 2014 Добрый день. Пытаюсь собрать accel-ppp. Что я делаю не так? git clone git://accel-ppp.git.sourceforge.net/gitroot/accel-ppp/accel-ppp cd accel-ppp mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=/opt/accel-ppp -DBUILD_IPOE_DRIVER=TRUE .. make && make install В результате ошибка: [ 98%] Generating driver/ipoe.ko /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:169:46: error: macro "__kfree_rcu" requires 2 arguments, but only 1 given /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:170: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c: In function ‘ipoe_process_queue’: /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:662: error: ‘__kfree_rcu’ undeclared (first use in this function) /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:662: error: (Each undeclared identifier is reported only once /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:662: error: for each function it appears in.) /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c: In function ‘ipoe_nl_cmd_del_net’: /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:1550: error: ‘__kfree_rcu’ undeclared (first use in this function) /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c: In function ‘ipoe_nl_cmd_del_interface’: /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:1599: error: ‘__kfree_rcu’ undeclared (first use in this function) /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c: In function ‘ipoe_nl_cmd_del_vlan_mon’: /tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.c:1738: error: ‘__kfree_rcu’ undeclared (first use in this function) make[4]: *** [/tmp/accel-ppp/build/drivers/ipoe/driver/ipoe.o] Error 1 make[3]: *** [_module_/tmp/accel-ppp/build/drivers/ipoe/driver] Error 2 make[2]: *** [drivers/ipoe/driver/ipoe.ko] Error 2 make[1]: *** [drivers/ipoe/CMakeFiles/ipoe_drv.dir/all] Error 2 make: *** [all] Error 2 uname -a: CentOS release 6.5 (Final) Linux IPoE 2.6.32-431.11.2.el6.i686 #1 SMP Tue Mar 25 17:17:46 UTC 2014 i686 i686 i386 GNU/Linux ЗЫ: Стоит использовать архитектуру x86_64? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 21 апреля, 2014 git pull и снова попробуй собрать Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
johnnys Опубликовано 21 апреля, 2014 git pull и снова попробуй собрать Всё собралось. Спасибо. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dimka88 Опубликовано 22 апреля, 2014 (изменено) Никто не наблюдал падение accel-ppp (vlan per user) при падении радиус сервера расположенного физически на другом сервере? И такое падание, не пойму с чем связано. [2014-04-12 01:13:10]: info: bond0.2029.115: recv [RADIUS(1) Accounting-Response id=1] [2014-04-12 01:13:10]: info: bond0.2029.115: ipoe: session started [2014-04-12 01:13:10]: info: bond0.2029.115: pppd_compat: ip-up started (pid 47540) [2014-04-12 01:13:10]: info: bond0.2029.115: send [DHCPv4 Ack xid=f460430c yiaddr=178.*.*.222 chaddr=a0:f3:c1:3a:*:* <Message-Type Ack> <Server-ID 178.*.*.254> <Lease-Time 300> <Router 178.*.*.254> <Subnet 255.255.252.0> <DNS 10.0.0.120,91.*.*.254>] [2014-04-12 01:13:10]: info: bond0.2029.115: ipoe: session timed out [2014-04-12 01:13:10]: debug: bond0.2029.115: terminate [2014-04-12 01:13:10]: info: bond0.2029.115: send [RADIUS(1) Accounting-Request id=1 <User-Name "bond0.2029.115"> <NAS-Identifier "IPoE"> <NAS-IP-Address 10.0.10.1> <NAS-Port 835> <NAS-Port-Type Ethernet> <Calling-Station-Id "a0:f3:c1:3a:*:*"> <Called-Station-Id "bond0.2029.115"> <Acct-Status-Type Stop> <Acct-Authentic RADIUS> <Acct-Session-Id "3e8181264dde2247"> <Acct-Session-Time 10> <Acct-Input-Octets 2880> <Acct-Output-Octets 1684> <Acct-Input-Packets 5> <Acct-Output-Packets 7> <Acct-Input-Gigawords 0> <Acct-Output-Gigawords 0> <Framed-IP-Address 178.*.*.222> <Acct-Terminate-Cause Lost-Carrier>] [2014-04-12 01:13:10]: info: bond0.2029.115: recv [RADIUS(1) Accounting-Response id=1] [2014-04-12 01:13:10]: warn: bond0.2029.115: pppd_compat: ip-up is not yet finished, terminating it ... [2014-04-12 01:13:10]: info: bond0.2029.115: pppd_compat: ip-down started (pid 47544) [2014-04-12 01:13:10]: info: bond0.2029.115: pppd_compat: ip-up finished (0) [2014-04-12 01:13:10]: info: bond0.2029.115: pppd_compat: ip-down finished (0) [2014-04-12 01:13:10]: info: bond0.2029.115: ipoe: session finished Изменено 22 апреля, 2014 пользователем Dimka88 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
johnnys Опубликовано 22 апреля, 2014 А реализовать L3 режим со стартом по DHCP не планируете? Я правильно понимаю что L3 режим со стартом по DHCP пока не реализован? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Tanatos Опубликовано 23 апреля, 2014 Всем добрый день, есть работающий accel-pppd 1.7.3 настроен как pppoe сервер, раздает клиентам серые айпи. начали появляться юридические лица, взяли у апстрима блок белых адресов. Теперь нужно каким то образом присвоить конктретный айпишник конкретному клиенту, остальные так и продолжат работать на серых. Как то можно реализовать это на сабже? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ua_mister Опубликовано 23 апреля, 2014 Всем добрый день, есть работающий accel-pppd 1.7.3 настроен как pppoe сервер, раздает клиентам серые айпи. начали появляться юридические лица, взяли у апстрима блок белых адресов. Теперь нужно каким то образом присвоить конктретный айпишник конкретному клиенту, остальные так и продолжат работать на серых. Как то можно реализовать это на сабже? Радиусом выдавайте белые адреса кому нужно. Это не головная боль аццеля, это в биллинге реализовывается. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 23 апреля, 2014 да Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wtyd Опубликовано 23 апреля, 2014 да Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ? Скорее всего наверное можно и даже без изменений. Ну там всякие opt82 и всё такое. Т.е. хотелось бы установить вместо dhcpd, который сейчас используется как ip helper (цыска в него запросы перенаправляет). Есть какие-то рекомендации, как это лучше сделать ? Желательно без ядерных модулей. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 23 апреля, 2014 Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ? Там решите это прямо FreeRADIUS-ом как DHCP. Работы-то - на Perl-е либо Python-е на полтора-два часа. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NiTr0 Опубликовано 23 апреля, 2014 нет более менее простого решения для dhcp-сервера, который бы брал данные из sql Есть. В этом разделе поищите, на перле писан. Я под абиллс допиливал, там же выкладывал. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wtyd Опубликовано 24 апреля, 2014 Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ? Там решите это прямо FreeRADIUS-ом как DHCP. Работы-то - на Perl-е либо Python-е на полтора-два часа. В accel-ppp как бы весь этот функционал уже написан, протестирован и должен работать, а на перле за 2 часа я такого могу понаписать, что потом никто не поймёт, включая меня :-). Т.е. в accel-ppp уже есть практически готовое решение работы с dhcp, вот я о чём хотел сказать. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 24 апреля, 2014 Я правильно понимаю что L3 режим со стартом по DHCP пока не реализован? тут выше уже обсуждалось, но я так и не понял до конца как оно должно работатьклиенты находятся за каким-то маршрутизатором, который релеит дхцп запросы ? в режиме L2 accel при старте сессии добавляет до клиента маршрут на интерфейс с которого пришел дхцп запрос в случае L3 получается маршрут нужно добавлять через этот релейный маршрутизатор ? тогда нужно знать его ип, тогда нужны новые опции в конфиге ... или может быть его ип соотвествует giaddr Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ? Скорее всего наверное можно и даже без изменений. Ну там всякие opt82 и всё такое. Т.е. хотелось бы установить вместо dhcpd, который сейчас используется как ip helper (цыска в него запросы перенаправляет). Есть какие-то рекомендации, как это лучше сделать ? Желательно без ядерных модулей. без допила в текущей реализации думаю нет, т.к. реализован только базовый функционал дхцп сервераон не может выдавать доп. атрибуты из радиуса Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wtyd Опубликовано 24 апреля, 2014 Я правильно понимаю что L3 режим со стартом по DHCP пока не реализован? тут выше уже обсуждалось, но я так и не понял до конца как оно должно работатьклиенты находятся за каким-то маршрутизатором, который релеит дхцп запросы ? в режиме L2 accel при старте сессии добавляет до клиента маршрут на интерфейс с которого пришел дхцп запрос в случае L3 получается маршрут нужно добавлять через этот релейный маршрутизатор ? тогда нужно знать его ип, тогда нужны новые опции в конфиге ... или может быть его ип соотвествует giaddr Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ? Скорее всего наверное можно и даже без изменений. Ну там всякие opt82 и всё такое. Т.е. хотелось бы установить вместо dhcpd, который сейчас используется как ip helper (цыска в него запросы перенаправляет). Есть какие-то рекомендации, как это лучше сделать ? Желательно без ядерных модулей. без допила в текущей реализации думаю нет, т.к. реализован только базовый функционал дхцп сервераон не может выдавать доп. атрибуты из радиуса Я очень поверхностно ознакомился с возможностями accel-ppp, но я думал, что ipoe реализовано примерно как написано тут: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/15-s/dhcp-15-s-book/dhcp-serv-rad-proxy.html#GUID-52C214DF-54D1-4BDB-95C5-7282CAA90400 (сеть доступа)==[L3 sqitch]==[accel-ppp]--[freeradius+sql/billing] В данной схеме, по-моему, не принципиально, будет ли accel-ppp шейпить или нет, главное, чтобы он выдавал адреса по dhcp. Вроде же какая-то поддержка быть dhcp-сервером у него есть или это только на L2 реализовано ? Какие дополнительные атрибуты нужны ? opt82 вроде бы реализовано или как ? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 24 апреля, 2014 L3 без драйвера ядра точно шейпить не будет Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
kayot Опубликовано 24 апреля, 2014 Дык помоему L3 будет работать точно так же как и shared режим, с драйвером. Разве что старт сессии только по any packet вместо dhcp. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 24 апреля, 2014 xeb подскажите где в исходниках выпилить per-mac padi-limit 1/s (нужно для тестов) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 25 апреля, 2014 pppoe.c - закоментировать строчки 798-808 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Curent_User Опубликовано 25 апреля, 2014 Здравсвтуйте! Есть работающий accel-pppd версий 1.7.3 установленный на alt linux 7 centaurus 3.10.30-std-def-alt1 #1 SMP Fri Feb 14 10:33:49 UTC 2014 x86_64 GNU/Linux Клиенты подключаются как по pptp так и по l2tp примерно 1500 пользователей Проблема заключается в том что с каждым днем сервер потребляет все больше памяти при не увеличивающейся нагрузке как будто память утекает в небытие :) если кто сталкивался с данной проблемой или может дать ценный совет буду очень признателен. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 25 апреля, 2014 попробовать git -b 1.7 или мастер, скорее всего уже исправлено Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Curent_User Опубликовано 26 апреля, 2014 попробовать git -b 1.7 или мастер, скорее всего уже исправлено сегодня решил немного затюнить конфиг да попробовать ваш совет и заметил что память уходит на cache ложная тревога )) за совет спасибо! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
wtyd Опубликовано 26 апреля, 2014 попробовать git -b 1.7 или мастер, скорее всего уже исправлено сегодня решил немного затюнить конфиг да попробовать ваш совет и заметил что память уходит на cache ложная тревога )) за совет спасибо! Наверное что-то типа этого надо сделать: sync; echo 3 > /proc/sys/vm/drop_caches ; sleep 1 ; sync; echo 0 > /proc/sys/vm/drop_caches Хотя вроде бы в современных ядрах последнюю команду делать не надо, там автоматически 0 появляется. В любом случае, пробуйте, читайте документацию про drop_caches Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 26 апреля, 2014 кэш сбрасывать особого смысла нет, когда системе понадобится физическая память, она сама возьмёт сколько надо из кэша Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Curent_User Опубликовано 26 апреля, 2014 вечером дело было :) не обратил внимания что память на кэш ушла. но кстати.. связанно это или нет не знаю но после того как в [modules] и дальше по конфигу закомментировал то что не используется кэш с 5gb упал до 271mb #shaper #tbf #chap-secrets #net-snmp #connlomit #ipv6_nd #ipv6_dhcp #ipv6pool Спасибо всем, кто откликнулся. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
iskratel Опубликовано 26 апреля, 2014 Скажите, не планируется ли возможность задавать опцию username отдельно для интерфейсов? Например: interface=eth1.20,shared=1,username=lua:username interface=re:eth1/.[1-9][0-9][0-9], shared=0, username=ifname Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...