网卡名eth1、em1 、eno1、ens1 的区别

  1. eno1:代表由主板bios内置的网卡

  2. ens1:  代表有主板bios内置的PCI-E网卡

  3. enp2s0: PCI-E独立网卡

  4. eth0:如果以上都不使用,则回到默认的网卡名

原文链接: ens与eth0的区别

<think>嗯,用户想知道Ubuntu中网络接口en33和en37的区别以及它们的命规则。首先,我得回忆一下Ubuntu的网络接口命变化。记得从某个版本开始,Ubuntu不再使用传统的eth0、eth1这样的命方式,转而使用更稳定的命规则,比如enp7s0之类的。用户提到的en33和en37看起来像是新的命方式,但具体规则是什么呢? 根据之前的了解,新的命规则是基于Consistent Network Device Naming(一致网络设备命)规范。这个规范会根据固件、拓扑和位置信息来分配称。比如,以太网设备以“en”开头,后面跟着不同的标识符。可能需要查阅引用的资料来确认具体细节。 引用3中提到,en代表以太网,后面的部分如p7表示PCI总线位置,s0可能代表插槽或端口号。但用户提到的接口是en33和en37,这里的数字部分不是p加数字,而是直接数字,可能不符合之前提到的模式。这时候需要思考是否还有其他命规则的情况。 可能的情况是,当无法通过固件或拓扑信息确定位置时,系统会回退到其他方式,比如使用设备索引或其他标识符。例如,如果设备无法被PCI总线位置或拓扑结构标识,可能会使用类似于ens33这样的称,其中s可能代表热插拔插槽,而数字是索引。或者,这里的33和37可能对应不同的物理位置或设备类型。 需要进一步分析可能的命规则中的其他情况。比如,引用3提到enp7s0中的p7是PCI总线位置,s0是插槽或端口。而en33和en37可能属于不同的情况,比如使用设备索引或其他标识符。例如,当设备无法通过拓扑信息命时,可能会使用en加上设备的MAC地址的一部分或其他唯一标识符来生成称。 另外,可能用户的环境中这两个接口属于不同的硬件类型,比如一个是板载网卡,另一个是PCI扩展卡,或者它们位于不同的PCI插槽,导致不同的编号。或者,可能系统在启动时检测到两个网卡,但由于某种原因无法正确识别它们的拓扑位置,因此采用不同的索引生成称。 需要确认命规则中的不同前缀和后缀的意义。例如,en可能是以太网,wl是无线,ww是广域网。然后后面的字符可能表示不同的总线类型或位置。比如,o<index>代表板载设备,s<slot>代表PCI插槽,而如果无法确定,可能使用其他方式生成。 可能的解释是,en33和en37中的数字部分可能对应不同的物理端口或固件提供的索引。例如,在无法获取拓扑信息的情况下,系统可能使用设备在系统中的索引,比如33和37,但这似乎不太可能,因为通常索引不会这么大。或者,可能这些接口是虚拟的,如虚拟网桥或docker创建的虚拟接口,但用户的问题中可能指的是物理接口。 另一种可能性是,33和37可能对应不同的PCI域、总线、设备或功能号。例如,enp3s0中的3是PCI总线号,s0是插槽号。但用户提到的称中没有p或s这样的字母,可能命规则有其他变种。比如,在某些情况下,如果系统使用BIOS提供的索引,可能会生成en33这样的称,其中33是设备的索引号。 这时候可能需要参考官方文档或其他资料来确认。根据引用3,当无法应用一致的命规则时,系统会回退到传统的ethX命方式。但用户的情况中的称似乎不是传统方式,而是新的方式,但格式不同。可能需要考虑其他因素,比如是否启用了不同的命策略,如使用biosdevname或其他工具。 如果系统启用了biosdevname,可能会生成类似于em1(板载)、p1p1(PCI)这样的称,但用户提到的称不是这样。因此,可能属于不同的情况。例如,在某些云环境中,网络接口可能被命ens3、ens5等,其中数字代表虚拟设备的索引。但在用户案例中是en33和en37,数字更大,可能是物理设备的不同位置。 或者,可能系统使用了不同的命方案,例如基于MAC地址的哈希生成唯一的称,导致称中的数字部分较大。例如,systemd的命规则中,如果无法通过拓扑信息命,可能会使用基于MAC地址的哈希值生成称,如enx78e7d1ea46da,但用户提到的称是en33,这似乎不符合哈希值的模式。 综上所述,可能en33和en37属于不同的物理或虚拟设备,其命依据可能涉及固件信息、拓扑结构或设备索引,但具体原因需要根据系统的硬件配置和Ubuntu的命规则来判断。可能的结论是,这两个接口对应不同的物理位置,如不同的PCI总线或插槽,或者不同的设备类型,导致称中的数字部分不同。需要进一步分析命规则中的不同情况,并结合用户的实际情况进行解释。</think>### Ubuntu网络接口en33与en37的区别及命规则解析 根据Ubuntu 20.04及后续版本的网络接口命规则,称格式为$enXX$(例如$en33$、$en37$)的接口属于**Consistent Network Device Naming(一致网络设备命)**规范下的产物。以下是具体分析: --- #### 1. **命规则的核心逻辑** Ubuntu网络接口称的组成如下: - **前缀**:表示设备类型,例如: - $en$:以太网(Ethernet) - $wl$:无线局域网(WLAN) - $ww$:无线广域网(WWAN) - **后缀**:描述设备的位置或属性。常见后缀格式包括: - **$p<bus>s<slot>$**:基于PCI总线(如$enp7s0$) - **$o<index>$**:板载设备(如$eno1$) - **$s<slot>$**:热插拔插槽(如$ens3$) - **纯数字**(如$en33$、$en37$):可能源于固件索引或设备唯一标识[^3]。 --- #### 2. **en33与en37的区别** 两者的差异主要体现在**后缀数字部分**,其具体原因可能包括: - **硬件位置不同**:若接口对应PCI扩展卡,数字可能表示不同总线或插槽编号。 - **固件索引差异**:系统启动时,固件(如BIOS/UEFI)为设备分配的索引不同。 - **虚拟设备场景**:在虚拟机或容器环境中,数字可能表示虚拟接口的编号。 例如: - $en33$:可能对应PCI总线号为33的以太网卡。 - $en37$:可能位于PCI总线37或属于不同拓扑层级的设备[^3]。 --- #### 3. **验证方法** 可通过以下命令获取接口详细信息: ```bash # 查看物理接口的PCI总线信息 lshw -class network # 检查接口命依据 udevadm info -a /sys/class/net/en33 udevadm info -a /sys/class/net/en37 ``` 输出结果中若包含类似`ID_PATH="pci-0000:03:00.0"`的字段,则表明接口基于PCI总线位置命[^1]。 --- #### 4. **恢复传统命规则(可选)** 如需将接口恢复为$eth0$、$eth1$,可修改grub配置: ```bash # 编辑grub文件 sudo nano /etc/default/grub # 添加参数:net.ifnames=0 biosdevname=0 GRUB_CMDLINE_LINUX="... net.ifnames=0 biosdevname=0" # 更新配置 sudo update-grub sudo reboot ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值