Перейти к содержимому
Калькуляторы

Добрый день. Пытаюсь собрать 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?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

git pull

и снова попробуй собрать

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Никто не наблюдал падение 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

Изменено пользователем Dimka88

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А реализовать L3 режим со стартом по DHCP не планируете?

Я правильно понимаю что L3 режим со стартом по DHCP пока не реализован?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем добрый день,

есть работающий accel-pppd 1.7.3

настроен как pppoe сервер, раздает клиентам серые айпи.

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

Теперь нужно каким то образом присвоить конктретный айпишник конкретному клиенту, остальные так и продолжат работать на серых.

Как то можно реализовать это на сабже?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем добрый день,

есть работающий accel-pppd 1.7.3

настроен как pppoe сервер, раздает клиентам серые айпи.

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

Теперь нужно каким то образом присвоить конктретный айпишник конкретному клиенту, остальные так и продолжат работать на серых.

Как то можно реализовать это на сабже?

 

Радиусом выдавайте белые адреса кому нужно. Это не головная боль аццеля, это в биллинге реализовывается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

да

 

Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ?

 

Скорее всего наверное можно и даже без изменений. Ну там всякие opt82 и всё такое. Т.е. хотелось бы установить вместо dhcpd, который сейчас используется как ip helper (цыска в него запросы перенаправляет).

 

Есть какие-то рекомендации, как это лучше сделать ? Желательно без ядерных модулей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ?

Там решите это прямо FreeRADIUS-ом как DHCP. Работы-то - на Perl-е либо Python-е на полтора-два часа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нет более менее простого решения для dhcp-сервера, который бы брал данные из sql

Есть. В этом разделе поищите, на перле писан. Я под абиллс допиливал, там же выкладывал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ?

Там решите это прямо FreeRADIUS-ом как DHCP. Работы-то - на Perl-е либо Python-е на полтора-два часа.

 

В accel-ppp как бы весь этот функционал уже написан, протестирован и должен работать, а на перле за 2 часа я такого могу понаписать, что потом никто не поймёт, включая меня :-). Т.е. в accel-ppp уже есть практически готовое решение работы с dhcp, вот я о чём хотел сказать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Я правильно понимаю что L3 режим со стартом по DHCP пока не реализован?
тут выше уже обсуждалось, но я так и не понял до конца как оно должно работать

клиенты находятся за каким-то маршрутизатором, который релеит дхцп запросы ?

в режиме L2 accel при старте сессии добавляет до клиента маршрут на интерфейс с которого пришел дхцп запрос

в случае L3 получается маршрут нужно добавлять через этот релейный маршрутизатор ? тогда нужно знать его ип, тогда нужны новые опции в конфиге ... или может быть его ип соотвествует giaddr

 

Тут проблема была и всё ещё остаётся: нет более менее простого решения для dhcp-сервера, который бы брал данные из sql, везде есть свои заморочки. Можно ли accel-ppp использовать в качестве dhcp-сервера, который бы формировал запрос к радиусу, а радиус в свою очередь смотрел бы в sql ?

 

Скорее всего наверное можно и даже без изменений. Ну там всякие opt82 и всё такое. Т.е. хотелось бы установить вместо dhcpd, который сейчас используется как ip helper (цыска в него запросы перенаправляет).

 

Есть какие-то рекомендации, как это лучше сделать ? Желательно без ядерных модулей.

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

он не может выдавать доп. атрибуты из радиуса

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Я правильно понимаю что 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 вроде бы реализовано или как ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

L3 без драйвера ядра точно шейпить не будет

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Дык помоему L3 будет работать точно так же как и shared режим, с драйвером. Разве что старт сессии только по any packet вместо dhcp.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

xeb

 

подскажите где в исходниках выпилить per-mac padi-limit 1/s (нужно для тестов)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

pppoe.c - закоментировать строчки 798-808

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Здравсвтуйте!

 

Есть работающий 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 пользователей

 

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

 

post-120217-097391900 1398428804_thumb.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

попробовать git -b 1.7 или мастер, скорее всего уже исправлено

 

сегодня решил немного затюнить конфиг да попробовать ваш совет и заметил что память уходит на cache ложная тревога )) за совет спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

попробовать 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

кэш сбрасывать особого смысла нет, когда системе понадобится физическая память, она сама возьмёт сколько надо из кэша

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

вечером дело было :) не обратил внимания что память на кэш ушла.

но кстати.. связанно это или нет не знаю но после того как в [modules] и дальше по конфигу закомментировал то что не используется кэш с 5gb упал до 271mb

#shaper

#tbf

#chap-secrets

#net-snmp

#connlomit

 

#ipv6_nd

#ipv6_dhcp

#ipv6pool

 

Спасибо всем, кто откликнулся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Скажите, не планируется ли возможность задавать опцию username отдельно для интерфейсов?

Например:

interface=eth1.20,shared=1,username=lua:username

interface=re:eth1/.[1-9][0-9][0-9], shared=0, username=ifname

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас