在 ubuntu 服务器中切换 eth0 和 eth1

lan*_*rat 8 networking linux ubuntu

我有一个简单的问题。我有一台运行 Ubuntu 服务器 8.04 LTS 的计算机,带有 2 个 NIC。主板上的一个连接到互联网,一个 PCI 卡连接到内部网络。在安装过程中,它检测到主板上的 NIC 为 eth1,PCI 卡为 eth0。我希望他们反过来。特别是因为 PCI NIC 不会被主机服务器使用,仅用于将在其上运行的某些虚拟机。

因此,当前机器启动时会激活 eth1(主板 NIC)使用 dhcp 获取 IP,而单独留下 eth0(PCI NIC)。这正是我想要的,除了 eth0 和 eth1 要切换。

谢谢。

Jer*_*use 15

正如 tzafrir.net 所提到的,在没有更多解释的情况下,在包含 Ubuntu 的基于 Debian 的系统上,您需要检查该/etc/udev/rules.d/70-persistent-net.rules文件,您会发现类似于以下内容的行:

# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:6d:b1:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Run Code Online (Sandbox Code Playgroud)

很明显,您会发现一个带有NAME="eth0" 的,另一个带有"NAME=eth1" 的,但每个都有各自的 MAC 地址。您可以简单地交换NAME值并重新启动计算机,系统将重命名它们。您甚至可以将它们命名为不同的名称,wan或者lan只要您的路线和其他配置使用相同的名称就可以了。

在基于 RedHat 的系统上,包括 Fedora 和 CentOS,这将通过更改HWADDR在相应/etc/sysconfig/network-scripts/ifcfg-ethX文件中找到的行来完成。

它的重点是在重新启动时保持相同的 NIC,因为过去已知内核会更改 PCI 卡的寻址顺序,从而可以交换 NIC 顺序。


小智 6

您可以在 /etc/udev/rules.d/70-persistent-net.rules 中轻松更改两个设备的名称