Networking

通過多個乙太網埠連接到同一路由器

  • March 20, 2017

我有一個帶網卡的 Debian Stretch 伺服器。我希望它連接到我的(正常配置的標準 DHCP)路由器。

所以通常我會說類似的東西iface eth0 inet dhcp。但是我安裝了一個帶有兩個額外乙太網埠的網卡。

埠名稱因網卡的 PCI 插槽而異:

  1. 沒有安裝網卡。乙太網插孔被稱為enp5s0
  2. 網卡安裝在 PCI 插槽 1:主機板插孔稱為enp8s0 第一個卡插孔稱為enp3s0 第二個卡插孔enp4s0
  3. 網卡安裝在 PCI 插槽 2 中:主機板插孔稱為enp9s0 第一個卡插孔稱為enp6s0 第二個卡插孔enp7s0

我希望我的伺服器使用或任何可用作普通 dhcp 客戶端的enp5s0方式連接到路由器。enp8s0``enp9s0

我不想使用其他連接,因為我稍後要分配特殊的虛擬化配置:)

誰能向我推荐一個可以實現此目的的 /etc/network/interfaces 配置?

三年前,我在 Ubuntu 12.04 下遇到了一個問題,兩個相同的伺服器之間的硬體名稱不一致。修復非常簡單,我認為您將能夠在 Debian 下做同樣的事情。

我的解決方案是使用 udev 根據設備的 mac 地址重命名設備。這樣,無論您將其插入哪個插槽,設備的名稱都將始終相同。

這應該在 Debian 下工作。

例如獲取卡的mac地址ifconfig

enp0s25   Link encap:Ethernet  HWaddr 20:cf:30:2f:40:79  
         inet addr:192.168.0.114  Bcast:192.168.0.255  Mask:255.255.255.0
         inet6 addr: fe80::ecb9:ee41:b487:b54a/64 Scope:Link
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:338426 errors:0 dropped:0 overruns:0 frame:0
         TX packets:168905 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000 
         RX bytes:385564822 (385.5 MB)  TX bytes:32387645 (32.3 MB)
         Interrupt:20 Memory:f9de0000-f9e00000

然後編輯或創建文件 /etc/udev/rules.d/010_netinterfaces.rules(在 Ubuntu 12.04 下它被稱為 /etc/udev/rules.d/70-persistent-net.rules)

為每張卡片添加一行:

KERNEL=="eth*", SYSFS{address}=="20:cf:30:2f:40:79", NAME="eth0"

/etc/network/interfaces然後用新名稱更新您的。

# The primary network interface
auto eth0
iface eth0 inet dhcp

現在您可以將卡插入任何插槽,設備名稱將始終為eth0.

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