roteamento multigateway para porta src específica

5

Eu tenho dois gateway para acessar a internet, de alguma forma eu quero carregar o balanceamento, até agora está funcionando, mas alguma conexão ou serviço precisa de gateway IP persistente para ser usado, então o cliente nunca deve mudar seu gateway uma vez conectado dest., minha implementação atual parece ser round-robin ou seja o que for.

esta é minha iproute

...
...
default
    nexthop via 192.168.1.1 dev eth0 weight 1
    nexthop via 192.168.1.2 dev eth0 weight 1

agora eu quero consertá-lo de alguma forma, o gateway que o cliente usará é predeterminado, por exemplo, usando a porta de origem, se a porta de origem é número par, usamos gw.1 e números ímpares passam por gw.1, podemos fazer que usando ip route?

* note que eu só tenho uma interface de saída: eth0 aqui.

    
por uray 24.08.2010 / 20:51

1 resposta

1

Use o roteamento de políticas com pacotes de marcação. Não sei qual formato de configuração é, mas você deve verificar isso na sua distro.

Na linha de comando, deve parecer (não testado, mas deve funcionar)

iptables -A PREROUTING -t mangle -p tcp --dport 22 --set-mark 0x1 -j CONNMARK
echo "200 ssh" >> /etc/iproute2/rt_tables
ip rule add fwmark 1 table ssh
ip route add default dev eth0 via 192.168.1.2 table ssh

Editar: linhas

echo "200 ssh" >> /etc/iproute2/rt_tables

Nomeia a tabela de roteamento 200 pelo nome "ssh". É preservado entre botas.

    
por 25.08.2010 / 02:17