Se você configurou a rede através do ifupdown (ou seja, em /etc/network/interfaces
), e funciona quando você inicia a rede manualmente, mas não depois de uma inicialização, uma possibilidade é que sua configuração esteja atualizando a rede corretamente e algum outro componente do sistema reconfigura a rede. O suspeito óbvio é o Network Manager. Certifique-se de que, em /etc/NetworkManager/nm-system-settings.conf
, em [ifupdown]
, você tenha managed=false
. (É o padrão, pelo menos no Ubuntu 10.04, mas talvez isso tenha mudado em 10.10 ou você mudou em experimentos anteriores com o Network Manager.)
Se você quiser ficar com o Network Manager, pode informá-lo para adicionar a rota extra. A partir do Ubuntu 10.04 (outras distribuições podem não configurar o Network Manager da mesma forma), o Network Manager executa os scripts ifupdown em /etc/network/if-*.d/
. A função desses scripts é semelhante às diretivas up
, down
, pre-up
e post-down
em /etc/network/interfaces
(que o Network Manager não executa). Comente todas as menções de eth1 from
/ etc / network / interfaces 'para que o Network Manager gerencie essa interface.
Os scripts estão documentados na página de manual de interfaces (5) . Eles são executados em um ambiente contendo informações sobre a conexão iniciada ou interrompida, em particular $IFACE
é o nome da interface. Então coloque o seguinte script em /etc/network/if-up.d/zzzz-milan-wireless-route
:
#!/bin/sh
if [ "$IFACE" = "eth1" ]; then
route add -net 10.0.0.0/24 gw 10.0.1.252 dev eth1
fi
Torne-o executável: chmod 755 /etc/network/if-up.d/zzzz-milan-wireless-route
. Na próxima vez que o Network Manager exibir a rede, você deverá ter sua rota padrão.