Postado originalmente por
roneyeduardo
Rapá, essas especificidades (tipo, controlar um porta...compartilhar uma certa quantidade de banda entre vários clientes, etc...) pra mim sempre funcionaram 100% com HTB (mas não uso aquele htb.ini, crio as regras na mão)...com CBQ sempre dava uma bronca ou outra...
Mas saca só, não dá pra controlar pacotes na entrada de uma interface (rapá, dizer isso dá uma guerra danada...mas nos meus testes ainda não consegui - é o tal do ingress - se alguém conseguiu, por favor passe a dica)...
Então você teria que marcar os pacotes com destino à porta 25 dos seus clientes:
iptbles -t mangle -A PREROUTING -s 192.168.0.X --dport 25 -j MARK --set-mark 25
Ai você cria as classes com o htb:
tc class add dev eth0 parent 1: classid 1:1 htb rate 100kbit ceil 100kbit quantum 16
tc class add dev eth0 parent 1:1 classid 1:11 htb rate 100kbit ceil 100kbit quantum 15
tc qdisc add dev eth0 parent 1:11 handle 11: sfq perturb 10
Agora você joga os pacotes marcados com a marca "25" na classe criada (100 Kbps):
tc filter add dev eth1 parent 1: protocol ip prio 8 handle 25 fw classid 1:11
Pronto...seus clientes não vão consumir mais que 100 Kbits em acesso SMTP