Не передается шейпер по временным интервалам в CoA-Request

Bug reports
Post Reply
iskratel
Posts: 3
Joined: 28 Apr 2016, 21:51

Не передается шейпер по временным интервалам в CoA-Request

Post by iskratel »

От биллинговой системы приходит CoA запрос вида: L4-Redirect=0,Filter-Id=50000/50000,Filter-Id=1,100000/100000,Filter-Id=2,100000/100000,Filter-Id=3,100000/100000,User-Name=d4:ca:6d:d6:bd:ba,Framed-IP-Address=10.5.49.10
В логах accel следующее:
debug: recv [RADIUS CoA-Request id=c6 <L4-Redirect 0> <Filter-ID "50000/50000"> <Filter-ID "1">]
warn: radius:dm_coa: session not found
info: send [Radius CoA-NAK id=c6 <Error-Cause Session-Context-Not-Found>]
Если не передавать Filter-Id=1,100000/100000,Filter-Id=2,100000/100000,Filter-Id=3,100000/100000, то запрос проходит нормально.
User avatar
ldemiurg
Posts: 14
Joined: 14 Apr 2015, 12:20
Location: UA, Kiev
Contact:

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by ldemiurg »

Это происходит при смене одного тарифа на другой.
В каждом из тарифов включены временные интервалы для шейпера.

Поэтому так посылает.

При авторизации пакет схожий все работает.
А вот на CoA такие пироги.
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by Dmitry »

проверьте wireshark'ом что там реально отправляется
iskratel
Posts: 3
Joined: 28 Apr 2016, 21:51

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by iskratel »

Dmitry wrote:проверьте wireshark'ом что там реально отправляется
Пробовал отправлять вручную coa запрос:
echo "L4-Redirect=0,Filter-Id=50000/50000,Filter-Id=1,60000/60000,Filter-Id=2,80000/80000,Filter-Id=3,100000/100000,User-Name=d4:ca:6d:d6:bd:ba,Framed-IP-Address=10.5.49.10" | radclient -x 10.50.50.20:3799 coa secret787
В итоге:
Sending CoA-Request of id 189 to 10.50.50.20 port 3799
L4-Redirect = 0
Filter-Id = "50000/50000"
Filter-Id = "1"
rad_recv: CoA-NAK packet from host 10.50.50.20 port 3799, id=189, length=26
Error-Cause = Session-Context-Not-Found

Такой запрос проходит:
echo "L4-Redirect=0,Filter-Id=60000/60000,User-Name=d4:ca:6d:d6:bd:ba,Framed-IP-Address=10.5.49.10" | radclient -x 10.50.50.20:3799 coa secret787
Sending CoA-Request of id 134 to 10.50.50.20 port 3799
L4-Redirect = 0
Filter-Id = "60000/60000"
User-Name = "d4:ca:6d:d6:bd:ba"
Framed-IP-Address = 10.5.49.10
rad_recv: CoA-ACK packet from host 10.50.50.20 port 3799, id=134, length=20
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by Dmitry »

так ты вайршарком посмотрел или нет ?
в radclient'e запятая используется для разделения атрибутов и если запятая присутсвует в значении, то не понятно как её экранировать
попробуй запятую в значении заменить точкой
iskratel
Posts: 3
Joined: 28 Apr 2016, 21:51

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by iskratel »

В таком виде: echo "L4-Redirect=0,Filter-Id=40000/40000,Filter-Id=1.60000/60000,Filter-Id=2.80000/80000,Filter-Id=3.100000/100000,User-Name=d4:ca:6d:d6:bd:ba,Framed-IP-Address=10.5.49.10" | radclient -x 10.50.50.20:3799 coa secret787 запрос проходит, но accel не правильно интерпретирует значения шейперов.
Работает правильно при отправке следующего запроса:
echo 'L4-Redirect=0,Filter-Id=50000/50000,Filter-Id="1,60000/60000",Filter-Id="2,80000/80000",Filter-Id="3,100000/100000",User-Name=d4:ca:6d:d6:bd:ba,Framed-IP-Address=10.5.49.10' | radclient -x 10.50.50.20:3799 coa secret787
Проблема не в accel, тему можно закрывать. Извините!
User avatar
ldemiurg
Posts: 14
Joined: 14 Apr 2015, 12:20
Location: UA, Kiev
Contact:

Re: Не передается шейпер по временным интервалам в CoA-Request

Post by ldemiurg »

Спасибо большое за помощь.

Прошу прощения за ложный баг.
Post Reply