Página 1 de 30 123456 ... ÚltimoÚltimo
+ Responder ao Tópico



  1. IMPORTANTE *************
    Antes de tudo, atualize sua RB para versão 6 ou superior.
    Verifique se o firmware dela está atualizado também...

    Código :
    /system routerboard print
    /system routerboard upgrade

    ps: nessas regras, eu estou supondo que os IPs dos seus clientes chegam até a RB Balance
    Caso você tenha outra RB que faça a autenticação dos clientes, nesse caso, é preciso criar uma rota entre a RB Balance e a RB de autenticação.
    ********************************


    Agora vamos definir alguns pontos do script (altere conforme sua rede)
    Código :
    IP InterfaceLINK1 = 192.168.2.2/24 - Ether1
    LINK2 = 192.168.3.2/24 - Ether2
    Clientes = 10.0.0.1/16 - Ether3
     
     
    Gateway Verdadeiro
    LINK1 = 192.168.2.1
    LINK2 = 192.168.3.1
     
     
    Gateway Falso (é usado na configuração do failover automatico)
    LINK1 = 192.168.30.1
    LINK2 = 192.168.31.1
     
     
     
     
    Sites que iremos testar:
    LINK1 = 208.67.222.220 (opendns)
    LINK1 = 200.160.2.3 (registro.br)
     
     
    LINK2 = 208.67.220.222 (opendns)
    LINK2 = 200.160.2.4 (registro.br)





    Agora vamos começar a criar nosso Balance.
    #########################
    1 - Verifique se o nome das Interfaces está conforme descrito acima, caso contrario, altere o nome no script.
    Para verificar, vá em /ip interfaces




    #########################
    2 - Adicione os IPs nas suas respectivas interfaces
    Código :
    /ip address
    ip address add address=192.168.2.2/24 interface=Ether1
     
     
    ip address add address=192.168.3.2/24 interface=Ether2
     
     
    ip address add address=10.0.0.1/8 interface=Ether3



    #########################
    3 - Configure o DNS
    Vá em /ip dns
    em "Servers" coloque os DNS do Google e do OpenDNS
    8.8.8.8
    208.67.222.222
    8.8.4.4
    208.67.220.220




    #########################
    4 - Ative o NAT Geral
    Código :
    /ip firewall nat
    add action=masquerade chain=srcnat comment="### MASQUERADE ###"



    #########################
    5 - Site fora do Balance
    Alguns criam regras para tirar determinado site das regras do Balance, fazendo-o passar pelo link default, sobrecarregando apenas um link.
    Eu faço diferente, eu jogo eles em uma Regra de balance personalizada, com o per-connection-classifier=src-address


    Dessa forma, termos uma divisão melhor do link.
    Enquanto Cliente A acessa o UOL pelo Link 1
    o Cliente B tem chance de acessar o UOL pelo Link 2


    Código :
    /ip firewall mangle
    add action=jump chain=prerouting dst-port=443 in-interface=Ether3 jump-target=POLITICA_SrcAddress protocol=tcp
    add action=jump chain=prerouting dst-address-list=loopback dst-address-type=!local in-interface=Ether3 jump-target=POLITICA_SrcAddress
     
     
    add action=mark-routing chain=POLITICA_SrcAddress comment="POLITICA BALANCE - Fora Balance" dst-address-type=!local new-routing-mark=LINK1 passthrough=no per-connection-classifier=src-address:2/0
    add action=mark-routing chain=POLITICA_SrcAddress dst-address-type=!local new-routing-mark=LINK2 passthrough=no per-connection-classifier=src-address:2/1
     
     
    /ip firewall address-list
    add address=200.155.80.0-200.155.255.255 comment=BRADESCO disabled=no list=loopback
    add address=200.220.186.0/24 comment=BRADESCO disabled=no list=loopback
    add address=200.220.178.0/24 comment=BRADESCO disabled=no list=loopback
    add address=200.155.86.0/24 comment="BRADESCO PJ" disabled=no list=loopback
    add address=200.155.82.0/23 comment="BRADESCO PJ" disabled=no list=loopback
    add address=187.6.86.0/24 comment="ISSNET ONLINE" list=loopback
    add address=189.86.4.0/24 comment="ISSNET ONLINE" list=loopback
    add address=161.148.231.0/24 comment="RECEITA FEDERAL" list=loopback
    add address=72.46.128.0/19 comment="FILMES - VIDIG.BIZ" list=loopback
    add address=77.247.176.0/21 comment="Vidig Videos" list=loopback
    add address=200.201.166.0/24 comment="CONECTIVIDADE SOCIAL" list=loopback
    add address=200.201.173.0/24 comment="CONECTIVIDADE SOCIAL" list=loopback
    add address=200.201.174.0/24 comment="CONECTIVIDADE SOCIAL" list=loopback
    add address=85.159.232.0/21 comment="Vidig Videos" list=loopback
    add address=200.175.132.200/29 comment="ISSNET ONLINE" list=loopback
    add address=187.45.224.0/19 comment="ISSNET ONLINE" list=loopback
    add address=189.86.4.48/28 comment="NOTA CONTROL" list=loopback
    add address=78.140.0.0/16 comment=VIDIG list=loopback
    add address=94.75.192.0/18 comment=VIDIG list=loopback
    add address=72.21.80.0/20 comment=VIDIG list=loopback
    add address=93.174.88.0/21 comment=VIDIG list=loopback
    add address=108.166.56.0/22 comment=VIDIG list=loopback
    add address=201.73.169.55 list=loopback
    add address=85.159.237.0/24 comment=CloudZilla list=loopback
    add address=37.59.0.0/18 comment=CloudZilla list=loopback
    add address=46.166.184.0/21 comment=CloudZilla list=loopback



    #########################
    6- Regras de Balance Geral


    Código :
    /ip firewall mangle
    add action=mark-routing chain=prerouting comment="POLITICA BALANCE" dst-address-type=!local in-interface=Ether3 new-routing-mark=LINK1 passthrough=no per-connection-classifier=both-addresses:2/0
    add action=mark-routing chain=prerouting dst-address-type=!local in-interface=Ether3 new-routing-mark=LINK2 passthrough=no per-connection-classifier=both-addresses:2/1



    #########################
    7- Regras de IP Route e Failover


    Código :
    /ip route
    add distance=1 dst-address=0.0.0.0/0 gateway=192.168.30.1
    add distance=2 dst-address=0.0.0.0/0 gateway=192.168.31.1
     
     
     
     
     
     
    add comment="TESTE 1 LINK1" distance=1 dst-address=208.67.222.220/32 gateway=192.168.2.1 scope=10
    add comment="TESTE 2 LINK1" distance=1 dst-address=200.160.2.3/32 gateway=192.168.2.1 scope=10
     
     
    add comment="TESTE 1 LINK2" distance=1 dst-address=208.67.220.222/32 gateway=192.168.3.1 scope=10
    add comment="TESTE 2 LINK2" distance=1 dst-address=200.160.2.4/32 gateway=192.168.3.1 scope=10
     
     
     
     
     
     
    add check-gateway=ping disabled=no distance=1 dst-address=192.168.30.1/32 gateway=208.67.222.220 scope=10 target-scope=10
    add check-gateway=ping disabled=no distance=2 dst-address=192.168.30.1/32 gateway=200.160.2.3 scope=10 target-scope=10
     
     
    add check-gateway=ping disabled=no distance=1 dst-address=192.168.31.1/32 gateway=208.67.220.222 scope=10 target-scope=10
    add check-gateway=ping disabled=no distance=2 dst-address=192.168.31.1/32 gateway=200.160.2.4 scope=10 target-scope=10
     
     
     
     
     
     
    add distance=3 gateway=192.168.30.1 routing-mark=LINK1
    add distance=4 gateway=192.168.31.1 routing-mark=LINK1
     
     
    add distance=3 gateway=192.168.31.1 routing-mark=LINK2
    add distance=4 gateway=192.168.30.1 routing-mark=LINK2



    #########################
    8- (OPCIONAL) Caso queira poder acessar os modens que estão a frente do Balance (OPCIONAL)
    Essas regras devem ficar acima das regras de balance (regras descritas nos itens 5 e 6)
    Código :
    /ip firewall mangle
    add chain=prerouting comment="ACEITA REDE - PARA ACESSO AOS MODENS" disabled=yes dst-address=192.168.2.1/24 src-address=10.0.0.0/16
    add chain=prerouting disabled=yes dst-address=192.168.3.1/24 src-address=10.0.0.0/16



    #########################
    8- (OPCIONAL) Caso queira ter o controle de direcionar um outro cliente/site para sair por determinado link (OPCIONAL)
    Esas regras devem ficar acima das regras de balance (regras descritas nos itens 5, 6 e 8)


    Para sair pelo LINK1
    vá em /ip firewall address-list
    e adicione o IP do cliente em uma lista com o nome CLIENTE1
    ou adicione o IP do site em uma lista com nome SITE1


    Regra para sair pelo Link1 (adicione-a acima de todas as outras):
    Código :
    /ip firewa mangle
    add action=mark-routing chain=prerouting comment="REGRA 0 (Cliente) REGRA 1 (Site) POR LINK 1" in-interface=Ether3 new-routing-mark=LINK1 passthrough=no src-address=CLIENTE1
    add action=mark-routing chain=prerouting dst-address-list=SITE1 in-interface=Ether3 new-routing-mark=LINK1 passthrough=no



    Para sair pelo LINK2
    vá em /ip firewall address-list
    e adicione o IP do cliente em uma lista com o nome CLIENTE2
    ou adicione o IP do site em uma lista com nome SITE2


    Regra para sair pelo Link2 (adicione-a acima de todas as outras):
    Código :
    /ip firewa mangle
    add action=mark-routing chain=prerouting comment="REGRA 2 (Cliente) REGRA 3 (Site) POR LINK 1" in-interface=Ether3 new-routing-mark=LINK2 passthrough=no src-address=CLIENTE2
    add action=mark-routing chain=prerouting dst-address-list=SITE2 in-interface=Ether3 new-routing-mark=LINK2 passthrough=no
    Última edição por AndrioPJ; 09-03-2015 às 10:17.

  2. Veja um print do trafego...:
    Clique na imagem para uma versão maior

Nome:	         unnamed.jpg
Visualizações:	6073
Tamanho: 	84,8 KB
ID:      	56836

    Clique na imagem para uma versão maior

Nome:	         unnamed (1).jpg
Visualizações:	5948
Tamanho: 	84,4 KB
ID:      	56837

    Citação Postado originalmente por Arthur Bernardes Ver Post
    Parabéns Andrio, faço de uma forma um pouco diferente mas está no mesmo raciocínio. Perfeito, abraço.

    Me responda uma coisa, porque criar dois "jump"? Isso não seria satisfeito?



    Vendo que tudo sai num mesmo "jump", você até poderia adicionar o "dst-port 443" na mesma regra, aqui funciona sem nenhum problema.
    Eu crio dois jump, um para os Sites (conectividade social, alguns sites de filmes online) que irão sair por apenas um link (address-list loopback) e outro para os sites HTTPs (é raro os sites que dão problemas, mas para facilitar, resolvi deixar uma regra global, assim não preciso ficar me preocupando em saber qual site HTTPs não suporta balance)



  3. @AndrioPJ, parabens pela iniciativa!! Belo post!

  4. Citação Postado originalmente por Arthur Bernardes Ver Post
    Mas saem tudo num mesmo "jump", isso não bagunça?
    não uehsuehsuhes

    ambos tem a regra do per-connection como src-address

    dessa forma, enquanto o clienteA ao acessar o site do Bradesco, saiu pelo Link1 (por exemplo)
    o clienteB tem chance de ao acessar o site do Bradesco, sair pelo Link2


    Veja que eu coloquei alguns Sites de Filmes problemáticos, que de vez em quando tem problema com o balance.
    Dessa forma resolvemos o problema....



  5. Parabém a parte boa acredito q seja o failover, poucos sabem desta forma algus usa o mangle para definir rota fixa a um site assim checando o site e desativando a interface não muito eficiente, @AndrioPJvi falar q na versão 6.24 utilizando pcc em modo router não se faz necessário essa manobra do checagem de ip pelo link me falarão q o pcc agora sabe indentificar o q vc acha?






Tópicos Similares

  1. Load balance pcc com links ip dinamico , como fazer?
    Por julinribeiro no fórum Redes
    Respostas: 21
    Último Post: 25-10-2017, 08:41
  2. Respostas: 78
    Último Post: 06-05-2017, 08:23
  3. Respostas: 35
    Último Post: 01-07-2016, 12:22
  4. Mini Balance PCC com Failover automático
    Por AndrioPJ no fórum Redes
    Respostas: 119
    Último Post: 29-06-2015, 11:00
  5. Load Balance pcc com Lentidão!
    Por maninho03 no fórum Redes
    Respostas: 26
    Último Post: 24-07-2012, 08:46

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L