Aqui está o meu arquivo de interfaces:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto eth0:0
iface eth0:0 inet static
address 10.20.8.231
netmask 255.255.255.0
gateway 10.20.8.1
up /sbin/route add 1.2.3.4 gw 10.20.8.1
down /sbin/route del 1.2.3.4 gw 10.20.8.1
Dos vários exemplos que encontrei online, isso deve adicionar rotas quando o eth0: 0 aparecer, mas, por algum motivo, não consigo fazê-lo funcionar.
Quando tento exibir a interface com ifup eth0:0
, obtenho:
RTNETLINK answers: File exists
Failed to bring up eth0:0.
Em seguida, ifconfig
mostra que eth0: 0 está ativo, mas route -n
não mostra a nova rota. Na verdade, mostra exatamente as mesmas rotas que eu tinha antes. Nada mudou.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.20.8.1 0.0.0.0 UG 0 0 0 eth0
10.20.8.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Esta configuração deve ser usada em sistemas remotos que só podem ser acessados via SSH. A idéia é manter o eth0 configurado como dhcp como backup quando a rede do site é alterada (já aconteceu duas vezes), tornando o ip estático inacessível. O problema com isso é que o SSH (usado pelos processos internos) usa a rota padrão via eth0 e isso não funciona porque o firewall (não gerenciado por nós) foi configurado para permitir ssh apenas para o IP estático em eth0: 0 .
Nota: No exemplo acima, 1.2.3.4 representa nosso servidor ssh e eu estou tentando rotear o tráfego via eth0: 0 para esse host único, mas depois do teste eu posso querer definir a rota padrão para usar eth0: 0, mas Eu também tentei isso e falhou da mesma maneira. Eu estava usando esta linha:
up route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.20.8.1
Obrigado pela sua ajuda.