Pode haver soluções melhores (pelo menos mais perto do que você está pedindo), mas aqui está o que me vem à mente:
-
Configure os servidores DHCP em cada local para atribuir um endereço IP ao endereço MAC e, no laptop, faça com que ele capture automaticamente o IP do DHCP. Este é de longe o mais fácil se você tiver acesso ao roteador em cada lugar.
-
Os próximos três são essencialmente a mesma solução um do outro - dividir as conexões:
- Adicione e use uma placa de rede diferente para um local.
- Deixe as placas de rede USB nos dois cabos ethernet (mais lento que o gigabit nativo).
- Use duas conexões sem fio. O Network Manager pode fazer as coisas difíceis automaticamente, para que você apenas passe de um lugar para outro.
-
Escreva algo para quando a interface aparecer. Eu não sei o que o evento realmente seria chamado - mas você essencialmente quer saber quando o cabo está conectado e tudo está pronto. Você pode ter apenas uma configuração estática para uma rede e aguardar quando isso ocorrer.
-
Ligue-se ao usar o upstart se você souber que a conexão está lá na inicialização ou considere isso Script de chamada após conectar-se a uma rede sem fio se você fizer a conexão após a inicialização.
-
Quando a rede estiver ativa, faça alguma descoberta de serviço. O gateway é onde você espera? Existem outros servidores conhecidos que você deve conseguir fazer ping?
-
Se tudo estiver correto, deixe a configuração como está, caso contrário, mude para a configuração de rede alternativa. Você pode configurar manualmente usando
ifconfig
ou duas conexões configuradas no Network Manager e usar apenasnmcli
para alternar em qual delas você está.
-
Fora dos três, o DHCP é o mais fácil.