遵循 NetworkManager 描述https://wiki.debian.org/NetworkManagerNetworkManager 的目標是:
NetworkManager 嘗試始終保持活動的網路連線可用。
我將 Ubuntu 21.04 系統與 Debian 11 (bullseye) 進行了比較,兩者都作為 Libvirt 環境中的虛擬來賓,在每個來賓上使用 2 個「有線」網路介面(不同的子網路)。
程式:
- 在一個介面連結處於活動狀態(第二個已關閉)的情況下啟動來賓
- 設定活動鏈路關閉(透過虛擬管理器)
- 設定來自另一個網路介面的連結(透過虛擬管理器)
- 檢查訪客內部,網路是否在第二個介面上重新連接
在 Ubuntu 21.04 系統上,一切都按預期工作,來賓正在刪除缺少運營商的介面(因為連結設定為關閉),並自動重新連接第二個介面上的網路(該連結設定為開啟)。
Debian guest 虛擬機不會自動重新連接,但如果您手動開啟 guest 虛擬機內部的接口,它就會運作。
如果將程式更改為...
- 在一個介面連結處於活動狀態(第二個已關閉)的情況下啟動來賓
- 設定活動鏈路關閉(透過虛擬管理器)
- 等待介面在 guest 中刪除
- 設定來自另一個網路介面的連結(透過虛擬管理器)
- 檢查訪客內部,網路是否在第二個介面上重新連接
....在 Debian guest 虛擬機器中網路也會自動重新連線。
看來,Debian系統中的NetworkManager有一個嚴重的問題。當第二個介面成為有效運營商時,如果另一個介面已處於活動狀態,則現在和將來的自動連接將忽略新介面。如果活動接口關閉,NetworkManager 不會啟動第二個可用接口上的接口,結果訪客不再連接到任何網絡!
我嘗試比較版本、資料包和配置文件,但看不到任何差異。
我的問題:
- 知道為什麼這些系統對相同程序的反應不同嗎?
- 在Debian系統中可以修改什麼來可靠地實現NetworkManager的目標(網路始終處於活動狀態)?