up and down shaping based on IP

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello, i have a server (486sx and 16ram). It gives me this error :
NETDEVICE WATCHDOG eth1 : ...timeout.
I checked in many places for solutions. Even wrote to this mailinglist. But lately i recived information, that too much upload
may mix my adsl modem up. So..... my question is how should my script look while the situation is :
eth0 - connected to adsl modem and thus to internet
eth1 - connected to 16port switch which supplies internet to 12 other computers.
dsl connection is 1000/256 kbit/s


Please correct my script to include upload control. Every host should have equal speed.

bernard@gecon:~$ cat /etc/rc.d/rc.htb
#!/bin/sh
CLIENTS="01 05 07 11 12 13 15 18 19 20 21 22"
htb_start() {
echo "tc qdisc add dev eth1 root handle 1: htb default 12"
tc qdisc add dev eth1 root handle 1: htb default 12
echo "tc qdisc add dev eth0 root handle 2: tbf rate 200kbit latency 50ms burst 1540"
tc qdisc add dev eth0 root handle 2: tbf rate 230kbit latency 50ms burst 1540
echo "tc class add dev eth1 parent 1: classid 1:1 htb rate 1000kbit ceil 1000k bit"
tc class add dev eth1 parent 1: classid 1:1 htb rate 1000kbit ceil 1000kbit
echo "Ustawianie klas"
for IP in $CLIENTS; do
tc class add dev eth1 parent 1:1 classid 1:1${IP} htb rate 80kbit ceil 1000k bit cburst 1kbit
done
#dla nie zakwalifikowanych
tc class add dev eth1 parent 1:1 classid 1:100 htb rate 50kbit ceil 50kbit qua ntum 4
echo "Ustawianie filtrów i SFQ"
for IP in $CLIENTS; do
tc filter add dev eth1 protocol ip parent 1: prio 2 u32 match ip dst 192.168 .0.1${IP} flowid 1:1${IP}
tc qdisc add dev eth1 parent 1:1${IP} handle 1${IP}:0 sfq perturb 10
done
tc filter add dev eth1 protocol ip parent 1: prio 3 u32 match ip dst 192.168.0 .0/24 flowid 1:100
}
htb_stop() {
echo "tc qdisc del dev eth1 root"
tc qdisc del dev eth1 root
echo "tc qdisc del dev eth0 root"
tc qdisc del dev eth0 root
}
case "$1" in
'start')
htb_start
;;
'stop')
htb_stop
;;
'restart')
htb_stop
htb_start
;;
*)
echo "usage $0 start|stop|restart"



_______________________________________________ LARTC mailing list / LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux