CBQ: Controle efetivo II

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

[ Hits: 9.163 ]

 


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

Comando sed para formatar datas

Comando seq com saída em hexadecimal

Proxy ARP: Abrindo um servidor da rede interna para a internet com a ferramenta ip

Lógica booleana com o test

[RESOLVIDO] Slackware 13.1.x sob CentOS/KVM não reconhece interface de rede

Leitura recomendada

Integrando o wget com o Netscape

Turbinando o Firefox

Automatizando o download de fotos de um determinado site

Instalando o modem HUAWEI E226 USB 3G da Claro no Debian

Temas e extensões: Resolvendo problemas de instalação no Firefox

  

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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts