Portál AbcLinuxu, 17. července 2025 22:25
#!/bin/bash
set_shaper()
{
SHAPE_IN=$1
SHAPE_OUT=$2
SHAPE_IP=$3
SHAPE_SPEED=$4
SHAPE_ID=$5
tc qdisc add dev $SHAPE_IN root handle 1: htb default 30
tc class add dev $SHAPE_IN parent 1: classid 1:$SHAPE_ID htb rate $SHAPE_SPEED ceil $SHAPE_SPEED burst 1600b cburst 1600b
tc qdisc add dev $SHAPE_IN parent 1:$SHAPE_ID handle $SHAPE_ID: sfq perturb 10
tc filter add dev $SHAPE_IN protocol ip parent 1:0 u32 match ip dst $SHAPE_IP/24 flowid 1:$SHAPE_ID
tc qdisc add dev $SHAPE_OUT root handle 1: htb default 30
tc class add dev $SHAPE_OUT parent 1: classid 1:$SHAPE_ID htb rate $SHAPE_SPEED ceil $SHAPE_SPEED burst 1600b cburst 1600b
tc qdisc add dev $SHAPE_OUT parent 1:$SHAPE_ID handle $SHAPE_ID: sfq perturb 10
tc filter add dev $SHAPE_OUT protocol ip parent 1:0 u32 match ip src $SHAPE_IP/24 flowid 1:$SHAPE_ID
}
set_shaper eth1 eth2 192.168.1.0 128kbit 100
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.