Networking

添加網橋會終止所有介面的網際網路連接

  • September 27, 2019

我正在使用來自儲存庫的最新 xen 開發 Debian 伸展。

安裝 xen-system 和 xen-tools 沒有出現錯誤,但是當我嘗試啟動來賓(我們將其稱為dom1)時,除非我創建橋接器,否則它將無法工作。我用 brctl 創建了一個網橋並將其命名為 xenbr0,並將其連結到主界面(在我的伺服器上它稱為 eno1)。

啟動 dom1 現在可以工作了,但是沒有連接到任何網路,甚至沒有連接到 LAN,無論是來自主機還是來賓。如果我嘗試從其他設備 ping 它,伺服器也沒有響應。

/etc/network/interfaces (在遵循我能找到的最新指南之後):

auto lo
iface lo inet loopback

#xen
auto xenbr0
iface xenbr0 inet static
   address 192.168.0.201
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255
   gateway 192.168.0.1
   dns-nameservers 192.168.0.1 8.8.8.8 4.4.2.2
   dns-search google.com

#The primary network interface
auto eno1
iface eno1 inet manual

我不知道我沒有嘗試過什麼。我已經根據我能找到的每個指南編輯了 /etc/xen-tools/xen-tools.conf、/etc/xen/xl.conf、resolv.conf 和 /etc/network/interfaces(當然已經去了首先回到預設配置)。

我將 /etc/network/interfaces 編輯為:

allow-hotplug eno1
iface eno1 inet static
   bridge_ports xenbr0
   address 192.168.0.201
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255
   gateway 192.168.0.1

現在,當我不創建網橋時,我可以連接到網際網路。一旦我創建了一個網橋,就會出現同樣的問題:主機和訪客都無法連接到任何網路,網路上的設備也無法 ping 主機或訪客。

缺少網橋配置bridge_ports,以告知哪些物理網路介面應該是網橋的一部分。

例如:

auto xenbr0
iface xenbr0 inet static
   bridge_ports eno1
   address 192.168.0.201
   ....

您發布的第二個配置沒有配置網橋。

多虧了@michael-hampton,我被引導到了正確的方向;感謝那。您的答案將被視為解決問題的答案。下面是我所做的。這很簡單,(我說至少嘗試了 50 次之後)。改變/etc/network/interfaces。您必須同時配置主界面和網橋。這是我的interfaces文件的樣子:

allow-hotplug eno1
iface eno1 inet static
   bridge_ports xenbr0
   address 192.168.0.201
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255
   gateway 192.168.0.1

auto xenbr0
iface xenbr0 inet static
   bridge_ports eno1
   address 192.168.42.201
   netmask 255.255.255.0
   network 192.168.42.0
   broadcast 192.168.42.255
   gateway 192.168.42.1

配置介面後,執行service networking restart(或重新啟動以確保)。要檢查一切是否按計劃進行,請執行ifconfigip addr show,查看是否一切配置正確。主界面應該有一個 IP 地址,以及網橋。您可以通過 ping 網關或某個網站來檢查它是否有效,以確保雙重確認。

完成後,您必須/etc/network/interfaces在來賓上進行配置。我只是將配置從主機複製到來賓的主界面並進行了一些調整(在我的情況下將 eno1 更改為 eth0 和 IP 地址):

allow-hotplug eth0
iface eth0 inet static 
   address 192.168.0.203
   netmask 255.255.255.0
   network 192.168.0.0
   broadcast 192.168.0.255
   gateway 192.168.0.1

在來賓上,執行service networking restart,或將其關閉並重新啟動,您現在應該在主機和來賓上都有工作連接。

再次感謝邁克爾·漢普頓

引用自:https://serverfault.com/questions/926510