在單獨的 NIC 但與主機閘道相同的子網路上建立橋接介面

在單獨的 NIC 但與主機閘道相同的子網路上建立橋接介面

注意:我在標記此問題的任何重複項中都找不到直接的答案。問題是“正確答案”似乎在很大程度上取決於您正在運行的版本以及您是否有桌面或伺服器設定檔。我兩者都有,因為我安裝了 lubuntu-core 來提供一些基本的遠端 X 功能,而且似乎還安裝了 NetworkManager,但我們更喜歡手動編輯網路配置,而不是使用 GUI 工具。

情況是我有一個遠端 Ubuntu 14.04 伺服器,我需要重新配置網路。我需要eth1在不中斷遠端連線的情況下安全地將橋接介面新增至遠端系統。我想載入一個新的 /etc/network/interfaces 文件,但因為我沒有等效的機器來測試它或實體存取伺服器,所以我對新配置有一些疑問:

  1. 下面文件中的網關配置和指標對於我想要做的事情是否有效,
  2. 網路管理員會覆蓋或乾擾我在這裡所做的事情嗎?目前,當我的ifup eth1網路管理員自動將其關閉時。我擔心禁用 NM,以防它終止遠端連接,並且
  3. 如果我使用更新的檔案和目前設定重新啟動系統,系統恢復後是否能夠接收遠端 SSH 連線?

伺服器目前正在運行 NetworkManager,但我不需要它。我只關心 /etc/network/interfaces 中的配置是否被使用,並且機器在重新配置的所有階段仍然可以進行遠端 SSH 登入(即,我不想因為配置錯誤或關閉兩個介面而被鎖定)無需腳本或自動重新啟動並正確地將它們重新打開)。

eth0是主機流量的預設介面。eth1將成為具有自己的外部 IP 位址的 KVM 虛擬機器的橋樑。兩個介面都連接到同一實體交換器並共用 XXX0/24 子網路。我的理解是我需要一個橋樑才能正常工作,但我還需要小心我的網關和指標,因為我在同一網路上有 2 個介面。

主機目前具有以下 NetworkManager 狀態:

# nmcli d status
DEVICE     TYPE              STATE
eth1       802-3-ethernet    unavailable
eth0       802-3-ethernet    unmanaged

以及NetworkManager.conf中的配置:

[ifupdown]
managed=false

我在下面創建了新配置:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address X.X.X.4
        netmask 255.255.255.0
        network X.X.X.0
        broadcast X.X.X.255
        gateway X.X.X.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers X.X.X.2
        dns-search example.com
        # Interfaces with lower values get used first
        metric 10

### NEW BRIDGED INTERFACE ON ETH1 ###
auto eth1
iface eth1 inet static
        address X.X.X.7
        netmask 255.255.255.0
        network X.X.X.0
        broadcast X.X.X.255
        # do I need gateway here or will it conflict with eth0 ?
        # gateway X.X.X.1
        metric 20

auto br0
iface br0 inet static
        address X.X.X.200
        netmask 255.255.255.0
        network X.X.X.0
        broadcast X.X.X.255
        gateway X.X.X.1
        bridge_ports eth1
        bridge_stp off
        bridge_maxwait 5
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers X.X.X.2
        dns-search example.com
        metric 30

正如我所說,這個新配置只是添加到伺服器中,ifup eth1只有在 NM 決定刪除它之前才有效。這使得測試出現問題,但我擔心簡單地禁用 NM 可能會更糟。

答案1

最後我只是將 eth1 配置替換為

auto eth1
iface eth1 inet manual

……交叉手指就跑了reboot。系統恢復後 eth0 和 br0 介面正確,儘管「解決方案」不是我完全滿意的解決方案,而且我確信存在更好的答案。

相關內容