一張網卡上有兩個位址,今天的ubuntu更新破壞了它

一張網卡上有兩個位址,今天的ubuntu更新破壞了它

我在 NUC 上執行 Ubuntu 16.04 來管理我的家庭和工作網路。 NUC 中的單一 NIC 透過以下行分配兩個 IP 位址,每個網路一個/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曾經向我顯示 inet 位址192.168.0.1172.16.9.1,但自從今天運行提供的 ubuntu 更新後,它現在只顯示第一個。工作子網中的電腦無法看到彼此或外部網絡,因為 IP 位址172.16.9.1無法存取。

一定有什麼改變了,但我不知道什麼或如何修復它。

這台機器正在運作isc-dhcp-server以在家庭和工作網路中分配 IP 位址,並bind9為家庭網路進行 DNS 查找。當工作正常時,工作電腦的 DNS 由 VPN 管理。

我沒有使用圖形網路管理器。

我有什麼想法可以讓這個功能再次運作嗎?

更新boot.log:我隨後看到了過去不存在的一行:

Failed to start Raise network interfaces.
See 'systemctl status networking.service' for details.

所以我就這麼做了。我可以看到以下訊息 4 次:

ifup[670]: Another app is currently holding the xtables lock.
   Perhaps you want to use the -w option?

/etc/network我有一個腳本if-pre-up.d/iptables調用系統iptables命令五次。我猜這就是錯誤的來源 - 但直到今天的更新為止它一直可靠地工作。雖然我可以寫下-w所有這些內容,但我懷疑我只是在治療症狀,而不是解決真正的原因——我還沒有確定真正的原因。

更新2:最初我以為iptables我的腳本中的五次呼叫產生了四個xtables lock錯誤。我發現我的腳本實際上被調用了四次:一次針對每個介面(loenp3s0enp3s0:1),一次針對$IFACE值為--all。對--all和 的呼叫enp3s0同時運行,其中一個呼叫會阻塞另一個呼叫。

我在更改日誌中找不到任何內容,但我大膽猜測為 IFACE=--all 運行此腳本可能是我遇到的問題的根本原因。

先致謝

乾杯,T

相關內容