Tutorial de configuração LoadBalance e FailOver utilizando Squid



  • ::) Considerando já configurado devidamente o seu loadbalance e FailOver vamos configurar a partir desse ponto.

    Em Firewall>Rules clique na aba Floating

    E criei a seguinte regra:

    Action: Pass
    Interface: Selecione as duas Wans
    Direction: Out
    Source: any
    Destination: any
    Destination port range: 80 ou se nao funcionar coloque a porta do Squid (default 3128)
    Gateway: Selecione o nome da rede LoadBalance que você configurou

    Agora em Firewall>NAT clique na aba Outbound

    Selecione Manual Outbound NAT rule generation e clique em Save

    Mapeie as duas Wans com as seguintes configurações:
    Protocol= any
    Source= any
    Destination= any
    Translation = Interface address

    Ao final você tera uma regra para cada Wan.

    Configure corretamente Squid Web Proxy em Services>Proxy Server

    Na aba General em Proxy Interface selecione a LAN e loopback.
    Em Custom Options adicione o comando:

    tcp_outgoing_address 127.0.0.1;

    Obs.: Esta solução foi utilizada para a versão do PFSense 2.0RC1.



  • Felipe fiz tudo certo e realmente funciona o balanceamento, porém a conexão fica e lenta e demora para carregar as páginas, existe uma possibilidade de solucionar isso? Tenho um link de 4 MB e um de 2 MB, quando desabilito a regra criada no floating, funciona normal.

    Se alguém tiver alguma idéia de como solucionar esse problema, agradeço.



  • Qual a versão do seu PFSense?



  • 2.0 RC3 64 Bits



  • :P Vou ate arrumar meu POST
    na verdade amigo essa solução e para o RC1
    no PFSense 2.0 RC3 existe uma opção que já nós ajuda.
    No RC3 vá em System> Advanced e clique na aba Miscellaneous

    Embaixo haverá as opções do Load Balancing marque a caixa com a opção Allow default gateway switching

    ;) Teste e depois nos relate.




  • Felipe, realizei o teste e continua saindo somente por uma conexão, isso o pfsense já faz sem marcar essa opção que você me disse acima e desta forma funciona o proxy. O que eu preciso é que o proxy funcione trocando a conexão, ou seja, usando realmente o balanceamento.
    Entenda o que fiz:
    1º Configurei da forma que você mencionou para o RC1, resulatdo a conexão ficou lenta.
    2º Configurei somente a opção "Allow default gateway switching", resultado a conexão só sai por um link, e não troca.
    3º Configurei as duas formas juntas, resultado a conexão também ficou lenta e só sai por um link.

    Se tiver mais algumas idéias me fale que vou testando, aguardo.



  • ??? Que coisa deveria funcionar !
    Uma pergunta voce definiu um Gateway padrão?



  • Não, o gateway na verdade é grupo que definimos no System - Routing - Groups.



  • :D não me referia ao gateway LoadBalance e sim ao gateway de cada link  :P
    Olhe o anexo abaixo você ira entender o que digo.




  • Bom posso até falar algo que esteja errado, mas o squid só funciona com o link principal, ele irá mudar o gateway assim que um estiver dado como "down", pelos comentários do pessoal isso seria uma funcionalidade que o Ermal fez com uma versão personalizada dele e que não está disponível nos repositórios, pelo menos tentei N formas de fazer isso funcionar mas não consegui, acho que será feito algo na versão 2.1 somente, por enquanto se quiserem usar isso teria que ser de outra maneira, um pfsense fazendo load balance/failover e outro com o cache

    Seria isso…



  • Isso mesmo Rafael por isso fiz o esquema ali em cima do LoopBack pelo floating
    No RC3 já existe uma opção qual evita essas manobras e funciona perfeitamente



  • Então Felipe, mesmo colocando um gateway padrão em um link e marcando a opção "Allow default gateway switching", beleza funciona o balance corretamente, porém é só eu habilitar o proxy na Lan e Loopback que continua saindo por uma conexão (link).

    Se tiverem mais alguma posição sobre assunto, fico grato.



  • Você esta usando a configuração citada acima mais a opção marcada na parte do LoadBalance?
    Se você derrubar um dos link de internet a navegação é interrompida para os usuários que estão passando pelo proxyweb?



  • Sim vai sair sempre por uma, mas ele quer algo que rode automatico, acho que seja isso, fulano acessou o site do pfsense saindo pelo link 1, mas o ciclano ao lado acessou outro site e saiu pelo link 2, isso ainda tenho quase certeza ( 99,9 %) de que não funciona ainda no pfsense. Funciona se o link cair mais balanceamento no squid não consegui ou vi alguem fazendo.



  • :o Nossa funciona 100% por exemplo eu fizer alteração de link por latência, quando se está realizando download por um link tendencia é da latência estar maior que a outra que no caso estaria ociosa , então logo se for criado a regra ali pelo group tier 1 e tier 1 sendo alterado o default para o segundo link por latência menor o outro link assumirá e próxima conexão se dará pelo outro link. Ainda com essas regras e possível se fixar uma rota de saída para um caso ou usuário em específico por exemplo , mais só sera possível se utilizar aquelas regras do floating usando o loopback para que o squid possa filtrar as duas conexões ao mesmo tempo.



  • O que quero fazer é realmente o que o Rafael falou, de forma automática, ou seja que funcione o squid em todos os links. Posso definir o gateway padrão, só que a conexão só vai sair por um link, se cair vai entrar o outro, estou tentando fazer funcionar o balanceamento com dois links e o squid junto. Mas isso não estou conseguindo fazer funcionar. Da forma que você falou felipe, pela regra de floating, funciona, porém com eu te disse a Internet fica muito lenta pra carregar as páginas,mas funciona o balanceamento, se tiro a regra do floating e desabilito o proxy as páginas voltam ao normal.

    Complicado, estou tentando alguma alternativa, se conseguir menciono à vocês, e se conseguirem algo por favor me digam também, mas está complicado.



  • ???Não sei se tu compreendeu mal o que disse sobre um gateway default
    Entenda o GRUPO de balanceamento é uma coisa!
    Nas opções de gateway onde ele ira ter o gateway de cada link um deles terá que ser selecionado como Default( geralmente o link maior fica como default no seu exemplo da 4mb)
    Porque de se fazer isso!
    Apesar de não usar ele tenho um cliente que tem o RC3 e ele tem o mesmo cenário seu.
    NAS REGRAS o gateway tem que ser selecionado o nome de seu GRUPO o qual esta realizando o LoadBalance aquele onde você definiu suas primoridades Tier1 Tier 1 caso balanceamento de carga ou Tier 1 Tier 2 caso de FailOver.
    Sobre os gateways um dele terá de ser o Default e agora sim o porque no RC3 de marca aquela opção, ele ira trocar esse Default pra o outro link sozinho baseando na regra de prioridade selecionada la no GRUPO (aquele papo dos Tiers e pelo que você quer : queda de link , latência ou perda de pacote)

    Qual quer coisa poste ai suas configurações para descobrimos o motivo de lentidão!
    Abs



  • Entendi perfeitamente o que você disse Felipe, fiz exatamente da forma que você falou definindo gateway padrão, marcando a opção para trocar o gateway padrão a partir da regra de prioridade selecionada no grupo, não funciona, só sai por um link ainda. Só funciona pelo floating e fica muito lento, vou ver se consigo postar a configuração para você dar uma olhada.



  • você precisa alterar o TCP_OUTGOING_ADDRESS do squid, se não me engano, saindo por 127.0.0.1 vai forçar o BSD a rotear pelo balanceador…

    Proxy Server -> Custom Options -> acrescente

    tcp_outgoing_address 127.0.0.1 all

    veja se funfa



  • Então o Felipe nós tópica a cima me disse já desse comando, já inseri e mesmo assim, só funciona por um link.



  • precisa estar com o Allow default gateway switching ligado

    System -> advanced -> Miscellaneous -> Allow default gateway switching <- marca X e salva



  • @felipeortega:

    Isso mesmo Rafael por isso fiz o esquema ali em cima do LoopBack pelo floating
    No RC3 já existe uma opção qual evita essas manobras e funciona perfeitamente

    Olá felipeortega,
    Fiquei na dúvida agora… qual seria o procedimento exato para a versão 2.0 RC3?
    se puder dar uma arrumada no tópico inicial destacando a versão 2.0 RC3 ia ficar mais claro!
    Obrigado!



  • Galera alguem tem como me passar um esquema ai do loadbalance desde o inicio ou FailOver no pfsense 2.0



  • Moçada, estou acompanhando o tópico pra ver se consigo configurar o load balance no Psense 2.0 RC3, e aí pintou a seguinte dúvida:

    Já configurei o multi-wan e o pfsense 2.0RC3 mostra que os dois links estão online, então o próximo passo pra se configurar o load balance é marcar a opção Allow default gateway switching que fica em System> Advanced> Miscellaneous? é só isso? não é necessário criar nenhum grupo com esses gateways e em seguida configurar uma regra de firewall?

    Valeu.



  • Bom dia,

    Eu na minha empresa estou com o mesmo problema. Mesmo não estando marcado a opção "Allow default gateway switching", ele faz a comutação com a outra gateway. O que posso fazer para ele nunca alterar?

    Ou

    Caso ele comute com a outra gateway estando a outra down, precisava que ele reestabelece assim a a default gatway estivesse novamente UP.

    Obrigado



  • @joaolbp,

    você poderia me mostrar como esta configurado os seus gatways e o group?


Locked