On 25 jun, 21:10, "Júnior Bohn" <[EMAIL PROTECTED]> wrote: > Boa noite, se não me engano você tem que adicionar uma regra para manter as > conexões ativas, ou seja se sai por um link, tem que sair somente por aquele > até que seja encerrada, senão dá esse problema, segue abaixo o script que eu > usei para fazer isto: > Segue o script: > ************************************************************** > #!/bin/bash > > #IPT=/usr/local/sbin/iptables > INT=eth2 > IF_ADSL1=eth0 > IF_ADSL2=eth1 > > # 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 > > # Definicao de regras padrã$IPT > iptables -P INPUT ACCEPT > iptables -P OUTPUT ACCEPT > iptables -P FORWARD ACCEPT > > #marcando pacotes do msn > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6891 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6892 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6893 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6894 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6895 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6896 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6897 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6898 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6899 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6900 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 1863 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 1863 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 5190 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p udp --dport 6901 -j MARK > --set-mark 4 > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 6901 -j MARK > --set-mark 4 > > #setando https > #iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 443 -j MARK > --set-mark 4 > > #marcando o resto dos pacotes > iptables -A PREROUTING -t mangle -i eth2 -p tcp --dport 80 -j MARK > --set-mark 3 > 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 > > #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 1 > IP1=192.168.3.5 > # IP 2 > IP2=192.168.4.5 > > # Gateway 1 > P1=192.168.3.1 > # Gateway 2 > P2=192.168.4.1 > > # Rede 1 > P1_NET=192.168.3.0 > # Rede 2 > P2_NET=192.168.4.0 > > 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 route add default via $P1 > > ip rule add from $IP1 table ADSL1 > ip rule add from $IP2 table ADSL2 > > #roteando o msn por um link (adsl Fixo) > #ip rule add fwmark 4 table ADSL2 prio 2 > > #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 > > #redirecionando portas > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to-dest > 192.168.1.10:80 > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 25 -j DNAT --to-dest > 192.168.1.10:25 > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 110 -j DNAT --to-dest > 192.168.1.10:110 > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 10000 -j DNAT --to-dest > > 192.168.1.10:10000 > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 22 -j DNAT --to-dest > 192.168.1.10:22 > iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 53 -j DNAT --to-dest > 192.168.1.10:53 > #iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to-dest > 192.168.1.10:8 > *********************************************************************** > > Junior Bohn > 100% movido a linux > > 2008/6/25 Julio <[EMAIL PROTECTED]>: > > > 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 [EMAIL PROTECTED] > > with a subject of "unsubscribe". Trouble? Contact > > [EMAIL PROTECTED]
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 [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]