Página 4 de 4 PrimeiroPrimeiro 1234
+ Responder ao Tópico



  1. #61

    Padrão Balanceamento - dois links em um único servidor (não dá)

    Pessoal,

    Para quem usa o OpenBSD e FreeBSD, a solução é usar o PF. Veja este link http://www.openbsd.org/faq/pf/pt/pools.html. Na semana que vem vou implentar usando dois links.. qualquer novidade eu volto a comunicar a vcs

  2. #62
    lazaroll
    Visitante

    Padrão Eu consegui.

    olah senhores.
    eu consegui colocar o load balance no linux sem usar o patch-o-magic, soh estou tendo um problema, o msn nao esta conectando, entao agora estou pensando em adicionar alguma regra de marcacao de pacotes com destino ae msn e direcionar para apenas um link dsl assim como eu fix com os autenticadores dsl .
    segue a regra do firewall , alteracao no velox.pl e a alteracao na rota de acordo com a marcacao.

    eth0 = 192.168.1.1
    roteador eth0 = 192.168.1.2
    eth1 = 10.0.0.1 (clientes)
    roteador eth2 = 192.168.2.2
    eth2 = 192.168.2.1
    velox.pl
    #!/usr/bin/perl

    $VELOX = 'COM';
    $COMERCIAL='local';
    $PROVEDOR='provedor'
    $LOGIN = '[email protected]'
    $SENHA = 'senha';
    #ip local da interface eth0
    #para outras interfaces basta alterar o
    #numero de ip
    $IPLOCAL='192.168.1.1';
    $HOST = 'www.veloxzone.com.br';
    $PORTA = 80;
    @HOSTS =('mx.uol.com.br','mx.terra.com.br','mail.telemar.net.br');
    $HOSTPORTA = 25;
    $HOSTTIMEOUT = 2;
    $RES_URL="/serviceLogon";
    $RES_POST="service=internet_$PROVEDOR&fcn=serviceLogon&ac=home&usr=&username=$LOGIN&password=$SENHA&OK=OK";
    $COM_URL="/serviceStart?service=internet_$COMERCIAL";
    $COM_POST="confirmed=true";

    if ($VELOX eq 'RES')
    {
    $URL=$RES_URL;
    $POST=$RES_POST;
    }
    elsif ($VELOX eq 'COM')
    {
    $URL=$COM_URL;
    $POST=$COM_POST;
    }
    else
    {
    print "!ERRO! Tipo do velox mal configurado, edite o script !!\n";
    print "!ERRO! Somente as opcoes \"RES\" ou \"COM\" sao possiveis!!\n";
    exit 2;
    }

    use IO::Socket;

    sub autentica()
    {
    #adicionar LocalAddr => $autentica_ip
    $sock = new IO::Socket::INET ( LocalAddr => $IPLOCAL, PeerAddr => $HOST, PeerPort => $PORTA, Proto => 'tcp');
    die("!ERRO! Nao e' possivel conectar em $HOST !!\n") unless $sock;

    print "!OK! Conexao estabelecida com $HOST.\n";
    $sock->print("POST $URL HTTP/1.0\r\n");
    $sock->print("Content-Type: application/x-www-form-urlencoded\r\n");
    $sock->print("Host: $HOST\r\n");
    $sock->print("Content-Length: " . length($POST) . "\r\n");
    $sock->print("\r\n$POST\r\n\r\n\r\n");
    print "!OK! Aguardando resposta do servidor....\n";
    while ($sock->getline()) {}
    $sock->close();
    }

    sub ping($)
    {
    $x=0;
    foreach (@HOSTS)
    {
    if (($_[0] eq 'rapido') && ($x>0))
    { return 0; }
    $c = new IO::Socket::INET ( LocalAddr => $IPLOCAL, PeerAddr => "$_" , PeerPort => $HOSTPORTA, Proto => 'tcp', Timeout => $HOSTTIMEOUT);
    if ($c)
    {
    $c->close();
    return 1;
    }
    $x++;
    }
    }

    print "!OK! Verificando se voce ja esta autenticado...\n";

    if ( ping('rapido') )
    {
    print "!OK! Voce JA esta autenticado !\n";
    exit 0;
    }

    print "!OK! Voce ainda nao esta autenticado.\n";

    autentica();

    while ( not ping('completo') )
    {
    print "!ERRO! Servidor nao liberou acesso, possivel senha ou configuracao incorreta...\n";
    print "!OK! Tentando novamente...\n";
    autentica();
    }

    print "!OK! Autenticado com sucesso !!\n";

    #end velox.pl EOF

    #firewall marcacoes para autenticacao
    #eu uso mais seguro mas aki coloquei para aceitar td de td
    iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
    iptables -A FORWARD -i eth1 -o eth2 -j ACCEPT
    iptables -A FORWARD -i eth2 -o eth1 -j ACCEPT
    iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT


    #roteador 1
    iptables -t mangle -A PREROUTING -s 192.168.1.0/30 -d www.veloxzone.com.br -j MARK --set-mark 3
    #roteador2
    iptables -t mangle -A PREROUTING -s 192.168.2.0/30 -d www.veloxzone.com.br -j MARK --set-mark 4
    #clientes
    iptables -t mangle -A PREROUTING -s 10.0.0.0/24 -d 0/0 -j MARK --set-mark 2
    iptables -t mangle -A PREROUTING -s 192.168.1.0/30 -d ! www.veloxzone.com.br -j MARK --set-mark 2
    iptables -t mangle -A PREROUTING -s 192.168.2.0/30 -d ! www.veloxzone.com.br -j MARK --set-mark 2

    #EOF firewall

    #rotas
    ############# OK ##############
    echo dsl1
    ip route add 192.168.1.0/30 dev eth0 src 192.168.1.1 table velox1
    ip route add default via 192.168.1.2 dev eth0 table velox1

    echo dsl2
    ip route add 192.168.2.0/30 dev eth2 src 192.168.2.1 table velox2
    ip route add default via 192.168.2.2 dev eth2 table velox2

    echo rotas
    ip route add 192.168.1.0/30 dev eth0 src 192.168.1.1
    ip route add 192.168.2.0/30 dev eth2 src 192.168.2.1

    echo rota default
    ip route add default via 192.168.1.1

    echo tabelas
    ip rule add from 192.168.1.1 table velox1
    ip rule add from 192.168.2.1 table velox2

    echo pacotes com flags default
    ip rule add fwmark 2 lookup velox prio 2

    #pacotes para autenticar velox1
    ip rule add fwmark 3 lookup velox1 prio 3

    #pacotes para autenticar velox2
    ip rule add fwmark 4 lookup velox2 prio 4

    echo adicinando hups entre as interfaces
    ip route add default table velox nexthop via 192.168.1.2 dev eth0 weight 1 nexthop via 192.168.2.2 dev eth2 weight 1

    ip route flush cache

    #EOF iproute

    that`s alll
    duvidas sugestoes ?
    [email protected] (msn)

  3. #63

    Padrão Balanceamento - dois links em um único servidor (não dá)

    a solucao de parar de cair o msn é essa mesmo somente essa q eu saiba a n ser usar router cisco com Rip, BGP ou OSPF para fazer isso

  4. #64

    Padrão Balanceamento - dois links em um único servidor (não dá)

    Cara te digo sem o patch alem do msn, vai ter problemas com bancos e downloads grandes, por isso sugiro seguir o tutorial todo, pois tb conseguia balanceamento, mas msn, bancos e downloads grandes nçaod ava certo.

    falows

  5. #65

    Padrão Balanceamento - dois links em um único servidor (não dá)

    mas amigos to precisando fazer isso em router eu acho q fica bem melhor oq vc me endicam um que tenha 4 wans para unir 4 link dedicados 2 de 2 MB e 2 de 1 MB um q tenho custo beneficio bom....
    grato.

  6. #66

    Padrão Balanceamento - dois links em um único servidor (não dá)

    Citação Postado originalmente por tiagomatias
    mas amigos to precisando fazer isso em router eu acho q fica bem melhor oq vc me endicam um que tenha 4 wans para unir 4 link dedicados 2 de 2 MB e 2 de 1 MB um q tenho custo beneficio bom....
    grato.
    Voce precisa num router eh isso?? se for que eu saiba da com o Cisco se os links forem da mesma operadora, ae voce pede pra ela criar um AS pra voce ae voce configura o AS e o cisco balanceia.

    falows

  7. #67
    lazaroll
    Visitante

    Padrão Balanceamento - dois links em um único servidor (não dá)

    8)