#!/bin/sh # delete old tc qdisc del dev eth0 root # clasa root - down tc qdisc add dev eth0 root handle 1: htb default 11 tc class add dev eth0 parent 1: classid 1:1 htb rate 250kbit ceil 500kbit # clasa pentru latenta mica la programe interactive (ssh, irc, etc) tc class add dev eth0 parent 1:1 classid 1:10 htb rate 128kbit ceil 250kbit prio 0 # internet tc class add dev eth0 parent 1:1 classid 1:11 htb rate 1kbit ceil 250kbit prio 5 tc qdisc add dev eth0 parent 1:12 handle 120: sfq perturb 10 tc qdisc add dev eth0 parent 1:13 handle 130: sfq perturb 10 tc qdisc add dev eth0 parent 1:14 handle 140: sfq perturb 10 tc qdisc add dev eth0 parent 1:15 handle 150: sfq perturb 10 tc filter add dev eth0 protocol ip parent 1:1 prio 0 handle 1 fw flowid 1:10 iptables -t mangle --flush # ping iptables -t mangle -A PREROUTING -p icmp -j MARK --set-mark 1 iptables -t mangle -A PREROUTING -p icmp -j RETURN # ssh iptables -t mangle -A PREROUTING -p tcp -m tcp --sport 22 -j MARK --set-mark 1 iptables -t mangle -A PREROUTING -p tcp -m tcp --sport 22 -j RETURN iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 22 -j MARK --set-mark 1 iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 22 -j RETURN # irc iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 6660:6669 -j MARK --set-mark 1 iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 6660:6669 -j RETURN # ... iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j MARK --set-mark 1 iptables -t mangle -I PREROUTING -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j RETURN