Boa noite, senhores.
https://under-linux.org/showthread.php?t=187371
Gostaria de implantar o QoS dinâmico do tópico acima, mas em DHCP ao invés de usar PPPoE. Alguém saberia como?
Obrigado!
Boa noite, senhores.
https://under-linux.org/showthread.php?t=187371
Gostaria de implantar o QoS dinâmico do tópico acima, mas em DHCP ao invés de usar PPPoE. Alguém saberia como?
Obrigado!
Quando uma conexão pppoe é estabelecida, ela levanta junto uma regra de queue.
O script que o amigo fez, foi baseado em cima dessa queue, onde ela vira parent para as outras regras que ele vai levantar.
Já o DHCP não faz isso, ele não levanta nenhuma queue ao subir um cliente.
Pensando dessa forma, há 2 formas de fazer o que deseja.
1) Manualmente onde terá que fazer um conjunto de regras para cada endereço IP, e já deixa pronto as regras para todos os endereços que tenham navegação;
2) Através de scripts no lease do DHCP, onde será necessário gerar uma regra indicando o IP do cliente no momento da alocação do lease.
Na segunda forma, adapte o script do amigo para que continue executando após criar a regra base.
Tenho uma regra básica aqui que pode te ajudar nessa empreitada.
Essa regra adiciona uma queue assim que é feito o lease para o cliente, e quando finaliza o lease, ela é removida.
Altere [UP] e [DOWN] para seus valores de upload e download desejados.
if ($leaseBound=1) do={
/queue simple add max-limit=[UP]/[DOWN] target=$leaseActIP comment=$leaseActMAC
} else={
/queue simple remove [find comment=$leaseActMAC]
}
Pra mim, é humanamente impossível rs
Sim, eu encontrei essa regra na net mas não tô conseguindo adaptá-la pro que eu preciso. Vi que é preciso criar novas "queue trees" em cima da "simple queue" que esse script cria, mas não consigo de jeito nenhum!
Alguém saberia?
Esse que postei não é dinâmico, mas talvez ajude até a adaptar para sua necessidade.
Substitua o range de ip 192.168.0 pelo que vc vai usar, e as velocidades que nesse caso estão em 10 megas.
/ queue simple
: for i from=2 to=254 do={ add name=("cliente A" . $i ) target=("192.168.0." . $i . "/32") parent=none limit-at=10M/10M max-limit=10M/10M total-queue=default-small }
Se no manual ainda é difícil, então por enquanto esqueça o automático.
O vinitec passou um comando com loop para adicionar manualmente as regras base.
Você só precisa informar os dados que deseja e ele vai preencher.
Depois que entender como funciona, é só adpatar com mais comandos dentro dos colchetes adicionando as outras queues.