Jump to content
Калькуляторы

Из-за этого ушел на внешние скрипты и очень рад)

Share this post


Link to post
Share on other sites

Из-за этого ушел на внешние скрипты и очень рад)

Какие методы используете удалённого вызова скриптов на БРАС-е с биллинга?

 

По постам выше, сдаётся, что не так что то готовлю, или не совсем понял суть.

Edited by bomberman

Share this post


Link to post
Share on other sites

модуль pppd_compat

[pppd-compat]
#ip-pre-up=/etc/ppp/ip-pre-up
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

 

ip-change обрабатывает CoA

Share this post


Link to post
Share on other sites

модуль pppd_compat

ip-change обрабатывает CoA

Понял, всё тот же accel только по сути для RADIUS-а. Тоже смотрел в эту сторону, но как то всё же решил попробовать существующие средства.

Выходит Вы в скриптах только шейперами управляете? Доступ и назначения адресов выполняет accel?

Share this post


Link to post
Share on other sites

Шейпер с приоритезацией, управление доступом к iptv, и прочие интересные действия в зависимости от Filter Id

Share this post


Link to post
Share on other sites

Кто то реализовывал алгоритм несколько ip на учётку, с разделением между ними скорости учётки, средствами accel, для схемы ipoe? Или только свой шейпер реализовывать и управлять из pppd-compat?

Share this post


Link to post
Share on other sites

Кто то реализовывал алгоритм несколько ip на учётку, с разделением между ними скорости учётки, средствами accel, для схемы ipoe? Или только свой шейпер реализовывать и управлять из pppd-compat?

только свой шейпер!

Share this post


Link to post
Share on other sites

Добрый день!

Какая-то странная ситуация с авторизацией по chap. accel (в продакшн сейчас 1.10.0) не отдает в CHAP Challnge поле Name, точнее он пустой:

 

14:05:21.884027 PPPoE [ses 0xde01] CHAP, Challenge (0x01), id 1, Value 223964e0c4e94031555b815a52420726, Name

 

Согласно RFC1994 это недопустимо:

 

Name

 

The Name field is one or more octets representing the

identification of the system transmitting the packet. There are

no limitations on the content of this field. For example, it MAY

contain ASCII character strings or globally unique identifiers in

ASN.1 syntax. The Name should not be NUL or CR/LF terminated.

The size is determined from the Length field.

 

При этом в rp-pppoe в поле Name отдается hostname.

 

Это для 99.99% клиентов не проблема и они со своими длинками и тплинками плевать хотели на пустой атрибут. Но есть 0.01% абонентов, которые используют, например Cisco ASA 5505 и которые строго следуют стандартам и авторизация не проходит.

Есть ли решение?

Share this post


Link to post
Share on other sites

Как можно покороче описать диапазон вланов для прослушивания? Vlan 10-12, 60-68, 110-120, 160-180, 210-240, 310-354, 1100-1200,1500-1580?

Share this post


Link to post
Share on other sites

Как можно покороче описать диапазон вланов для прослушивания? Vlan 10-12, 60-68, 110-120, 160-180, 210-240, 310-354, 1100-1200,1500-1580?

 

через регулярки, accel поддерживает.

Share this post


Link to post
Share on other sites

А можно пример, а то не вкурю никак

 

[pppoe]

interface=re:^eth1\.[0-9][0-9][0-9]$

Share this post


Link to post
Share on other sites

Я правильно понимаю, что это будет 1-999 вланы?

Share this post


Link to post
Share on other sites

Я правильно понимаю, что это будет 1-999 вланы?

Это будет соответствовать от eth1.0 до eth1.999

Edited by bomberman

Share this post


Link to post
Share on other sites

CentOS 7

пытаюсь собрать, но не выходит...

cmake -DBUILD_IPOE_DRIVER=TRUE -DBUILD_VLAN_MON_DRIVER=TRUE -DKDIR=/usr/src/kernels/4.11.6-1.el7.elrepo.x86_64/ -DNETSNMP=TRUE /install/accel-ppp-code
...
make
...
[ 99%] Generating driver/ipoe.ko
/opt/drivers/ipoe/driver/ipoe.c:40:0: предупреждение: «HASH_BITS» переопределён [по умолчанию включена]
#define HASH_BITS 0xff
^
In file included from ./include/linux/netdevice.h:55:0,
                from /opt/drivers/ipoe/driver/ipoe.c:7:
./include/linux/hashtable.h:27:0: замечание: это расположение предыдущего определения
#define HASH_BITS(name) ilog2(HASH_SIZE(name))
^
/opt/drivers/ipoe/driver/ipoe.c:1701:9: ошибка: «GENL_ID_GENERATE» undeclared here (not in a function)
 .id  = GENL_ID_GENERATE,
        ^
/opt/drivers/ipoe/driver/ipoe.c:1720:2: предупреждение: несовместимый тип указателя в инициализации [по умолчанию включена]
 .ndo_get_stats64 = ipoe_stats64,
 ^
/opt/drivers/ipoe/driver/ipoe.c:1720:2: предупреждение: (где-то рядом с инициализацией для «ipoe_netdev_ops.ndo_get_stats64») [по умолчанию включена]
/opt/drivers/ipoe/driver/ipoe.c: В функции «ipoe_init»:
/opt/drivers/ipoe/driver/ipoe.c:1752:2: ошибка: неявная декларация функции «genl_register_family_with_ops_groups» [-Werror=implicit-function-declaration]
 err = genl_register_family_with_ops_groups(&ipoe_nl_family, ipoe_nl_ops, ipoe_nl_mcgs);
 ^
cc1: some warnings being treated as errors
make[4]: *** [/opt/drivers/ipoe/driver/ipoe.o] Ошибка 1
make[3]: *** [_module_/opt/drivers/ipoe/driver] Ошибка 2
make[2]: *** [drivers/ipoe/driver/ipoe.ko] Ошибка 2
make[1]: *** [drivers/ipoe/CMakeFiles/ipoe_drv.dir/all] Ошибка 2
make: *** [all] Ошибка 2

 

Что ему надо??

Share this post


Link to post
Share on other sites

Но ведь туда войдет только eth1.001, но не eth1.1. Т.е - не взлетит?

Share this post


Link to post
Share on other sites

CentOS 7

пытаюсь собрать, но не выходит...

cmake -DBUILD_IPOE_DRIVER=TRUE -DBUILD_VLAN_MON_DRIVER=TRUE -DKDIR=/usr/src/kernels/4.11.6-1.el7.elrepo.x86_64/ -DNETSNMP=TRUE /install/accel-ppp-code

 

Что ему надо??

 

Патч хочет

 

Драйвера компилируются на 4.11.0, более свежие ядра не проверял.

Спасибо, попробую. Я пытался и на родное ядро центоси ставить, там 3.10.ххх. Тоже не взлетело, только немного другой выхлоп был.

 

 

ps: не накладывается патч, у меня последняя версия с git

Edited by Antares

Share this post


Link to post
Share on other sites

ps: не накладывается патч, у меня последняя версия с git

скорей всего из-за пробелов/табов, попробуй добавить "-l"

patch -l -p1 < ../lin4.10.patch

Share this post


Link to post
Share on other sites

ps: не накладывается патч, у меня последняя версия с git

скорей всего из-за пробелов/табов, попробуй добавить "-l"

patch -l -p1 < ../lin4.10.patch

Спасибо,собралось

Share this post


Link to post
Share on other sites

доброго дня.

 

настриваю billing---radius---accel-ppp--mikrotik

на mikritik настроен dhcp relay

получаю вот такие пакеты с одинаковым xid

 

логи на сервер

 

 

TIME: 2017-08-14 16:58:06.207

IP: 0.0.0.0 (18:d6:c7:f1:e:ac) > 255.255.255.255 (ff:ff:ff:ff:ff:ff)

OP: 1 (BOOTPREQUEST)

HTYPE: 1 (Ethernet)

HLEN: 6

HOPS: 0

XID: 16c2e0a0

SECS: 0

FLAGS: 0

CIADDR: 0.0.0.0

YIADDR: 0.0.0.0

SIADDR: 0.0.0.0

GIADDR: 0.0.0.0

CHADDR: 18:d6:c7:f1:0e:ac:00:00:00:00:00:00:00:00:00:00

SNAME: .

FNAME: .

OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER)

OPTION: 55 ( 9) Parameter Request List 1 (Subnet mask)

3 (Routers)

6 (DNS server)

12 (Host name)

15 (Domainname)

28 (Broadcast address)

33 (Static route)

121 (Classless Static Route)

249 (MSFT - Classless route)

 

---------------------------------------------------------------------------

 

TIME: 2017-08-14 16:58:06.207

IP: 10.10.242.209 (6c:3b:6b:d1:a3:59) > 10.10.242.1 (c0:3f:d5:e3:5f:f6)

OP: 1 (BOOTPREQUEST)

HTYPE: 1 (Ethernet)

HLEN: 6

HOPS: 1

XID: 16c2e0a0

SECS: 0

FLAGS: 0

CIADDR: 0.0.0.0

YIADDR: 0.0.0.0

SIADDR: 0.0.0.0

GIADDR: 192.168.242.209

CHADDR: 18:d6:c7:f1:0e:ac:00:00:00:00:00:00:00:00:00:00

SNAME: .

FNAME: .

OPTION: 53 ( 1) DHCP message type 1 (DHCPDISCOVER)

OPTION: 55 ( 9) Parameter Request List 1 (Subnet mask)

3 (Routers)

6 (DNS server)

12 (Host name)

15 (Domainname)

28 (Broadcast address)

33 (Static route)

121 (Classless Static Route)

249 (MSFT - Classless route)

 

OPTION: 82 ( 16) Relay Agent Information

Circuit-ID 6c:3b:6b:d1:a3:59

 

 

 

 

настройки mikrotik

 

 

ip address print

Flags: X - disabled, I - invalid, D - dynamic

# ADDRESS NETWORK INTERFACE

0 ;;; defconf

10.10.242.209/19 10.10.224.0 br_vl375

1 192.168.242.209/22 192.168.240.0 br_vl29

 

[admin@AK-242.209] > ip dhcp-relay print

Flags: X - disabled, I - invalid

# NAME INTERFACE DHCP-SERVER LOCAL-ADDRESS

0 relay br_vl375 10.10.242.1 192.168.242.209

 

 

 

mik formware 6.40.1 и пробовал в 6.41rc11

что подшаманить ?

Share this post


Link to post
Share on other sites

1-й пакет от подписчика, 2-й пакет отрелееный микротиком в сторону accel. XID одинаков, разумеется, ибо как иначе идентифицировать сессию на этапе её начала?

В поле xid помещается уникальный идентификатор транзакции, который позволяет отличать данный процесс получения IP-адреса от других, протекающих в то же время

Пологаю, как его получил микротик, так и передал дальше, только уже по unicast, что и требуется от релея.

Что тут не так?

Или у всех запросов разных подписчиков он одинаков?

Хоть одна сессия поднимается полностью?

Edited by bomberman

Share this post


Link to post
Share on other sites

сессия не поднимается т.к.accel-ppp видит очень странно этот пакет, вместо двух запросов как будто один. абонент должен регится по username = giaddr через lua преобразование.

xid у каждого запроса разный.

 

 

info: ipoe0: .[0;39mcreate interface ipoe0 parent eth0.340

debug: ipoe0: .[0;39mradius(1): req_enter 1

info: ipoe0: .[0;39msend [RADIUS(1) Access-Request id=1 <User-Name "0.0.0.0"> <NAS-IP-Address 192.168.0.18> <NAS-Port 58454> <NAS-Port-Id "ipoe0"> <NAS-Port-Type Ethernet> <Calling

info: ipoe0: .[0;39mrecv [DHCPv4 Discover xid=d3ce7e26 giaddr=192.168.242.209 chaddr=18:d6:c7:f1:0e:ac <Message-Type Discover> <Request-List Subnet,Router,DNS,Host-Name,Domain-Name

warn: ipoe0: .[0;39mport change detected

debug: ipoe0: .[0;39mterminate

debug: ipoe0: .[0;39mradius(1): req_exit 0

info: ipoe0: .[0;39mipoe: session finished

 

 

блин понял, думал что xid тоже поменятеся , но relay только дополняет поля. я предпологал что relay должен дробнуть и не передавать broadcast от абонента.

Edited by yazero

Share this post


Link to post
Share on other sites

В этом случае Вы сможете проводить авторизацию разве что только по:

GIADDR: 192.168.242.209
CHADDR: 18:d6:c7:f1:0e:ac:00:00:00:00:00:00:00:00:00:00

Share this post


Link to post
Share on other sites

Всем привет. Подсобите советом. Не могу связать двух клиентов подключенных к 1 accel

У обоих белый IP (из одной сети 91.228.х.0), при попытке пингануть, отвечает внутренним адресом

>ping 91.xx.xx.2

Обмен пакетами с 91.x.x.2 по с 32 байтами данных:
Ответ от 172.20.12.24: число байт=32 время<1мс TTL=63
Ответ от 172.20.12.24: число байт=32 время<1мс TTL=63
Ответ от 172.20.12.24: число байт=32 время<1мс TTL=63
Ответ от 172.20.12.24: число байт=32 время<1мс TTL=63

при этом сервисы не доступный работающие на данном адресе.

Как исправить?

 

С серых адресов через тот же accel или из мира все норм работает.

 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now