Здравейте. Изчетох много материал за това как да направя шейпър който да може да ограничава на всеки потребител отделно българският и международният интернет. Не видях решение което да ми върши работа и се обръщам към Вас за помощ.
Направил съм следното нещо:
eth0 - internet
eth1 - local
file shaper
Примерен код |
user1=192.168.228.2
/sbin/tc qdisc del dev eth0 root /sbin/tc qdisc add dev eth0 root handle 1: htb default 30 /sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 3mbit burst 20k /sbin/tc class add dev eth0 parent 1: classid 1:10 htb rate 2mbit burst 20k /sbin/tc class add dev eth0 parent 1: classid 1:20 htb rate 512kbit burst 20k /sbin/tc class add dev eth0 parent 1:1 classid 1:30 htb rate 256kbit burst 10k
#bgnets.conf #Съдържа списък с BG мрежите. for i in `cat bgnets.conf | grep -v '^#'` do /sbin/tc filter add dev eth0 parent 1:30 protocol ip prio 100 u32 match ip src $user1 match ip dst $i classid 1:10 /sbin/tc filter add dev eth0 parent 1:30 protocol ip prio 100 u32 match ip src $i match ip dst $user1 classid 1:10 done
echo "Done" }
|
Но явно някъде бъркам.
Ако имате друг скрипт, който да ми свърши работа също ще е от полза.
Благодаря.