在现代 Linux 发行版中,网卡名称不再使用传统的 eth0、eth1 这种不可预测的命名方式(即取决于硬件被内核发现的顺序)。相反,使用 Predictable Network Interface Names(可预测网络接口名称) 机制,该机制由 systemd 和 udev 负责。网卡名称基于固件信息、拓扑结构和物理位置生成。本文介绍命名格式的详细拆解和示例列表。
命名规则结构拆解
网卡名称通常由 设备类型 + 定位规则 + 索引/标识 组成。
设备类型前缀(两个字母)
这是名称的开头,表示网卡的种类:
en (Ethernet): 有线以太网卡(最常见)。
wl (WLAN): 无线网卡 (Wi-Fi)。
ww (WWAN): 无线广域网(如 4G/5G 模块)。
sl (Serial Line): 串行线路 IP(较少见)。
定位规则与命名策略
前缀之后紧跟的字母决定了名称的来源:
| 标识符 |
含义 |
解释 |
示例 |
o |
Onboard |
板载设备。由固件/BIOS 提供的索引号。通常用于服务器主板集成的网卡。 |
eno1 |
s |
Slot |
热插拔插槽。基于 PCI Express 热插拔插槽索引号。常见于 VMware 虚拟机或专用服务器。 |
ens33, ens160 |
p |
Path |
物理路径。基于硬件的总线位置(Bus)和插槽(Slot)。这是最常见的形式,用于区分固定在某个 PCI 插槽上的网卡。 |
enp2s0 |
x |
MAC Address |
MAC 地址。基于网卡的 MAC 地址。通常用于 USB 网卡,以确保拔插后名字不变。 |
enx78e7d1... |
具体格式解释与示例
以下是以 Ubuntu 24.04 中可能遇到的具体命名格式及其含义:
格式 1:基于总线和插槽 (Physical Location) - 最常见
格式:enp<总线>s<插槽>[f<功能>][d<设备>]
这是普通 PC 和 KVM/VirtualBox 虚拟机中最常见的格式。
enp0s3:
en: 以太网。
p0: Bus 0 (总线 0)。
s3: Slot 3 (插槽 3)。
enp3s0: 位于总线 3,插槽 0 的以太网卡。
enp2s0f0: 位于总线 2,插槽 0,功能号 0 的网卡(常见于多口网卡)。
wlp2s0: 位于总线 2,插槽 0 的无线网卡。
格式 2:基于插槽索引 (PCI Slot)
格式:ens<插槽>[f<功能>][d<设备>]
常见于 VMware 虚拟机或具有特定 PCI 固件索引的服务器。
ens33: VMware 常见的默认网卡名。
ens160: VMware 新版本常见的网卡名。
ens3f0 (你提到的例子):
en: 以太网。
s3: 插槽索引 3。
f0: 功能号 0(表示这块卡上的第一个接口,如果是双口卡,第二个可能是 ens3f1)。
格式 3:基于板载索引 (Onboard)
格式:eno<索引>
常见于 Dell、HP 等物理服务器的主板集成网卡。
eno1: 主板上的第 1 个集成网口。
eno2: 主板上的第 2 个集成网口。
格式 4:基于 MAC 地址 (MAC Address)
格式:enx<MAC地址>
常见于 USB 转网口适配器,因为 USB 设备没有固定的总线插槽概念。
enx00e04c680b1a: MAC 地址为 00:e0:4c:68:0b:1a 的 USB 有线网卡。
wlx8c882b001122: USB 无线网卡。
格式 5:虚拟接口 (Virtual)
这些不由硬件位置决定,通常由软件创建。
docker0: Docker 容器的默认网桥。
virbr0: KVM/QEMU 虚拟化的默认网桥。
tun0 / tap0: VPN 通道(如 OpenVPN, WireGuard)。
veth...: 虚拟以太网对(常用于容器网络)。
类似网卡名称清单
为了回答您列举类似网卡名称的要求,以下是各种场景下的可能名称:
| 场景 |
示例名称 |
说明 |
| VirtualBox 虚拟机 |
enp0s3, enp0s8 |
经典的 Bus+Slot 命名。 |
| VMware 虚拟机 |
ens33, ens192, ens160 |
基于 PCI 插槽索引。 |
| 物理 PC (有线) |
enp3s0, enp4s0 |
独立的 PCI-E 网卡。 |
| 物理 PC (无线) |
wlp2s0, wlo1 |
PCIE 无线网卡或板载无线网卡。 |
| 企业级服务器 |
eno1, eno2, eno3 |
板载集成四口网卡。 |
| 高性能服务器 |
ens2f0, ens2f1 |
插在 Slot 2 的双口万兆光纤卡。 |
| USB 网卡 |
enx9cebe8... |
这里的后缀是一长串 MAC 地址。 |
| 旧版/自定义 |
eth0, wlan0 |
只有在禁用可预测命名规则或手动修改 udev 规则时才会出现。 |
总结
如果您看到了 ens3f0,这通常意味着:这是一个有线网卡 (en),位于热插拔插槽 3 (s3),并且是该卡上的第 0 个功能接口 (f0)(暗示这是一张多口网卡)。