CBQ: Controle efetivo II

Publicado por Carlos Affonso Henriques. em 22/05/2007

[ Hits: 9.757 ]

 


CBQ: Controle efetivo II



Muito já se falou e escreveu sobre CBQ, mas recentemente precisei implementar um controle de banda para um provedor wireless, e era necessário que fosse individualmente e não por sub redes inteiras.

Então ficou assim:

1 - Marcamos os pacotes de cada um dos IPs dos clientes da seguinte forma: imediatamente após a regra que faz a NAT, adicione as seguintes linhas:

# Marcação de pacotes
for i in `seq 11 254`
    do
    iptables -t mangle -A POSTROUTING -s 192.168.$i.10 -j MARK --set-mark $i
done

Onde a variável $i corresponde às subredes (1 para cada IP) sob a máscara 255.255.255.254 ou /31, o comando "seq 11 254" é o range de IPs/subredes que deverão ser marcados.

2 - Em /etc/sysconfig/cbq/, crie um par de arquivos de configuração para cada um dos IPs, sendo 1 para a interface de rede eth0 (interna/download) e outro para a ppp0(externa/upload). Ex: para 192.168.30.10 arquivo cbq0030.eth0 (download):

DEVICE=eth0,100Mbit,10Mbit
RATE=1024Kbit
WEIGHT=102Kbit
PRIO=5
RULE=192.168.30.10
BOUNDED=yes
ISOLATED=yes

Para interface ppp0 cbq0030.ppp0 (upload):

DEVICE=ppp0,2Mbit,200Kbit
RATE=70Kbit
WEIGHT=7Kbit
PRIO=5
BOUNDED=yes
ISOLATED=yes
MARK=30

Note o parâmetro MARK=30 acima, ou seja, ele atua somente sobre os pacotes que possuem tal marca sem alterar os demais, aqueles que são oriundos do ip 192.168.30.10 para a rede externa.

Outras dicas deste autor

Capturando o MAC address do cliente via Apache

Renomeando interfaces de rede com nameif e /etc/mactab

Raspberry PI 3: Wireless integrada funcionando no Slackware ARM

Astralinux: Imagem Docker oficial

Filtro de conteúdo com iptables

Leitura recomendada

Abrindo mais de um cliente Telegram

Ajude o Doode a ser Oficial no Ubuntu

Instalação do plugin Djvu no Mozilla/Firefox

Removendo a identificação do servidor e do Squid do rodapé

Site para checar performance da sua Internet

  

Comentários
[1] Comentário enviado por malanga em 22/05/2007 - 20:40h

Boa,

o cbq é muito interessante.... parabens.

[2] Comentário enviado por capitainkurn em 28/05/2007 - 16:33h

Obrigado!

[3] Comentário enviado por piramideinfo em 02/06/2007 - 13:30h

Boa,
Configurei o CBQ no Fedora Core 5 , mas dá uma mensagem de erro, gostaria de saber se alguem já viu ou si sabe qual erro é esse.
"find:warning: you have specified the - maxdepth option after a non-option argument (, but options are not positional (-maxdepth affets tests spedified before it as well as those specified after it). Please specify options before other arguments."

[4] Comentário enviado por capitainkurn em 19/06/2007 - 09:56h

Essencialmente o cbq.init nada mais ~e que um shell script que manipula a ferramnta tc do iptools. Creio que sei problema haja ocorrido d3evido aos nomes deos arquivos de configura~c"ao do CBQ, onde a contri~ca eh a seguinte:
cbq-0000.eth0

onde o 0000 corresponde a um valor hexadecimal o mesmo valor da marca de pacotes pre-definida no iptables

Se voce nao marcar os pacotes no iptables o shapper nao atuara de forma alguma.

[5] Comentário enviado por filesgh em 03/02/2009 - 16:40h

Cara, muito bom seu artigo. Me resolveu um problemão.. Grande abraço!



Contribuir com comentário