Estou executando o Ubuntu 16.04 em um NUC para gerenciar minhas redes domésticas e de trabalho. A única NIC no NUC recebe dois endereços IP, um em cada rede, pelas seguintes linhas em /etc/network/interfaces
:
auto lo
iface lo inet loopback
#1st is home
auto enp3s0
iface enp3s0 inet static
address 192.168.0.1
netmask 255.255.255.0
gateway 192.168.0.254 # huawei modem
dns-search homenet
#2nd is work vpn
auto enp3s0:1
iface enp3s0:1 inet static
address 172.16.9.1
netmask 255.255.255.240
gateway 172.16.9.1
dns-search xx.yy.xx.com
ifconfig
costumava me mostrar os endereços inet 192.168.0.1
e 172.16.9.1
, mas desde a execução das atualizações oferecidas pelo Ubuntu hoje, agora ele mostra apenas o primeiro. As máquinas na sub-rede de trabalho não podem ver umas às outras ou a rede externa porque o endereço IP 172.16.9.1
está inacessível.
Algo deve ter mudado, mas não sei o que ou como consertar.
Esta máquina está em execução isc-dhcp-server
para alocar endereços IP nas redes doméstica e comercial e bind9
para fazer pesquisas de DNS na rede doméstica. Quando está funcionando corretamente, o DNS das máquinas de trabalho é gerenciado pela VPN.
Não estou usando o Network Manager gráfico.
Alguma idéia do que eu poderia analisar para fazer isso funcionar novamente?
ATUALIZAR: Posteriormente, vi uma linha boot.log
que não existia no passado:
Failed to start Raise network interfaces.
See 'systemctl status networking.service' for details.
Então eu fiz isso. e posso ver a seguinte mensagem 4 vezes:
ifup[670]: Another app is currently holding the xtables lock.
Perhaps you want to use the -w option?
Dentro /etc/network
eu tenho um if-pre-up.d/iptables
script que chama o iptables
comando do sistema cinco vezes. Acho que é daí que vem o erro - mas funcionou de forma confiável até a atualização de hoje. Embora eu pudesse colocar -w
todas essas linhas, suspeito que estaria tratando um sintoma em vez de abordar a causa real – que ainda não identifiquei.
ATUALIZAÇÃO 2: Originalmente eu pensei que as cinco chamadas iptables
em meu script haviam produzido quatro xtables lock
erros. O que descobri é que meu script é chamado quatro vezes: uma vez para cada interface ( lo
, enp3s0
e enp3s0:1
) e uma vez com um $IFACE
valor de --all
. As invocações para --all
e enp3s0
são executadas simultaneamente e uma bloqueia a outra.
Não consigo encontrar nada nos changelogs, mas arrisco um palpite de que executar este script para IFACE=--all talvez seja a causa subjacente do problema que estou tendo.
desde já, obrigado
Felicidades, T.