Lucas Paz wrote: > Galera, bom dia, > > tenho um servidor de e-mail e web que está atraz de um firewall, > acontece que como a maioria do pessoal tem ADSL 2 pessoas conectadas > consomem toda a banda do link que é de 512kbps > vc's conhecem alguma maneira de limitar esse acesso, ou seja, deixar a > pessoa fazer download no maximo a 20KBps ou algo assim?
Se o script anexo for útil, pode ajustar e usar à vontade. -- André Carezia Eng. de Telecomunicações Carezia Consultoria - www.carezia.srv.br
#!/bin/sh # # André Carezia <[EMAIL PROTECTED]> export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" IPTABLES="/sbin/iptables" TC="/sbin/tc" IFACE=eth0 RATE=512kbit P_SMTP=25 P_HTTP=80 B_SMTP=64kbit B_HTTP=64kbit start_tc() { $TC qdisc add dev $IFACE root handle 1: htb default 5 $TC class add dev $IFACE parent 1: classid 1:1 htb \ rate $RATE ceil $RATE prio 1 $TC class add dev $IFACE parent 1: classid 1:5 htb \ rate 64kbit ceil 64kbit prio 2 $IPTABLES -t mangle -A POSTROUTING -o $IFACE -p tcp \ --source-port $P_SMTP -j MARK --set-mark $P_SMTP $TC class add dev $IFACE parent 1:1 classid 1:$P_SMTP htb \ rate $B_SMTP ceil $B_SMTP prio 1 $TC filter add dev $IFACE parent 1: protocol ip prio 1 \ handle $P_SMTP fw flowid 1:$P_SMTP $IPTABLES -t mangle -A POSTROUTING -o $IFACE -p tcp \ --source-port $P_HTTP -j MARK --set-mark $P_HTTP $TC class add dev $IFACE parent 1:1 classid 1:$P_HTTP htb \ rate $B_HTTP ceil $B_HTTP prio 1 $TC filter add dev $IFACE parent 1: protocol ip prio 1 \ handle $P_HTTP fw flowid 1:$P_HTTP } stop_tc() { $TC qdisc del dev $IFACE root $IPTABLES -t mangle -F } case "$1" in start) echo -n "Iniciando controle de banda..." start_tc echo " ok" ;; stop) echo -n "Desligando controle de banda..." stop_tc echo " ok" ;; *) echo "Usage: $0 {start|stop}" exit 1 esac