
Модуль динамического шейпирования не предлогать

Всё должно работать корректно, насколько я помню.Yuriy писал(а):Подниму эту тему чтобы не продить новые.
Вопрос к знающим людям - насколько корректна операция добавления радиус-параметра в тариф, на котором уже работают клиенты? Нетап у меня в этому случае ругается, но параметры всёравно добавляет! Всё-ли будет продолжать корректно работать в этому случае?
UTM 5.2.1-004
У меня вместо "Vendor:0 Attr:230 Val:1024" и "Vendor:0 Attr:230 Val:1024" тип "String" становится "Vendor:0 Attr:230 Val:875704369" и "Vendor:0 Attr:231 Val:875704369" и тип "Номер".Хм....добавляюв сущствующий ТП следующий радиус-параметр
Vendor:0;Attr:230;Val:1024 тип String
потом проверяю - а там вместо 1024 какоето сумасшедшее число вроде "1820319" так и должно быть? ) а где моё 1024?
Код: Выделить всё
?Debug : Apr 10 10:33:15 AuthServer: User <test_user> connecting
?Debug : Apr 10 10:33:15 AuthServer: Session for sessionid <test_user> not found in <this.is.route> cache
?Debug : Apr 10 10:33:15 RADIUS DBA: Info for login <test_user> found. type <1>
?Debug : Apr 10 10:33:15 AuthServer: Auth scheme: CHAP
?Debug : Apr 10 10:33:15 AuthServer: CHAP: Challenge size: 20
?Debug : Apr 10 10:33:15 AuthServer: CHAP: Authorized user <test_user>
?Debug : Apr 10 10:33:15 AuthServer: IP claimed: 0xc0a86410 (<192.168.100.16>)
?Debug : Apr 10 10:33:15 AuthServer: Calling fill radius attributes for service. Attr storage size <2>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data Vendor:<0> Attr:<230> Val:<875704369> Size<4>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data result <0> message <Success>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data verifying packet. fetched val <-1243451640> size:<4>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data Vendor:<0> Attr:<231> Val:<875704369> Size<4>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data result <0> message <Success>
?Debug : Apr 10 10:33:15 AuthServer: fill_radius_data verifying packet. fetched val <-1243452936> size:<4>
?Debug : Apr 10 10:33:15 AuthServer: Calling fill radius attributes for slink. Attr storage size <0>
?Debug : Apr 10 10:33:15 AuthServer: Calling fill radius attributes for NAS. Attr storage size <0>
Notice: Apr 10 10:33:15 AuthServer: Login OK <test_user> from NAS <this.is.route> CLID <>
?Debug : Apr 10 10:33:15 AuthServer: Setting interim update interval from config
?Debug : Apr 10 10:33:15 AuthServer: Auth reply: RPacket:
Code: 2; ID: 69
<Vendor: 0; Attr: 6>[4]: 00000002
<Vendor: 0; Attr: 7>[4]: 00000001
<Vendor: 0; Attr: 8>[4]: c0a86410
<Vendor: 0; Attr: 9>[4]: ffffffff
<Vendor: 0; Attr: 10>[4]: 00000000
<Vendor: 0; Attr: 27>[4]: 00015180
<Vendor: 0; Attr: 85>[4]: 0000003c
<Vendor: 0; Attr: 230>[4]: 34323031
<Vendor: 0; Attr: 231>[4]: 34323031
?Debug : Apr 10 10:33:15 RADIUS Packet: raw data constructed! size <74>
?Debug : Apr 10 10:33:15 RadiusSocket: Moving RADIUS packet into send queue
?Debug : Apr 10 10:33:15 AuthServer: Next...
?Trace : Apr 10 10:33:15 AuthServer: Process loop step
?Debug : Apr 10 10:33:15 RadiusSocket: Waiting for RADIUS raw data
?Debug : Apr 10 10:33:15 RadiusSocket: RADIUS raw data sent
?Debug : Apr 10 10:33:15 RadiusSocket: RADIUS raw data sent
?Debug : Apr 10 10:33:15 RadiusSocket: RADIUS packet successfully received
?Debug : Apr 10 10:33:15 RadiusSocket: RADIUS raw data obtained
?Debug : Apr 10 10:33:15 RADIUS Packet: Size <120>; HDR.Size <120>
?Debug : Apr 10 10:33:15 AcctServer: Recv...
?Debug : Apr 10 10:33:15 AcctServer: Packet from <this.is.route> packet dump: RPacket:
Code: 4; ID: 70
<Vendor: 0; Attr: 1>[9]: 746573745f75736572
<Vendor: 0; Attr: 4>[4]: 7f000001
<Vendor: 0; Attr: 5>[4]: 0000001b
<Vendor: 0; Attr: 6>[4]: 00000002
<Vendor: 0; Attr: 7>[4]: 00000001
<Vendor: 0; Attr: 8>[4]: c0a86410
<Vendor: 0; Attr: 31>[17]: 30303a31363a45363a36323a46453a4241
<Vendor: 0; Attr: 40>[4]: 00000001
<Vendor: 0; Attr: 41>[4]: 00000000
<Vendor: 0; Attr: 44>[14]: 3437464443343738324337393030
<Vendor: 0; Attr: 45>[4]: 00000001
<Vendor: 0; Attr: 61>[4]: 00000000
?Debug : Apr 10 10:33:15 RADIUS DBA: NAS found. Data size <0>
?Debug : Apr 10 10:33:15 AcctServer: Acct packet with session ID: 47FDC4782C7900
?Debug : Apr 10 10:33:15 RADIUS DBA: NAS found. Data size <0>
?Debug : Apr 10 10:33:15 AcctServer: Acct-Start packet
?Debug : Apr 10 10:33:15 AcctServer: Acct-Start: User <test_user>
?Debug : Apr 10 10:33:15 AcctServer: Acct-Session-Time (46) not present in accountg packet ! Setting session_time_not_present flag ...
?Debug : Apr 10 10:33:15 AcctServer: No h323-setup-time (9, 25) attribute in accountig start packet. Setting to NOW <1207812795>!
?Debug : Apr 10 10:33:15 RADIUS DBA: Info for login <test_user> found. type <1>
?Debug : Apr 10 10:33:15 RADIUS DBA: info for user found. type <1> info addr <-1243450400>
?Debug : Apr 10 10:33:15 RADIUS DBA: search_user_info return info <-1243450400>
?Debug : Apr 10 10:33:15 RADIUS DBA: search_user_info return valid info
?Debug : Apr 10 10:33:15 RADIUS IPPool: Bind <c0a86410> : <c0a86410>
?Debug : Apr 10 10:33:15 RADIUS DBA: Setting interim interval <0> for session id <47FDC4782C7900>
?Debug : Apr 10 10:33:15 RADIUS DBA: Calling send_session_log_init_sync ...
?Debug : Apr 10 10:33:15 RADIUS Stream[plugin]: send_session_log_init_sync
?Debug : Apr 10 10:33:15 RADIUS Stream[plugin]: init log id <8949>
?Debug : Apr 10 10:33:15 AcctServer: Reply packet dump: RPacket:
Code: 5; ID: 70
?Debug : Apr 10 10:33:15 RadiusSocket: Moving RADIUS packet into send queue
?Debug : Apr 10 10:33:15 AcctServer: Next...
?Debug : Apr 10 10:33:15 RadiusSocket: Waiting for RADIUS raw data
?Debug : Apr 10 10:33:15 RadiusSocket: RADIUS raw data sent
?Debug : Apr 10 10:33:15 RADIUS Stream[plugin]: Ping reply received
?Debug : Apr 10 10:33:15 StreamConnection: Message id <0x202f>, handler returns 0
?Debug : Apr 10 10:33:16 RadiusSocket: RADIUS packet successfully received
?Debug : Apr 10 10:33:16 RadiusSocket: RADIUS raw data obtained
?Debug : Apr 10 10:33:16 RADIUS Packet: Size <150>; HDR.Size <150>
?Debug : Apr 10 10:33:16 AcctServer: Recv...
?Debug : Apr 10 10:33:16 AcctServer: Packet from <this.is.route> packet dump: RPacket:
Code: 4; ID: 71
<Vendor: 0; Attr: 1>[9]: 7363686f6f6c5f3137
<Vendor: 0; Attr: 4>[4]: 7f000001
<Vendor: 0; Attr: 5>[4]: 00000002
<Vendor: 0; Attr: 6>[4]: 00000002
<Vendor: 0; Attr: 7>[4]: 00000001
<Vendor: 0; Attr: 8>[4]: c0a8645b
<Vendor: 0; Attr: 31>[17]: 30303a31423a31313a41303a35323a3436
<Vendor: 0; Attr: 40>[4]: 00000003
<Vendor: 0; Attr: 41>[4]: 00000000
<Vendor: 0; Attr: 42>[4]: 001e933d
<Vendor: 0; Attr: 43>[4]: 02281356
<Vendor: 0; Attr: 44>[14]: 3437464442413836323832453030
<Vendor: 0; Attr: 45>[4]: 00000001
<Vendor: 0; Attr: 46>[4]: 000009f3
<Vendor: 0; Attr: 47>[4]: 00005c9d
<Vendor: 0; Attr: 48>[4]: 000072f3
<Vendor: 0; Attr: 61>[4]: 00000000
Код: Выделить всё
#!/bin/bash
RATE=${4:-64}
IP=${2:-192.168.255.254}
CLASS=$3
start() {
/sbin/tc qdisc add dev eth0 root handle 1 htb default 0 r2q 5
/sbin/tc class add dev eth0 parent 1: classid 1:2 htb rate 95Mbit burst 3k quantum 8192
/sbin/tc qdisc add dev eth1 root handle 1 htb default 0 r2q 5
/sbin/tc class add dev eth1 parent 1: classid 1:2 htb rate 95Mbit burst 3k quantum 8192
}
stop() {
/sbin/tc qdisc del dev eth0 root
/sbin/tc qdisc del dev eth1 root
}
set_limit() {
/sbin/iptables -t mangle -A POSTROUTING -d $IP/32 -j MARK --set-mark 0x$CLASS
/sbin/iptables -t mangle -A PREROUTING -s $IP/32 -j MARK --set-mark 0x$CLASS
/sbin/tc class add dev eth0 parent 1:2 classid 1:$CLASS htb rate ${RATE}Kbit
/sbin/tc qdisc add dev eth0 parent 1:$CLASS handle $CLASS sfq perturb 10
/sbin/tc filter add dev eth0 parent 1:0 protocol ip prio 100 handle 0x$CLASS fw classid 1:$CLASS
/sbin/tc class add dev eth1 parent 1:2 classid 1:$CLASS htb rate ${RATE}Kbit
/sbin/tc qdisc add dev eth1 parent 1:$CLASS handle $CLASS sfq perturb 10
/sbin/tc filter add dev eth1 parent 1:0 protocol ip prio 100 handle 0x$CLASS fw classid 1:$CLASS
}
remove_limit() {
/sbin/iptables -t mangle -D POSTROUTING -d $IP/32 -j MARK --set-mark 0x$CLASS
/sbin/iptables -t mangle -D PREROUTING -s $IP/32 -j MARK --set-mark 0x$CLASS
/sbin/tc filter del dev eth0 parent 1:0 protocol ip prio 100 handle 0x$CLASS fw classid 1:$CLASS
/sbin/tc qdisc del dev eth0 parent 1:$CLASS handle $CLASS
/sbin/tc class del dev eth0 parent 1:2 classid 1:$CLASS
/sbin/tc filter del dev eth1 parent 1:0 protocol ip prio 100 handle 0x$CLASS fw classid 1:$CLASS
/sbin/tc qdisc del dev eth1 parent 1:$CLASS handle $CLASS
/sbin/tc class del dev eth1 parent 1:2 classid 1:$CLASS
}
case "$1" in
init)
start
;;
end)
stop
;;
start)
set_limit $IP $CLASS $RATE
;;
stop)
remove_limit $IP $CLASS
;;
*)
echo "Usage: $0 (init|end|start|stop) [ip-address] [class] [rate]"
echo "UTM5: $0 start UIP RULE_ID <rate>"
exit 1
esac