Rota todo o tráfego de uma interface para o gateway padrão com IP diferente

0

A situação:

eth0 - Rede padrão com acesso à internet IP: 192.168.2.1 Gateway Desatualizado: 192.168.2.254

eth0: 1 192.168.2.2 NIC virtual, a mesma coisa que eth0 mas IP diferente. Mesmo cabo Este ip tem um acesso à internet diferente

eth1: 192.168.0.1

eth2: 192.168.1.1

Todo o tráfego de eth1 e eth2 é roteado para 192.168.2.254 usando 192.168.2.1

Eu preciso rotear todo o tráfego proveniente de eth2 para 192.168.2.254, mas usando o ip secundário 192.168.2.2

Eu tentei várias configurações diferentes, mas não tive sucesso.

    
por mtbrandao 27.09.2017 / 20:11

1 resposta

1

O que você deseja é chamado de roteamento da política de origem. As instruções para configurar o roteamento da política de origem podem ser encontradas aqui no diretório Roteamento avançado & HOWTO de Controle de Tráfego .

O ponto crucial é que você deseja adicionar uma nova tabela de roteamento ao seu sistema com um nome como INET2 (esses comandos devem ser executados como root):

echo 200 INET2 >> /etc/iproute2/rt_tables

Em seguida, você deseja adicionar uma regra de origem à tabela de roteamento IP principal (suponho que esta seja uma rede / 24):

ip rule add from 192.168.1.0/24 table INET2

Em seguida, você precisa atribuir uma rota padrão para a tabela INET2 (você não mencionou o gateway padrão para a sua segunda conexão, então estou supondo aqui):

ip route add default via 192.168.2.253 dev eth0:1 table INET2

Por fim, você precisa liberar o cache de rota no sistema:

ip route flush cache

Regras criadas desta maneira são efêmeras e desaparecerão quando o sistema for reiniciado (embora a tabela INET2 persistirá), então você precisará colocar as regras em um script de inicialização para a interface de rede. Exatamente como fazer isso depende da sua distribuição particular do Linux e é realmente outra questão.

    
por 27.09.2017 / 21:07