Controlando UPLOAD com o CBQ
Amigos, não é um assunto novo, mas como eu tive muita dificuldade em fazer funcionar o UPLOAD usando o CBQ, resolvi então escrever este pequeno artigo, pois pode ser dúvida também de alguém na comunidade.
[ Hits: 29.726 ]
Por: Paulo Cesar em 04/06/2006
Colocando pra rodar
Inicialize o CBQ:
# /sbin/script_cbq.sh start
Inicialize a regra do MANGLE:
copie o arquivo mangle para /etc (cp /etc/cbq/mangle /etc/) e dê permissão de execução a ele:
# chmod +x mangle
Edite-o e acrescente na primeira linha "#/bin/bash". Na segunda linha o comando pra levantar o suporte do kernel ao mangle, "modprobe iptable_mangle".
Exemplo de como ele ficaria:
#!/bin/bash
modprobe iptable_mangle
iptables -t mangle -A FORWARD -s 192.168.10.6 -j MARK --set-mark 3
iptables -t mangle -A FORWARD -s 192.168.10.6 -j ACCEPT
iptables -t mangle -A FORWARD -d 192.168.10.6 -j MARK --set-mark 3
iptables -t mangle -A FORWARD -d 192.168.10.6 -j ACCEPT
Agora execute o mangle:
# /etc/mangle
Se desejar, pode verificar as regras levantadas na CHAIN mangle:
# iptables -t mangle -L
Para limpar as regras basta digitar:
# iptables -t mangle -F
Agora acrescente no seu rc.local uma entrada para levantar o CBQ e o mangle quando a máquina for reiniciada. Exemplo:
# vi /etc/rc.d/rc.local
# levantando o cbq
/sbin/script_cbq.sh start
# levantando o mangle
/etc/mangle
Monitore o acesso agora de sua rede e veja como ficou.
Página anterior Próxima página
Páginas do artigo
1.
Criando os arquivos
2. Colocando pra rodar
3.
Agradecimentos
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada
O Modelo de Referência OSI
Monitorando o consumo de banda com Bwbar
BSD Sockets em linguagem C
Tutorial - Aplicação em C para transferência de arquivo usando socket TCP e Thread
OneAPI: A plataforma da Intel para facilitar o desenvolvimento com chips Intel, AMD, ARM, NVIDIA POWER e FPGA
Comentários
Muito 10!
Éra o q faltava para min o download ja estava funcionando legal! Só faltava o up!...
Sera q vocês tem alguma dica para min, para o cbq não limitar o cache do squid?
Meus parabens, otimo artigo....
Ats.
Mais original que isto é impossível!!!!
Parabéns!
Mensagem
Mais original que isto é impossível!!!!
Parabéns!
tenho o mesmo problema do gilps...
sera que tem solução?????
Muito bom o artigo...
Parabéns
Mensagem
tenho o mesmo problema do gilps...
sera que tem solução?????
Muito bom o artigo...
Parabéns
Parabéns PC!!!
Boa Sorte nos próximos tutos que vc fizer!!!hehehehe
Mensagem
Parabéns PC!!!
Boa Sorte nos próximos tutos que vc fizer!!!hehehehe
Amigo desculpe mais não precisa de nada disso para contolar o upload.
Até pq o mark está apenas nas regras de UP e não de down então vc não precisa usar regras de iptables de entrada e de saida.
Basta apenas usar a opção mark no cbq e depois o iptables ficando assim:
NO CBQ:
cbq-0002.estacao9-out
DEVICE=eth0,100Mbit,10Mbit
RATE=120Kbit
WEIGHT=12Kbit
PRIO=5
RULE=192.168.1.10/32,
BOUNDED=yes
ISOLATED=yes
MARK=10
No Firewall:
iptables -A PREROUTING -t mangle -i eth0 -s 192.168.1.10 -j MARK --set-mark 10
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1016
Leia este artigo e as respostas das perguntas.
Abraço
Mensagem
Amigo desculpe mais não precisa de nada disso para contolar o upload.
Até pq o mark está apenas nas regras de UP e não de down então vc não precisa usar regras de iptables de entrada e de saida.
Basta apenas usar a opção mark no cbq e depois o iptables ficando assim:
NO CBQ:
cbq-0002.estacao9-out
DEVICE=eth0,100Mbit,10Mbit
RATE=120Kbit
WEIGHT=12Kbit
PRIO=5
RULE=192.168.1.10/32,
BOUNDED=yes
ISOLATED=yes
MARK=10
No Firewall:
iptables -A PREROUTING -t mangle -i eth0 -s 192.168.1.10 -j MARK --set-mark 10
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1016
Leia este artigo e as respostas das perguntas.
Abraço
OK lcrdias, obrigado pela dica, quando puder farei o teste. Por enquanto esse jeito foi simples e resolveu aqui na empresa.
Valew a todos!
Mensagem
OK lcrdias, obrigado pela dica, quando puder farei o teste. Por enquanto esse jeito foi simples e resolveu aqui na empresa.
Valew a todos!
cara muito boa essa dida , foi show de bola
Mensagem
cara muito boa essa dida , foi show de bola
cara ficou muito bom, parabéns
Mensagem
cara ficou muito bom, parabéns
Tudo o que eu precisava para implementar controle de banda. Simples, rápido, claro e objetivo, parabens!
Mensagem
Tudo o que eu precisava para implementar controle de banda. Simples, rápido, claro e objetivo, parabens!
VÁrios Mark No Mesmo Arquivo Cbq????
--------------------------------------------------------------------------------
BOA TARDE,
ESTOU COM O SEGUINTE PROBLEMA...TENHO VÁRIOS GRUPOS DE FUNCIONÁRIOS QUE PRECISO LIMITAR A VELOCIDADE DA INTERNET, MAS GOSTARIA TAMBÉM DE LIMITAR O UPLOAD...ENTAO MINHA DÚVIDA É A SEGUINTE:
ARQUIVO CBQ-0002.MANUT.IN
DEVICE=ETH1,100MBIT,10MBIT
RATE=128KBIT
WEIGHT=12KBIT
PRIO=5
RULE=192.168.0.2
RULE=192.168.0.3
RULE=192.168.0.4
RULE=192.168.0.5
BOUNDED=YES
ISOLATED=YES
ARQUIVO CBQ-0004.MANUT.OUT
DEVICE=ETH0,100MBIT,10MBIT
RATE=20KBIT
WEIGHT=2KBIT
PRIO=7
RULE=192.168.0.2,
RULE=192.168.0.3,
RULE=192.168.0.4,
RULE=192.168.0.5,
BOUNDED=YES
ISOLATED=NO
MARK=2
MARK=3
MARK=4
MARK=5
Ai minha dúvida...uso um mark para todos ou para cada um uso o comando mark?
ex: iptables -A PREROUTING -t mangle -s 192.168.0.2 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.3 -j MARK --set-mark 3
iptables -A PREROUTING -t mangle -s 192.168.0.4 -j MARK --set-mark 4
iptables -A PREROUTING -t mangle -s 192.168.0.5 -j MARK --set-mark 5
OU DEVERIA FAZER ASSIM:
ARQUIVO CBQ-0004.MANUT.OUT
DEVICE=ETH0,100MBIT,10MBIT
RATE=20KBIT
WEIGHT=2KBIT
PRIO=7
RULE=192.168.0.2,
RULE=192.168.0.3,
RULE=192.168.0.4,
RULE=192.168.0.5,
BOUNDED=YES
ISOLATED=NO
MARK=2
iptables -A PREROUTING -t mangle -s 192.168.0.2 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.3 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.4 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.5 -j MARK --set-mark 2
Eu quero que esses ips compartilhem um link de 128 k; eu poderia criar um link 128 para cada arquivo, mas ai cada um teria 128 k para navegar e não quero isso. O problema é que surgiu a dúvida quando fui criar o arquivo para upload por causa da questao da marcação dos pacotes ficou a dúvida...posso adicionar 1 mark no arquivo e usar somente ele para todos ou posso adicionar vários marks dentro do mesmo arquivo do cbq e usar cada mark para cada ip?
alguem pode me ajudar....alguem tem uma solucao para o impasse?
Mensagem
VÁrios Mark No Mesmo Arquivo Cbq????
--------------------------------------------------------------------------------
BOA TARDE,
ESTOU COM O SEGUINTE PROBLEMA...TENHO VÁRIOS GRUPOS DE FUNCIONÁRIOS QUE PRECISO LIMITAR A VELOCIDADE DA INTERNET, MAS GOSTARIA TAMBÉM DE LIMITAR O UPLOAD...ENTAO MINHA DÚVIDA É A SEGUINTE:
ARQUIVO CBQ-0002.MANUT.IN
DEVICE=ETH1,100MBIT,10MBIT
RATE=128KBIT
WEIGHT=12KBIT
PRIO=5
RULE=192.168.0.2
RULE=192.168.0.3
RULE=192.168.0.4
RULE=192.168.0.5
BOUNDED=YES
ISOLATED=YES
ARQUIVO CBQ-0004.MANUT.OUT
DEVICE=ETH0,100MBIT,10MBIT
RATE=20KBIT
WEIGHT=2KBIT
PRIO=7
RULE=192.168.0.2,
RULE=192.168.0.3,
RULE=192.168.0.4,
RULE=192.168.0.5,
BOUNDED=YES
ISOLATED=NO
MARK=2
MARK=3
MARK=4
MARK=5
Ai minha dúvida...uso um mark para todos ou para cada um uso o comando mark?
ex: iptables -A PREROUTING -t mangle -s 192.168.0.2 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.3 -j MARK --set-mark 3
iptables -A PREROUTING -t mangle -s 192.168.0.4 -j MARK --set-mark 4
iptables -A PREROUTING -t mangle -s 192.168.0.5 -j MARK --set-mark 5
OU DEVERIA FAZER ASSIM:
ARQUIVO CBQ-0004.MANUT.OUT
DEVICE=ETH0,100MBIT,10MBIT
RATE=20KBIT
WEIGHT=2KBIT
PRIO=7
RULE=192.168.0.2,
RULE=192.168.0.3,
RULE=192.168.0.4,
RULE=192.168.0.5,
BOUNDED=YES
ISOLATED=NO
MARK=2
iptables -A PREROUTING -t mangle -s 192.168.0.2 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.3 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.4 -j MARK --set-mark 2
iptables -A PREROUTING -t mangle -s 192.168.0.5 -j MARK --set-mark 2
Eu quero que esses ips compartilhem um link de 128 k; eu poderia criar um link 128 para cada arquivo, mas ai cada um teria 128 k para navegar e não quero isso. O problema é que surgiu a dúvida quando fui criar o arquivo para upload por causa da questao da marcação dos pacotes ficou a dúvida...posso adicionar 1 mark no arquivo e usar somente ele para todos ou posso adicionar vários marks dentro do mesmo arquivo do cbq e usar cada mark para cada ip?
alguem pode me ajudar....alguem tem uma solucao para o impasse?
Nunca tinha visto controle de upload atraves do NAT que realmente funciona.
ja consegui levantado alias na interface da wan com com a mesma faixa de ip da wan e mascara /32 e regra de nat
idependente pra cada ip da lan, assim funciona tanto os alias ip valido ou ip invalidos, funciona sem precisar regra no iptables,
mas tem um problema so funciona com ip fixo e SNAT e deve ter um gateway, MASQUERADE nao funciona, se depender
receber ip via dhcp de tv a cabo ou adsl isto nao atende, ja vi outros artigos parecido com este testei e nao funcionou.
Este eu testei e realmente o pesadelo parece que acabou, somente o daemon da umas mensagens de erro, eu tenho o mesmo
daemon porem funciona tudo. geraldowc@hotmail.com
Parabéns por este artigo.
Mensagem
Nunca tinha visto controle de upload atraves do NAT que realmente funciona.
ja consegui levantado alias na interface da wan com com a mesma faixa de ip da wan e mascara /32 e regra de nat
idependente pra cada ip da lan, assim funciona tanto os alias ip valido ou ip invalidos, funciona sem precisar regra no iptables,
mas tem um problema so funciona com ip fixo e SNAT e deve ter um gateway, MASQUERADE nao funciona, se depender
receber ip via dhcp de tv a cabo ou adsl isto nao atende, ja vi outros artigos parecido com este testei e nao funcionou.
Este eu testei e realmente o pesadelo parece que acabou, somente o daemon da umas mensagens de erro, eu tenho o mesmo
daemon porem funciona tudo. geraldowc@hotmail.com
Parabéns por este artigo.
e ae tudo bem?
este script e compativel ao fedora 14, cara ja fiz de tudo e nao consigo fazer ele rodar, alguem pode me ajudar, desde ja agradeco.
Mensagem
e ae tudo bem?
este script e compativel ao fedora 14, cara ja fiz de tudo e nao consigo fazer ele rodar, alguem pode me ajudar, desde ja agradeco.
Contribuir com comentário
Enviar