Adicionando uma rota estática a uma interface virtual usando arquivos de configuração em vez do comando ip

Adicionando uma rota estática a uma interface virtual usando arquivos de configuração em vez do comando ip

Atribuímos nossas rotas estaticamente usando os arquivos /etc/sysconfig/network-scripts/route-ethx. Isso torna o gerenciamento deles bastante fácil, pois adicionamos as rotas durante o processo de kickstart (por meio de pós-script). Eles raramente mudam e se precisarem ser atualizados, simplesmente realizamos uma alteração e atualizamos os scripts de construção para incluir a nova rota.

Recentemente, um cliente solicitou uma interface virtual (eth0:0) com um IP exclusivo. Ele precisa se conectar exclusivamente a uma rede. O primeiro IP atribuído na eth0 tratará de todo o outro tráfego.

Tudo o que vi indica como adicionar uma rota usando ip route add, mas não consigo descobrir como especificar que qualquer coisa que vá para um determinado IP ou rede possa ter o IP de origem definido. Se eu usar o comando ip, ele atualizará os arquivos de rota ou será armazenado em outro lugar para persistência nas reinicializações? Se eu tiver que adicionar a entrada ao arquivo de rota para eth0:0, como deve ser a linha?

Então, basicamente:

Se for para 10.0.0.2 use IP 10.0.1.3 como fonte. Se for para qualquer outro lugar, use IP 10.0.1.2 como fonte.

Isso é possível? Como faço isso?

Responder1

Se entendi claramente sua pergunta, você pode tentar algo como o seguinte

# ip route add 10.0.0.2 via xxx.xxx.xxx.xxx src 10.0.1.3
# ip route add default via yyy.yyy.yyy.yyy src 10.0.2.2

Existe outro método que preciso examinar?

Você poderia tentar usar o iptables

# iptables -t nat -I PREROUTING -d 10.0.0.2 -j SNAT --to-source 10.0.1.3

Responder2

Isso foi esclarecido por um colega que fez a mesma coisa recentemente.

O formato da rota a ser inserida no arquivo route-eth0:0 é:

10.0.0.2/32 via 10.0.1.1 dev eth0:0 src 10.0.1.3

Todo o outro tráfego através da eth0 será marcado como sendo de 10.0.1.2 por padrão. 10.0.1.1 é a rota padrão, mas os pacotes terão um IP de origem devidamente marcado.

informação relacionada