O sistema pode ter apenas um gateway no momento. Só você pode forçar algum tráfego também conhecido como ssh, ftp, .. ou para rede específica para ir em interface diferente
Encaminhar o tráfego para uma porta específica por meio de uma interface específica
Exemplo:
Aqui, teremos port 4444
como o serviço de roteamento. Use a tabela mangle
do iptables para modificar os pacotes 4444
.
sudo iptables -t mangle -A OUTPUT -p tcp –dport 4444 -j MARK –set-mark 0×1
Estamos marcando todos os pacotes com destino port 4444
como '0 × 1 ′.
Para excluir esta entrada de iptables
, podemos usar -D
em vez de -A
.
Em seguida, crie uma nova tabela de rotas IP em /etc/iproute2/rt_table
apenas fornecendo uma entrada
100 4444table
Regra de gravação para 4444
pacotes.
ip rule add fwmark 0×1 lookup 4444table
Adicionar rota na nova tabela 4444table
. Aqui vamos usar '192.168.1.1' como o gateway para 4444
.
Copiamos todas as entradas, exceto a entrada do gateway padrão da tabela principal.
sudo ip route show table main | grep -Ev ^default | while read ROUTE ; do ip route add table 4444table $ROUTE; done
Adicione uma entrada de gateway padrão para 4444
pacotes à tabela 4444table
sudo ip route add default via 192.168.1.1 table 4444table
Use ip route show table 4444table
para mostrar todas as rotas em 4444table
.
Ou roteamento por destino
Destino ip 132.45.65.60
Mais uma vez, use a tabela mangle de iptables
para modificar os pacotes para 132.45.65.60
sudo iptables -t mangle -A OUTPUT -d 132.45.65.60 -j MARK -set-mark 0×1
Estamos marcando todos os roteadores de pacotes para ip 132.45.65.60
as '0 × 1 ′.
Agora salve e reinicie o iptables
.
service iptables save
service iptables restart
Em seguida, crie uma nova tabela de rotas IP em /etc/iproute2/rt_tables
apenas fornecendo uma entrada
100 132table
Gravar regra para pacotes no destino ip 132.45.65.60
ip rule add fwmark 0×1 lookup 132table
Adicionar rota na nova tabela 132table
. Aqui vamos usar 192.168.1.1
. Todo o outro tráfego passará pelo gateway padrão.
Copie todas as entradas, exceto a entrada do gateway padrão da tabela principal.
sudo ip route show table main | grep -Ev ^default | while read ROUTE ; do ip route add table 132table $ROUTE; done
Adicione a entrada do gateway padrão para 132.45.65.60 pacotes para a tabela 132table
sudo ip route add default via 192.168.1.1 table 132table
Editar 1
Se você tiver que definir metric
aka com a interface metric
sem métrica, tenha "prioridade"
auto eth0
iface eth0 inet static
address 192.168.1.202
netmask 255.255.255.0
gateway 192.168.1.1
auto eth1
iface eth1 inet static
address 10.10.0.10
netmask 255.255.255.0
gateway 10.10.0.1
metric 800
Com essa configuração, se o gateway padrão disponível for 192.168.1.1
, o tráfego passará por eth0
. Quando você fizer ifdown eth0
ou desconectar o cabo de eth0
, o segundo melhor será o gateway 10.10.0.1
com metric 800
e o tráfego irá percorrer eth1
. Quando você conectar o cabo ou ifup eth0
, o padrão gw será novamente 192.168.1.1
.
Como eu digo.
O sistema não pode ter dois gateways padrão em um momento. Se a rede não funcionar,