Limitando o tamanho de download (dropando ou aceitando) - CATVBRASIL
Bom, sei que estou meio sumido, devido problemas particulares, mas como sempre estou por ae, prestando aquele excelente suporte, treinamentos e etc...
Segue uma dica para aqueles usuários que desejam controlar ou dropar arquivos de acordo com o tamanho.
função: CONNECTION BYTES
Funciona assim:
0 (zero no início) = apartir de (0-500000 = apartir de 0k até 500k)
0 (zero no final) = infinito (500000-0 = apartir de 500k para cima)
Vamos supor que desejamos aceitar conexões com no máximo 500k, ficaria assim:
/ip firewall filter
add chain=forward protocol=tcp dst-port=80 connection-bytes=0-500000 \
action=accept comment="" disabled=no
Vamos supor que desejamos rejeitar todas as outras conexões acima de 500k, ficaria assim:
Versão 2.9.xx:
add chain=forward protocol=tcp dst-port=80 connection-bytes=500000-4294967295 \
action=drop comment="" disabled=no
Versão 3.xx
add chain=forward protocol=tcp dst-port=80 connection-bytes=500000-0 \
action=drop comment="" disabled=no
Vamos supor agora que desejamos rejeitar apenas conexões acima de 500k para um usuário ou um grupo de usuários, ficaria assim:
Versão 2.9.xx:
/ip firewall filter
add chain=forward protocol=tcp dst-port=80 content="" \
connection-bytes=50000-4294967295 src-address-list=no_download \
action=drop comment="" disabled=no
/ip firewall address-list
add list=no_download address=10.0.0.1 comment="" disabled=no
Versão 3.xx:
/ip firewall filter
add chain=forward protocol=tcp dst-port=80 content="" \
connection-bytes=50000-0 src-address-list=no_download \
action=drop comment="" disabled=no
/ip firewall address-list
add list=no_download address=10.0.0.1 comment="" disabled=no
Lembrando que essa mesma dica, você pode fazer outras coisas interessantes, como, marcar conexões de acordo com o tamanho e colocar em uma QOS com prioridades e bandas e disciplinas diferentes, entre outras coisas que a imaginação mandar!!
Fica essa dica simples, porém que parece muito complexa para muitos aqui (tenho acompanhado os tópicos!!). Qualquer dúvida estamos por ae...
Divisão por Tamanho de Downloads
Bom vou postar aqui algumas correções que tive de fazer para as regras postadas anteriormente funcionarem corretamente no meu servidor de teste:
1 - Link para calculo de tamanhos:
Código :
[url=http://www.gwebtools.com.br/converter-bit]Converter bit, byte, kilobit, kilobyte, megabit, megabyte, gigabit, gigabyte[/url]
Correções que foram feitas aqui:
1 - Tamanho de Arquivos
Código :
4M = 4194304 byte
8M = 8388608 byte
12M = 12582912 bytes
2 - Mangle / PassthRough
Tive de seleciona o PassthRough na marcação dos Pacotes, fazendo isso as regras ao atingirem o valor em MB começaram a repassarem para a próxima.
No Manual em PDF, pagina 325 do do MK 3.x em Mangle / Descrição
Código :
Inglês:
passthrough - ignore this rule go on to the next one
Português:
passthrough - Ignore está regra e vá para proxima.
Regras Corrigidas (Para evitar problemas deixei Disabled=yes):
Mikrotik versão 3.25
/IP FIREWALL MANGLE
Código :
/ip firewall mangle
add action=mark-connection chain=output comment="PROXYFULL 0-4M (CATVBRASIL_Editada por Rodrigo_Minelli.'.)" connection-bytes=0-4194304 disabled=yes dscp=4 \
new-connection-mark=Proxy_Full_4Mb_Conn passthrough=yes protocol=tcp
add action=mark-packet chain=output comment="" connection-mark=Proxy_Full_4Mb_Conn disabled=yes new-packet-mark=Proxy_Full_4Mb_Packet passthrough=yes
add action=mark-connection chain=output comment="PROXYFULL 4-8M (CATVBRASIL_Editada por Rodrigo_Minelli.'.)" connection-bytes=4194304-8388608 disabled=yes \
dscp=4 new-connection-mark=Proxy_Full_8Mb_Conn passthrough=yes protocol=tcp
add action=mark-packet chain=output comment="" connection-mark=Proxy_Full_8Mb_Conn disabled=yes new-packet-mark=Proxy_Full_8Mb_Packet passthrough=yes
add action=mark-connection chain=output comment="PROXYFULL 8-12M (CATVBRASIL_Editada por Rodrigo_Minelli.'.)" connection-bytes=8388608-12582912 disabled=yes \
dscp=4 new-connection-mark=Proxy_Full_12Mb_Conn passthrough=yes protocol=tcp
add action=mark-packet chain=output comment="" connection-mark=Proxy_Full_12Mb_Conn disabled=yes new-packet-mark=Proxy_Full_12Mb_Packet passthrough=yes
Queue Tree:
/QUEUE TREE
Código :
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0 max-limit=4M name=Proxy_Full_4Mb packet-mark=Proxy_Full_4Mb_Packet parent=\
global-out priority=2 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0 max-limit=3M name=Proxy_Full_8Mb packet-mark=Proxy_Full_8Mb_Packet parent=\
global-out priority=2 queue=default
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=yes limit-at=0 max-limit=2M name=Proxy_Full_12Mb packet-mark=Proxy_Full_12Mb_Packet parent=\
global-out priority=2 queue=default
Lembrando que as regras são de autoria do CATV_BRASIL e foram adaptadas pra melhor funcionamento por mim.
Por Favor se for util agradeça.
OBS.: Caros Moderadores, fiz questão de ler e imprimir todos os itens da regras deste forum e num vi nenhuma irregularidade neste post por isso gostaria que não o removessem se necessário move-lo.
Por garantia como meus postes teem sumido de vez em quando tirei um PrintScreen caso precise recoloca-lo no forum.
Desde ja Agradeço a todos.
:dito: