> > Segue o script:
> > > **************************************************************
> > > #!/bin/bash
>
> > > #IPT=/usr/local/sbin/iptables
> > > INT=eth2 (rede interna)
> > > IF_ADSL1=eth0 (link de adsl 1 )
> > > IF_ADSL2=eth1 (link de adsl 2)
>
> > > # Limpando Regras antigas
> > > iptables -t nat -F
> > > iptables -t filter -F
> > > iptables -t mangle -F
> > > iptables -t nat -X
> > > iptables -t filter -X
> > > iptables -t mangle -X
>
> > > #remove defaults routers
> > > route del default gw 192.168.3.1
> > > route del default gw 192.168.4.1
> > > iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 80 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 110 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 110 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 25 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 22 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 21 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 53 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 53 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 23 -j MARK
> > > --set-mark 3
> > > iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 69 -j MARK
> > > --set-mark 3
(marcando todos os pacotes e portas que quero balancear, veja que o msn está fora)
> > > #mascarando as conexoes
> > > iptables -t nat -A POSTROUTING -o $IF_ADSL2 -j MASQUERADE
> > > iptables -t nat -A POSTROUTING -o $IF_ADSL1 -j MASQUERADE
>
> > > # Mantendo conexoes ativas:
>
> > > echo -n "Manutencao de conexoes ativas..."
> > > iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
> > > echo " [OK]"
>
> > > echo -n "Otimizando o roteamento..."
> > > iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
> > > echo " [OK]"
>
> > > # Desabilitando o filtro de pacotes do martian source
> > > echo -n "Desligando rp_filter..."
> > > for eee in /proc/sys/net/ipv4/conf/*/rp_filter; do
> > > echo 0 > $eee
> > > done
> > > cat /proc/sys/net/ipv4/conf/*/rp_filter
> > > echo " [OK]"
>
> > > #Citç:
> > > #!/bin/bash
>
> > > # Interface ADSL 1
> > > IF1=eth0
> > > # Interface ADSL 2
> > > IF2=eth1
>
> > > ip route add $P1_NET dev $IF1 src $IP1 table ADSL1
> > > ip route add default via $P1 table ADSL1
> > > ip route add $P2_NET dev $IF2 src $IP2 table ADSL2
> > > ip route add default via $P2 table ADSL2
>
> > > ip route add $P1_NET dev $IF1 src $IP1
> > > ip route add $P2_NET dev $IF2 src $IP2
>
> > > ip rule add from $IP1 table ADSL1
> > > ip rule add from $IP2 table ADSL2
> > > #balanceamento dos links
> > > ip rule add fwmark 3 lookup ADSL0 prio 3
> > > ip route add default table ADSL0 nexthop via $P1 dev $IF1 weight 2
> > nexthop
> > > via $P2 dev $IF2 weight 1
>
> > > #carregando nat e ip forward
> > > modprobe iptable_nat
> > > echo 1 > /proc/sys/net/ipv4/ip_forward
> > > #aplicando as regras
> > > ip route flush cache
>
> > > #para acesso local a internet
> > > route add default gw 192.168.4.1
Olá Junior.
> > > Junior Bohn
> > > 100% movido a linux
>
> > > 2008/6/25 Julio <cbju...@gmail.com>:
>
> > > > Boa tarde pessoal.
> > > > Há alguns dias postei sobre um problema com MSN e balanceamento de
> > > > carga...Consegui resolver determinando uma rota específica na tabela /
> > > > etc/iproute2/rt_tables. Assim o MSN só sai por um gateway.
> > > > Estou usando a regra:
>
> > > > ip route add default nexthop via 201.200.200.254 dev ppp0 weight 1
> > > > nexthop via 201.200.200.254 dev ppp1 weight 1
>
> > > > Sendo assim, tenho os links disponíveis como se fosse um só (o flash
> > > > get funciona que é uma beleza, pois faz os downloads nas 2 conexões
> > > > simultaneamente).
> > > > Porém, estou com um problema nos downloads pelo navegador. O problema
> > > > é claro: o navegador se perde de vez em quando, pois os IPs das 2
> > > > conexões se trocam (acho que o navegador não se dá bem com esse
> > > > problema, pois a conexão começa a mandar pacotes por outro IP, e aí o
> > > > download pára).
> > > > Alguém tem alguma idéia de como resolver isso? Existe alguma forma de
> > > > marcar pacotes de uma conexão até ela ser finalizada?
> > > > Por exemplo: "Faça esse download de 100 megas pelo browser. Até esse
> > > > download não terminar, ele não muda de rota (se pegou pela ppp0,
> > > > termina pela ppp0)".
> > > > Já tentei usando o CONNMARK, mas não tive sucesso.
> > > > Como possuo duas redes locais, poderia até fazer cada uma saindo por
> > > > uma ADSL, mas assim fico limitado (gostaria era de ter duas conexões
> > > > ao meu dispor o tempo todo, independente da rede).
> > > > Espero ter esclarecido.
> > > > Alguma ajuda?
>
> > > > --
> > > > To UNSUBSCRIBE, email to
> > debian-user-portuguese-REQU...@lists.debian.org
> > > > with a subject of "unsubscribe". Trouble? Contact
> > > > listmas...@lists.debian.org
>
> > Boa noite Junior. Obrigado pela resposta.
> > Mas desse jeito ele não "soma as 2 ADSLs" né...
> > O que ele faz é setar que 1 IP vai sempre sair por uma ADSL, e outro
> > IP (ou rede) sairá sempre por outra ADSL..como você fez:
>
> > ip rule add from $IP1 table ADSL1
> > ip rule add from $IP2 table ADSL2
>
> > Mas o que eu gostaria de saber é se tem como somar as 2. Ou seja,
> > posso usar as duas ao mesmo tempo, independente em que rede esteja. To
> > mandando pacotes pela porta 80 pela ADSL1 e ao mesmo tempo mandando
> > outros pacotes (de outra conexão, um download por exemplo) pela ADSL2.
> > Estou achando que com CONNMARK é viável. Mas até agora não consegui
> > fazer...
> > Será que existe forma de se fazer isso?
>
> > --
> > To UNSUBSCRIBE, email to debian-user-portuguese-REQU...@lists.debian.org
> > with a subject of "unsubscribe". Trouble? Contact
> > listmas...@lists.debian.org
Você poderia me explicar como funciona seu script?
Não entendi muito bem...
Vi que você marca alguns pacotes com 3 e 4, aí logo abaixo você
compartilha a conexão...
Depois você adiciona as rotas às tabelas (ADSL1 e ADSL2)
Aí você faz:
ip rule add from $IP1 table ADSL1ip rule add from $IP2 table ADSL2...
...querendo dizer que o o IP1e o IP2 tem rotas definidas pelos 2 links
que você possui...
E então você adiciona a regra (ip rule...) com prioridade 3, que diz
que todo o tráfego
com marca 3 (inclusive o tráfego http - 80) sairá pela ADSL0:
ip rule add fwmark 3 lookup ADSL0 prio 3Mas depois você faz a regra que seria para balancear as 2 conexões...
ip route add default table ADSL0 nexthop via $P1 dev $IF1 weight 2Mas entendi que o tráfego com marca 3 (inclusive http) cairá primeiro
nexthop via $P2 dev $IF2 weight 1
na regra que vem antes, fazendo com que
ele seja roteado pela ADSL0...
Estou certo? Então não será balanceado entre os dois links...Me
corrija por favor Junior.
Abraço. E obrigado pela ajuda.
--
To UNSUBSCRIBE, email to debian-user-portuguese-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org