Bom dia galera estou com um problema muito serio e gostaria de poder contar 
com a ajuda de vcs:

minha estrutura e a seguinte:

possuo 2 gateways:
192.168.254.1 na eth0 (criei uma tabela de roteamento chamada link1)
192.168.253.1 na eth2 (criei uma tabela de roteamento chamada link2)

a eth1 e a placa que fica virada para minha lan e seu ip é 10.0.0.1

o que eu preciso fazer é:

1) forçar um ip so funcionar com um determinado mac addess, blz isso ja 
funciona
2) preciso que quando houver uma requisicao de dentro da minha cujo o ip da 
maquina seja 10.0.0.2 saia pelo link1 e quando a requisicao vier de outra 
maquina cujo ip e 10.0.0.3 saia pelo link2 bem isso tambem ja funciona, 
porem existe um problema que eu nao estou conseguindo identificar, que é o 
seguinte: quando inicio o meu script pela primeira vez tudo funciona 
normalmente, porem se eu precisar dar um ping de dentro do linux as minhas 
regras de pacotes param de funcionar e passa a sair tudo pelo gateway 
padrao, sera que alguem tem alguma ideia.

segue meu script:

#############################################################################
# CRIADO POR BRUNO ALMEIDA DE MAGALHAES EMAIL [EMAIL PROTECTED] #
# PARA UTILIZACAO NO PROVEDOR VIA-RADIO #
# 08 DE ABRIL DE 2007 - TODOS OS DIREITOS RESERVADOS AO DESENVOLVEDOR #
# TRATA-SE DE UM SCRIPT COM REGRAS PARA LIBERACAO E BLOQUEIO DE ACESSOS #
# A UTILIZACAO DESTE POR OUTROS E TOTALMENTE LEGAL UMA VEZ MENCIONADO O #
# DESENVOLVEDOR #
#############################################################################



#LIBERA OS MAC ADDRESS DOS GATEWAYS
iptables -A FORWARD -m mac --mac-source 00:0B:23:03:AB:B2 -j ACCEPT
iptables -A FORWARD -m mac --mac-source 00:E0:4C:E0:0B:50 -j ACCEPT
iptables -A FORWARD -m mac --mac-source 00:E0:7D:83:35:9E -j ACCEPT
iptables -A FORWARD -m mac --mac-source 00:E0:7D:D9:3D:7C -j ACCEPT


# Mascara as saidas para os dois Gateways
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE


#LIBERA OS MAC ADDRESS E SEUS RESPECTIVOS IPS
iptables -A FORWARD -m mac --mac-source 00:40:F4:DD:2F:DB -s 10.0.0.3 -j 
ACCEPT
iptables -A FORWARD -m mac --mac-source 00:40:F4:DD:2F:DC -s 10.0.0.2 -j 
ACCEPT


# Marca os pacotes "PREOROUTING e OUTPUT"
iptables -t mangle -A PREROUTING -i eth1 -s 10.0.0.2 -j MARK --set-mark 1
iptables -t mangle -A PREROUTING -i eth1 -s 10.0.0.3 -j MARK --set-mark 2


iptables -t mangle -A OUTPUT -s 10.0.0.2 -j MARK --set-mark 1
iptables -t mangle -A OUTPUT -s 10.0.0.3 -j MARK --set-mark 2


# (marcados com 1-> table link1 = ADSL1) (marcados com 2-> table link2 = 
ADSL2)
ip rule add fwmark 1 table link1 prio 20
ip rule add fwmark 2 table link2 prio 20


# Crias as rotas para as respectivas tabelas de rotas
ip route add default via 192.168.254.1 dev eth0 table link1
ip route add default via 192.168.253.1 dev eth2 table link2

# LIMPA tabela de roteamento CACHE
ip route flush cache

#NEGA O RESTANTE DOS MAC ADDRESS
iptables -A FORWARD -m mac --mac-source ! FF:FF:FF:FF:FF:FF -j DROP

_________________________________________________________________
MSN Busca: fácil, rápido, direto ao ponto.  http://search.msn.com.br

---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a