Abram Опубликовано 11 марта, 2014 · Жалоба 1) Да. Скорость режется на интерфейсе независимо от того, что у Вас там - хоть IPX. 2) Есть похожее. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Lynx10 Опубликовано 11 марта, 2014 · Жалоба 1500 держало... думаю и 2000 без проблем прожует Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dimka88 Опубликовано 12 марта, 2014 · Жалоба более 4000 активных, правда карта 10g. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 12 марта, 2014 · Жалоба Уважаемы коллеги, хочу потестить accel pppпротив mpd5. Есть несколько вопросов. 1)Как обстоят дела с IPv6? Можно ли выдавать адреса из бд , нарезка скорости для v6? 2)Можно ли через CoA отправить аналог атрибута ipfw-table-static в mpd5. Используем для блокирование IP-клиента и редирект на страницу "оплати" 3) У кто держит по 2000 сессий и по 2 гбит ?Справляется , не падает? Сейчас держим под 2000 сессий и по 1.7 гбит на вход, CPU не более 50 процентов на каждое ядро.Только routing и шейпер, ната нет По поводу кол-ва сессий. Сам accel-pppd держит и 8000(с аккаунтинг-периодом 60 секунд)(с современным ядром, а не типа 2.6.32, на старых ядрах может и на 1000-2000 начнёт тупить из-за медленного создания интерфейсов). А вот по трафику это вопрос к accel-pppd не относится, это уже freebsd kernel vs linux kernel. Если у вас IPv6 wirespeed, а IPv4 по тарифу, то придётся вместо встроенного шейпера использовать pppd-compat, т.е. писать скрипт, который будет заливать правила в ядро Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
yazero Опубликовано 12 марта, 2014 (изменено) · Жалоба обновился до wheezy kernel 3.2.0-4-amd64 , стал ругаться accel-ppp. пересобрал(скачал последний c git), результат тотже. даже не стартует. accel-pppd[4679]: segfault at 20 ip 00007f34381b7fc0 sp 00007fff385ed948 error 6 in libpthread-2.13.so[7f34381ac000+17000] root@debian:/var/log# readelf -d /usr/local/sbin/accel-pppd Dynamic section at offset 0x2d740 contains 34 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libtriton.so] 0x0000000000000001 (NEEDED) Shared library: [librt.so.1] 0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0] 0x0000000000000001 (NEEDED) Shared library: [libcrypto.so.1.0.0] 0x0000000000000001 (NEEDED) Shared library: [libssl.so.1.0.0] 0x0000000000000001 (NEEDED) Shared library: [libpcre.so.3] 0x0000000000000001 (NEEDED) Shared library: [libdl.so.2] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2] 0x000000000000000f (RPATH) Library rpath: [/usr/local/lib64/accel-ppp] 0x000000000000000c (INIT) 0x404b40 0x000000000000000d (FINI) 0x42427c 0x0000000000000019 (INIT_ARRAY) 0x62d658 0x000000000000001b (INIT_ARRAYSZ) 216 (bytes) 0x000000000000001a (FINI_ARRAY) 0x62d730 0x000000000000001c (FINI_ARRAYSZ) 8 (bytes) 0x0000000000000004 (HASH) 0x400298 0x000000006ffffef5 (GNU_HASH) 0x400b30 0x0000000000000005 (STRTAB) 0x402a00 0x0000000000000006 (SYMTAB) 0x400f48 0x000000000000000a (STRSZ) 3843 (bytes) 0x000000000000000b (SYMENT) 24 (bytes) 0x0000000000000015 (DEBUG) 0x0 0x0000000000000003 (PLTGOT) 0x62da30 0x0000000000000002 (PLTRELSZ) 3576 (bytes) 0x0000000000000014 (PLTREL) RELA 0x0000000000000017 (JMPREL) 0x403d48 0x0000000000000007 (RELA) 0x403c10 0x0000000000000008 (RELASZ) 312 (bytes) 0x0000000000000009 (RELAENT) 24 (bytes) 0x000000006ffffffe (VERNEED) 0x403b40 0x000000006fffffff (VERNEEDNUM) 6 0x000000006ffffff0 (VERSYM) 0x403904 0x0000000000000000 (NULL) 0x0 Изменено 12 марта, 2014 пользователем yazero Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 13 марта, 2014 · Жалоба этот readelf ни о чём не говорит, нужен coredump Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 13 марта, 2014 (изменено) · Жалоба с шейпером разобрался. Вопрос по блокировке клиента, не дропая его с сервера. В MPD я делал через CoA отправлял атрибут mpd-table-static,где номер таблицы и Framed-IP заносился в table N и в фаерволе было правило , блокировать трафик и делать редирект на веб сервер со страницей "ЗАПЛАТИ". Возможно ли реализовать это на linux и с помощью accel? Кто делал? Изменено 13 марта, 2014 пользователем roysbike Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 13 марта, 2014 · Жалоба более 4000 активных, правда карта 10g. шейпер там же? Сколько прокачивает и сколько PPS? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 13 марта, 2014 · Жалоба После freebsd как то не привычно, подскажите как реализован shaper ? Надо ли использовать up down скрипты или он сам подгружает ? Можете показать кусок конфига , атрибут и переменную. Желателньо аналог констуркции cisco-like rate-limit Встроенный шейпер очень ограничен по функционалу. Всё что можно задать это направление(вверх/вниз) и время(для ночных ускорений и прочего). Если хочется что-то сложнее, то скрипты, там ваша фантазия ограничена только возможностями ядра(а они весьма неплохие) Синтаксис описан тут(только сейчас секция называется на [tbf], а [shaper]): http://sourceforge.net/apps/trac/accel-ppp/wiki/ShaperAdvanced По поводу pps-ов и прочего это вам в ветку linux softrouter, к сигнализации(т.е. к accel-pppd) это никак не относится Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
roysbike Опубликовано 13 марта, 2014 (изменено) · Жалоба Помогите с шейпером. Режет в download 1 мбит , upload 20 мбит. А должен 20/20 [modules] path=/usr/local/lib/accel-ppp log_file pppoe auth_chap_md5 auth_pap radius ippool sigchld pppd_compat shaper [core] log-error=/var/log/accel-ppp/core.log thread-count=4 [ppp] verbose=1 min-mtu=1280 mtu=1400 mru=1400 ipv4=require ipv6=deny ipv6-intf-id=0:0:0:1 ipv6-peer-intf-id=0:0:0:2 ipv6-accept-peer-intf-id=1 lcp-echo-interval=20 lcp-echo-timeout=120 [auth] [pptp] verbose=1 [pppoe] interface=eth1 service-name=* verbose=1 [dns] dns1=8.8.8.8 [wins] [radius] dictionary=/usr/local/share/accel-ppp/radius/dictionary nas-identifier=accel-ppp nas-ip-address=127.0.0.1 server=127.0.0.1,testing123,auth-port=1812,acct-port=1813,req-limit=0,fail-time=0 dae-server=127.0.0.1:3799,testing123 verbose=1 [client-ip-range] 10.0.0.0/8 [ip-pool] gw-ip-address=192.168.0.1 attr=Framed-Pool 192.168.0.2-255 192.168.1.1-255,pool1 192.168.2.1-255,pool2 192.168.3.1-255,pool3 192.168.4.0/24 [log] log-file=/var/log/accel-ppp/accel-ppp.log log-emerg=/var/log/accel-ppp/emerg.log log-fail-file=/var/log/accel-ppp/auth-fail.log copy=1 level=5 [log-pgsql] conninfo=user=log log-table=log [pppd-compat] ip-up=/etc/ppp/ip-up ip-down=/etc/ppp/ip-down ip-change=/etc/ppp/ip-change radattr-prefix=/var/run/radattr verbose=1 [chap-secrets] [shaper] up-limiter=tbf down-limiter=tbf attr-down=PPPD-Downstream-Speed-Limit attr-up=PPPD-Upstream-Speed-Limit verbose=1 [cli] telnet=0.0.0.0:2000 tcp=10.10.0.2:2001 [snmp] master=0 agent-name=accel-ppp [connlimit] limit=10/min burst=3 timeout=60 [ipv6-pool] fc00:0:1::/48,64 delegate=fc00:1::/36,48 [ipv6-dns] [ipv6-dhcp] verbose=1 pref-lifetime=604800 valid-lifetime=2592000 route-via-gw=1 accel-ppp# show sessions match username roys ifname | username | calling-sid | ip | rate-limit | type | comp | state | uptime --------+----------+-------------------+------------+-------------+-------+------+--------+---------- ppp0 | roys6 | 34:15:9e:1c:64:06 | 172.30.0.1 | 20480/20480 | pppoe | | active | 00:02:40 root@home:~# tc -s class show dev ppp0 class tbf 1:1 parent 1: root@home:~# tc qdisc qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1 qdisc tbf 1: dev ppp0 root refcnt 2 rate 20480Kbit burst 250Kb lat 50.0ms qdisc ingress ffff: dev ppp0 parent ffff:fff1 ---------------- Изменено 13 марта, 2014 пользователем roysbike Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
xeb Опубликовано 14 марта, 2014 · Жалоба В MPD я делал через CoA отправлял атрибут mpd-table-static,где номер таблицы и Framed-IP заносился в table N и в фаерволе было правило , блокировать трафик и делать редирект на веб сервер со страницей "ЗАПЛАТИ". Возможно ли реализовать это на linux и с помощью accel? Кто делал? есть возможность выполнить скрипт при получении CoA:[pppd-compat] ip-change= Помогите с шейпером. Режет в download 1 мбит , upload 20 мбит. А должен 20/20 проверь отключены ли оффлоады на картах:ethtool -k eth0 ethtool -k eth1 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
yazero Опубликовано 14 марта, 2014 (изменено) · Жалоба 2xeb незнаю почему такой косяк был с запуском accel-ppp, но взял конфиг по умолчанию, старутет без проблем, потом переписал конфиг (убрал пробелы к конце строк и .т.п) и все запустилось. Но возникла новая проблема, перевел 600 абонентов разом на accel и в логах появилась ошибка radius out of memory (жаль в логах нет отметки вермени), и bras перестал пускать в инет абонентов.проверил с него ping в мир, пинга нет. Accel-ppp регистрировал новых , отправлял и принимал lcp. проверил жив ли quagga с ospf , все есть , маршруты на месте, проверил ip route тоже все на месте (тоесть zebra отработала). остановил accel-ppp и пинг пошел наружу. сглупил не посмотрел free, top в ядре. и не глянул show stat. есть atop буду см логи. Изменено 14 марта, 2014 пользователем yazero Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 15 марта, 2014 · Жалоба Настраиваю в режиме ipoe. accel-ppp version 4654e90f1903756523808afd6a00112060c67dc2 столкнулся с [2014-03-15 16:07:19]: info: eth3: send [RADIUS(1) Access-Request id=1 <User-Name "eth3"> <NAS-Identifier "test"> <NAS-IP-Address 192.168.20.223> <NAS-Port 7> <NAS-Port-Type Ethernet> <Calling-Station-Id "00:0c:42:89:64:02"> <Called-Station-Id "eth3"> <User-Password >] [2014-03-15 16:07:19]: info: eth3: recv [RADIUS(1) Access-Accept id=1 <Acct-Interim-Interval 60> <Service-Type Framed-User> <Framed-Protocol PPP> БVendor-Specific > <Vendor-Specific >] [2014-03-15 16:07:19]: info: eth3: eth3: authentication succeeded [2014-03-15 16:07:19]: info: ipoe0: send [RADIUS(1) Accounting-Request id=1 <User-Name "eth3"> <NAS-Identifier "test"><NAS-IP-Address 192.168.20.223> <NAS-Port 190> <NAS-Port-Type Ethernet> <Calling-Station-Id "00:0c:42:89:64:02"> <Called-Station-Id "eth3"> <Acct-Status-Type Start> <Acct-Authentic RADIUS> <Acct-Session-Id "092f02a6476653b6"> <Acct-Session-Time 0> <Acct-Input-Octets 0> <Acct-Output-Octets 0> <Acct-Input-Packets 0> <Acct-Output-Packets 0> <Acct-Input-Gigawords 0> <Acct-Output-Gigawords 0> <Framed-IP-Address 192.168.3.2>] [2014-03-15 16:07:19]: info: ipoe0: recv [RADIUS(1) Accounting-Response id=1] [2014-03-15 16:07:19]: info: ipoe0: ipoe: session started При авторизации <NAS-Port 7> а при аккаунтинге <NAS-Port 190> По идее так не должно быть. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 15 марта, 2014 · Жалоба brodayga, Вероятно, это потому что access-request приходит для eth3, а accounting-request - для ipoe0. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 15 марта, 2014 · Жалоба brodayga, Вероятно, это потому что access-request приходит для eth3, а accounting-request - для ipoe0. Может быть. Как сделать чтоб корректно приходило. конфиг простой [ipoe] verbose=3 lua-file=/etc/accel-ppp.lua username=lua:username password=username1 lease-time=600 max-lease-time=3600 shared=1 ifcfg=1 mode=L2 start=dhcpv4 interface=eth3,range=192.168.3.0/24 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Abram Опубликовано 15 марта, 2014 · Жалоба brodayga, Мне кажется, что в варианте shared=1 - никак. Только shared=0, vlan per user (можно с qinq) и vlan-mon. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 15 марта, 2014 (изменено) · Жалоба brodayga, Мне кажется, что в варианте shared=1 - никак. Только shared=0, vlan per user (можно с qinq) и vlan-mon. Буду ждать, что ответит Xeb. Номер порта должен совпадать. У меня биллинг по нему определяет каким запросам авторизации соответствует запрос аккаунтинга. По другому как их ещё сопоставить. Изменено 15 марта, 2014 пользователем brodayga Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 15 марта, 2014 · Жалоба Ну а вообще было бы логичней для shared=1 , нумеровать порты аналогично ppp, т.е. не номер интерфейса в ОС,a ipoe10 NAS-Port=10, так же как и для ppp10 NAS-Port=10 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nik247 Опубликовано 15 марта, 2014 · Жалоба to brodayga Была тажа самая проблема с IPoE (shared=1) и NAS-Port с биллингом. Решил его на стороне биллинга - в предобработке Access/Accounting для IPoE (NAS-Port-Type=15) принудительно заменяется NAS-Port=XXXX на NAS-Port=0. Биллинг NAS-Port=0 отрабатывает корректно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 15 марта, 2014 (изменено) · Жалоба to brodayga Была тажа самая проблема с IPoE (shared=1) и NAS-Port с биллингом. Решил его на стороне биллинга - в предобработке Access/Accounting для IPoE (NAS-Port-Type=15) принудительно заменяется NAS-Port=XXXX на NAS-Port=0. Биллинг NAS-Port=0 отрабатывает корректно. Можно и так конечно.биллинг случаем не бг?. Но в билинге есть приятная мелочь связаная с нас порт. Если например нас перезагрузился, без корректного завершения сессий то при старте новых сессий, в билинге завершаются сессии с номерами портов новых сессий.Не дожидаясь закрытия сессий по таймауту, как следствие меньше ошибок с превышен лимит сессий(контроль количества одновременных сессий на стороне биллинга). Не получилось. Билинг закрывает первую сессию. У вас не бг. :) Изменено 15 марта, 2014 пользователем brodayga Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nik247 Опубликовано 15 марта, 2014 (изменено) · Жалоба to brodayga Была тажа самая проблема с IPoE (shared=1) и NAS-Port с биллингом. Решил его на стороне биллинга - в предобработке Access/Accounting для IPoE (NAS-Port-Type=15) принудительно заменяется NAS-Port=XXXX на NAS-Port=0. Биллинг NAS-Port=0 отрабатывает корректно. Можно и так конечно.биллинг случаем не бг?. Но в билинге есть приятная мелочь связаная с нас порт. Если например нас перезагрузился, без корректного завершения сессий то при старте новых сессий, в билинге завершаются сессии с номерами портов новых сессий.Не дожидаясь закрытия сессий по таймауту, как следствие меньше ошибок с превышен лимит сессий(контроль количества одновременных сессий на стороне биллинга). Не получилось. Билинг закрывает первую сессию. У вас не бг. :) Наверное огорчу Вас, но как раз BG (Inet) - на момент запуска был 5.2, сейчас 6.0. Кстати использую его в связке с екселем только, как радиус. Packet type: Access-Request Identifier: 1 Authenticator: {DA D6 A3 91 BD 4F 00 AA 99 D6 F6 DB 67 BC 1E 53} Attributes: User-Name=sw0137:10 NAS-Identifier=accel-ppp NAS-IP-Address=192.168.118.19 NAS-Port=18 Calling-Station-Id=00:24:1d:99:ae:a2 NAS-Port-Type=15 Called-Station-Id=vlan137 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS: Packet type: Access-Request Identifier: 1 Authenticator: {DA D6 A3 91 BD 4F 00 AA 99 D6 F6 DB 67 BC 1E 53} Attributes: User-Name=sw0137:10 NAS-Identifier=accel-ppp NAS-IP-Address=192.168.118.19 NAS-Port=0 Calling-Station-Id=00:24:1d:99:ae:a2 NAS-Port-Type=15 Called-Station-Id=vlan137 Common options: {agentRemoteId=sw0137, interfaceId=10} 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetNas - Found agentDevice:27 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetNas - Search serv on deviceId=27; interfaceId=10 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - [username=sw0137:10] Authenticated as inetServId:2122 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetApplication - TariffOptionMap: {} 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetApplication - inetServ[id=2122] balance ok: 116.46 [0] 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetApplication - OptionSet: [12] 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - Write new waiting connection to DB 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - New connection id=2456539 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - Return code=0 03-14/00:50:43 INFO [rdsLstnr-p-9-t-6] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS: Packet type: Access-Accept Identifier: 1 Authenticator: {} Attributes: Acct-Interim-Interval=300 Session-Timeout=604800 Filter-Id=50000/8000 Framed-Pool=inet-pool Framed-Compression=1 radius 03-15/15:09:16 INFO [rdsLstnr-p-8-t-1] update - REQUEST: Packet type: Accounting-Request Identifier: 66 Authenticator: {63 C6 80 CE 58 29 E0 BF 43 36 E0 E8 64 FF E8 BC} Attributes: User-Name=sw0137:10 NAS-Identifier=accel-ppp NAS-IP-Address=192.168.118.19 NAS-Port=30725 Framed-IP-Address=10.102.6.175 Acct-Input-Octets=6449476 Acct-Output-Octets=181123557 Acct-Status-Type=3 Acct-Session-Time=19500 Acct-Input-Packets=74878 Acct-Session-Id=10e8575f464da1d4 Acct-Authentic=1 Acct-Output-Packets=135712 Acct-Output-Gigawords=0 Acct-Input-Gigawords=0 NAS-Port-Type=15 Calling-Station-Id=00:24:1d:99:ae:a2 Called-Station-Id=vlan137 radius 03-15/15:09:16 INFO [rdsLstnr-p-8-t-1] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS: Packet type: Accounting-Request Identifier: 66 Authenticator: {63 C6 80 CE 58 29 E0 BF 43 36 E0 E8 64 FF E8 BC} Attributes: User-Name=sw0137:10 NAS-Identifier=accel-ppp NAS-IP-Address=192.168.118.19 NAS-Port=0 Framed-IP-Address=10.102.6.175 Acct-Input-Octets=6449476 Acct-Output-Octets=181123557 Acct-Status-Type=3 Acct-Session-Time=19500 Acct-Input-Packets=74878 Acct-Session-Id=10e8575f464da1d4 Acct-Authentic=1 Acct-Output-Packets=135712 Acct-Output-Gigawords=0 Acct-Input-Gigawords=0 NAS-Port-Type=15 Calling-Station-Id=00:24:1d:99:ae:a2 Called-Station-Id=vlan137 Common options: {agentRemoteId=sw0137, interfaceId=10} radius 03-15/15:09:16 INFO [rdsLstnr-p-8-t-1] InetRadiusProcessor - Session 10e8575f464da1d4 found. radius 03-15/15:09:16 INFO [rdsLstnr-p-8-t-1] update - RESPONSE: Packet type: Accounting-Response Identifier: 66 Authenticator: {05 4C AA A2 60 05 45 36 8C 67 CE 65 1A 34 79 73} Attributes: Process time update: 1 Изменено 15 марта, 2014 пользователем nik247 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 16 марта, 2014 · Жалоба Наверное огорчу Вас, но как раз BG (Inet) - на момент запуска был 5.2, сейчас 6.0. Кстати использую его в связке с екселем только, как радиус. Нет не огорчите. только рад за вас. Но у вас модуль инет и он очень сильно отличается от диалап который у меня. Это уже офтопик. Вопрос в том что номер порта должен совпадать и в момент авторизации и в аккаунтинге. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
nickmas Опубликовано 16 марта, 2014 · Жалоба Не собирается драйвер: [100%] Generating driver/pptp.ko /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c: In function ‘pptp_xmit’: /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:388:10: error: unknown field ‘oif’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:388:10: warning: missing braces around initializer [-Wmissing-braces] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:388:10: warning: (near initialization for ‘fl.u’) [-Wmissing-braces] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:389:9: error: unknown field ‘nl_u’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:389:9: error: extra brace group at end of initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:389:9: error: (near initialization for ‘fl’) /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:390:12: error: extra brace group at end of initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:390:12: error: (near initialization for ‘fl’) /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:392:7: warning: excess elements in struct initializer [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:392:7: warning: (near initialization for ‘fl’) [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:393:9: error: unknown field ‘proto’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:393:9: warning: excess elements in struct initializer [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:393:9: warning: (near initialization for ‘fl’) [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:397:3: warning: passing argument 2 of ‘ip_route_output_key’ from incompatible pointer type [enabled by default] include/net/route.h:119:30: note: expected ‘struct flowi4 *’ but argument is of type ‘struct rtable **’ /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:397:3: error: too many arguments to function ‘ip_route_output_key’ include/net/route.h:119:30: note: declared here /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:397:11: warning: assignment makes integer from pointer without a cast [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:524:18: error: ‘struct rtable’ has no member named ‘rt_dst’ /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:525:18: error: ‘struct rtable’ has no member named ‘rt_src’ /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:555:2: warning: passing argument 1 of ‘ip_select_ident’ from incompatible pointer type [enabled by default] include/net/ip.h:257:20: note: expected ‘struct sk_buff *’ but argument is of type ‘struct iphdr *’ /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c: In function ‘pptp_connect’: /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:862:9: error: unknown field ‘nl_u’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:862:9: error: unknown field ‘ip4_u’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:863:12: error: unknown field ‘daddr’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:864:7: error: unknown field ‘saddr’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:865:7: error: unknown field ‘tos’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:866:9: error: unknown field ‘proto’ specified in initializer /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:866:9: warning: excess elements in struct initializer [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:866:9: warning: (near initialization for ‘fl’) [enabled by default] /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:873:3: warning: passing argument 2 of ‘ip_route_output_key’ from incompatible pointer type [enabled by default] include/net/route.h:119:30: note: expected ‘struct flowi4 *’ but argument is of type ‘struct rtable **’ /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:873:3: error: too many arguments to function ‘ip_route_output_key’ include/net/route.h:119:30: note: declared here /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:893:34: error: ‘PPP_MTU’ undeclared (first use in this function) /home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.c:893:34: note: each undeclared identifier is reported only once for each function it appears in make[4]: *** [/home/nickmas/accel-ppp-1.7.3/build/driver/driver/pptp.o] Error 1 make[3]: *** [_module_/home/nickmas/accel-ppp-1.7.3/build/driver/driver] Error 2 make[2]: *** [driver/driver/pptp.ko] Error 2 make[1]: *** [driver/CMakeFiles/pptp_drv.dir/all] Error 2 make: *** [all] Error 2 Ubuntu 12.04.4 LTS (GNU/Linux 3.8.0-36-generic x86_64) accel-ppp-1.7.3 Нужна помощь! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
s.lobanov Опубликовано 17 марта, 2014 · Жалоба В 3.8 уже есть pptp, просто не собирайте его в accel-e Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
brodayga Опубликовано 17 марта, 2014 (изменено) · Жалоба Вопрос к Xeb если сделать так: static void ipoe_session_start(struct ipoe_session *ses) { int r; char *passwd; struct ifreq ifr; struct unit_cache *uc; __sync_add_and_fetch(&stat_starting, 1); if (!ses->ses.username) { strncpy(ses->ses.ifname, ses->serv->ifname, AP_IFNAME_LEN); ipoe_session_set_username(ses); if (!ses->ses.username) { ipoe_session_finished(&ses->ses); return; } } ses->ses.unit_idx = ses->serv->ifindex; /*My insert */ if ((ses->ifindex == -1)&& (ses->serv->opt_shared )) { pthread_mutex_lock(&uc_lock); if (!list_empty(&uc_list)) { uc = list_entry(uc_list.next, typeof(*uc), entry); ses->ifindex = uc->ifindex; list_del(&uc->entry); --uc_size; pthread_mutex_unlock(&uc_lock); mempool_free(uc); } else { pthread_mutex_unlock(&uc_lock); ses->ifindex = ipoe_nl_create(0, 0, ses->serv->opt_mode == MODE_L2 ? ses->serv->ifname : NULL, ses->hwaddr); if (ses->ifindex == -1) { log_ppp_error("ipoe: failed to create interface\n"); ap_session_terminate(&ses->ses, TERM_NAS_ERROR, 1); return; } } memset(&ifr, 0, sizeof(ifr)); ifr.ifr_ifindex = ses->ifindex; if (ioctl(sock_fd, SIOCGIFNAME, &ifr, sizeof(ifr))) { log_ppp_error("ipoe: failed to get interface name\n"); ses->ifindex = -1; ap_session_terminate(&ses->ses, TERM_NAS_ERROR, 1); return; } strncpy(ses->ses.ifname, ifr.ifr_name, AP_IFNAME_LEN); ses->ses.ifindex = ses->ifindex; ses->ses.unit_idx = ses->ifindex; ses->ctrl.dont_ifcfg = 0; } /*My insert */ triton_event_fire(EV_CTRL_STARTING, &ses->ses); triton_event_fire(EV_CTRL_STARTED, &ses->ses); ap_session_starting(&ses->ses); if (!conf_noauth) { r = pwdb_check(&ses->ses, ses->ses.username, PPP_PAP, conf_password ? conf_password : ses->ses.username); if (r == PWDB_NO_IMPL) { passwd = pwdb_get_passwd(&ses->ses, ses->ses.username); if (!passwd) r = PWDB_DENIED; else { r = PWDB_SUCCESS; _free(passwd); } } if (r == PWDB_DENIED) { /*My insert */ if ((ses->ifindex != -1)&& (ses->serv->opt_shared )) { if (uc_size < conf_unit_cache && ipoe_nl_modify(ses->ifindex, 0, 0, "", NULL)) { uc = mempool_alloc(uc_pool); uc->ifindex = ses->ifindex; pthread_mutex_lock(&uc_lock); list_add_tail(&uc->entry, &uc_list); ++uc_size; pthread_mutex_unlock(&uc_lock); } else ipoe_nl_delete(ses->ifindex); ses->ifindex = -1; } /*My insert */ if (conf_ppp_verbose) log_ppp_warn("authentication failed\n"); if (conf_l4_redirect_on_reject && !ses->dhcpv4_request && ses->ifindex != -1) { l4_redirect_list_add(ses->yiaddr, ses->ifindex); ses->ifindex = -1; } ap_session_terminate(&ses->ses, TERM_AUTH_ERROR, 0); return; } } У меня нет точного представления о структуре кода да и на си никогда не писал. Не получу ли я глюки. А так все заработало,nas port совпадает. Пока тестирую. И второй попутный вопрос, если для шаред сделать что то типо sprintf(ses->ses.ifname, "ipoe%i", ses->ses.unit_idx); ses->ses.unit_idx используеться только для радиус или ещё гдето? Изменено 17 марта, 2014 пользователем brodayga Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...