Networking
通過多個乙太網埠連接到同一路由器
我有一個帶網卡的 Debian Stretch 伺服器。我希望它連接到我的(正常配置的標準 DHCP)路由器。
所以通常我會說類似的東西
iface eth0 inet dhcp
。但是我安裝了一個帶有兩個額外乙太網埠的網卡。埠名稱因網卡的 PCI 插槽而異:
- 沒有安裝網卡。乙太網插孔被稱為
enp5s0
- 網卡安裝在 PCI 插槽 1:主機板插孔稱為
enp8s0
第一個卡插孔稱為enp3s0
第二個卡插孔enp4s0
- 網卡安裝在 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
.