在 Linux 系统中,网络接口的命名规则已经经历了几次重要变化,特别是从传统的以 ethwlan 开头的名称,转变到更现代、更具描述性的命名方式。以下是这些变化的概述:

1. 传统命名约定

在早期的 Linux 发布版本中,网络接口通常遵循如下命名约定:

  • 以太网接口eth0eth1 等,其中数字代表设备的顺序。
  • 无线接口wlan0wlan1 等。

这种命名方式简单直观,但在多网卡场景下可能导致命名冲突和不一致,尤其是在硬件更换或多个网络接口动态出现时。

2. udev 中的持久性网络设备命名

为解决设备命名的一致性和可预测性问题,Linux 引入了基于 udev 的持久性命名规则:

  • 基于 MAC 地址:通常是 eth_id_MAC,其中 MAC 是网络接口的 MAC 地址的一部分。
  • 基于总线位置:如 eth_bus_info,根据设备在系统总线上的位置来命名。

这种方法提高了网络接口命名的稳定性,但名称往往较长且不易记忆。

3. systemd 和 Predictable Network Interface Names(可预测的网络接口名称)

最近,systemd 引入了一种新的网络接口命名方案,称为Predictable Network Interface Names。这种方法的目标是提供一种更加稳定和可预测的方式来命名网络接口,且不依赖于接口顺序或设备路径,减少了命名冲突的可能性。常见的接口名称包括:

  • en:代表以太网 (Ethernet) 接口。

    • eno1eno2:基于板载网络接口的逻辑编号。
    • enp2s0:其中 p2s0 表示第 2 个 PCI 总线上的第 0 个设备。
  • wl:代表无线 LAN 接口。
    • wlp3s0:无线接口在第 3 个 PCI 总线上的第 0 个设备。
  • ww:代表 WWAN 设备,如 LTE 模块。
    • wwp0s20u3:WWAN 接口在 USB 总线上的设备。

这种命名方式大大降低了环境变化导致接口名称变动的情况,特别是在使用多网络接口和在虚拟环境中非常有用。

总结

Linux 网络接口的命名方法已从简单的 eth/wlan 转变为基于物理位置、设备功能和总线信息的更稳定和可预测的命名规则。这一变化主要旨在提高在复杂系统中的管理有效性和减少配置错误。当然,管理员可以通过 udev 规则自定义这些名称以满足特定需求。

Linux 网络设备命名规则的更多相关文章

  1. 《linux就该这么学》第七节课:文件的各种权限以及linux分区命名规则

    笔记 (借鉴请改动) 5.3:文件特殊权限 SUID  临时拥有文件所有者的权限(基本上只是执行权限) SGID  临时拥有文件所有组的权限,在目录中创建文件自动继承该目录的用户组. SBIT  粘滞 ...

  2. Cisco网络设备命名规则

      1. CISCO 开头的产品都是路由器:2. RSP 开头的都是CISCO7500 系列产品的引擎:3. VIP 开头的产品都是CISCO 7500系列产品的多功能接口处理器模块:4. PA 开头 ...

  3. Linux网卡命名规则

    网卡命名 一.为什么需要这个      服务器通常有多块网卡,有板载集成的,同时也有插在PCIe插槽的.Linux系统的命名原来是eth0,eth1这样的形式,但是这个编号往往不一定准确对应网卡接口的 ...

  4. Linux文件命名规则

    Linux目录结构命名规定 几乎所有的Linux版本都会遵循FHS(Filesystem Hierarchy Standard),中文翻译过来即为文件系统层次化标准.类似于Windows操作系统中c盘 ...

  5. Linux网络端口命名规则,一致性网络设备命名

    参考文档: https://www.cnblogs.com/pipci/p/9229571.html 一致性网络设备命名,即Consistent Network Device Naming. 一.服务 ...

  6. linux 文件权限、类型、命名规则

    文件权限 -rwxr-x--t        文件类型 用户权限 组权限 其他用户权限 umask是一个掩码,设置文件的默认权限,会屏蔽掉不想授予该安全级别的权限,从对象的全权权限中减掉:对文件全权权 ...

  7. 常见linux系统中RPM包的通用命名规则

    本文重点说一下在常见的linux系统中,RPM包通用的命名规则. RPM包的一般格式为:name-version-arch.rpmname-version-arch.src.rpm 例:httpd-2 ...

  8. linux 软件包的命名规则

     linux软件包的命名规则 eg:主包       bind-9.7.1-1.el7.i586.rpm 子包 bind-libs-9.7.1-1.el7.i586.rpm bind-utils-9. ...

  9. linux初级学习笔记二:linux操作系统及常用命令,文件的创建与删除和命名规则,命令行展开以及linux中部分目录的作用!(视频序号:02_3)

    本节学习的命令:tree,mkdir,rmdir,touch,stat,rm 本节学习的技能:Linux中主要的目录作用以及特殊的目录文件: 文件的命名规则,命令行展开: 文件的创建与删除: Linu ...

  10. Linux发行版的系统目录名称命名规则以及用途

    linux各种发行版都遵循LSB(Linux Stadards Base)规则,使用一致的相关的基础目录名称,使用根目录系统结构(root filesystem),使用FHS(Files Hierar ...

随机推荐

  1. aop的两种配置方法

    一.实现接口并重写方法 实现org.aopalliance.intercept.MethodInterceptor接口,这是AOP Alliance规范中的接口,Spring AOP支持它.这种方式比 ...

  2. BootStrap Table 添加序列号

    js $('#table').bootstrapTable({ striped: true,//隔行换色 columns: [ { field: '', title: '序号', sortable: ...

  3. 使用gzexe加密shell脚本

    使用 gzexe 加密 shell 脚本是一个相对简单的过程.以下是具体的步骤: 编写你的 shell 脚本:首先,你需要有一个 shell 脚本文件,比如 myscript.sh. 确保脚本可执行: ...

  4. 10.2 web服务器

    Web客户端和服务器之间的交互用的是一个基于文本的应用级协议,叫做HTTP(Hypertext Transfer Protocol,超文本传输协议).HTTP是一个简单的协议.一个Web客户端(即浏览 ...

  5. 如何去除字符串中的 "\n" ?80% 的同学错了!

    大家好,我是鱼皮,今天分享一个小知识. 我最近负责的工作是设计一个 SQL 解析引擎.简单来说,就是将一个 SQL 表达式字符串,解析为一颗对象树,从而执行查询等一系列操作. 在最开始,我就遇到了一个 ...

  6. SUM-ACM天梯赛

    第一次天梯赛: B-B:孵化小鸡 题解:二进制枚举所有可能性,一个一个枚举出来,@离散数学,真值表. 题目如下: 二进制枚举代码如下 点击查看代码 #include <bits/stdc++.h ...

  7. 数组的创建-数组-C

    数组内存是连续的 数组是一个整体,它的内存是连续的:也就是说,数组元素之间是相互挨着的,彼此之间没有一点点缝隙.下图演示了int a[4];在内存中的存储情形: 「数组内存是连续的」这一点很重要,所以 ...

  8. 2023/4/18 SCRUM个人博客

    1.我昨天的任务 初步学习dlib的安装,了解dlib的基础组件 2.遇到了什么困难 对pandas库了解不到位,需要学习其中的基础 3.我今天的任务 初步了解了pandas库,对series和dat ...

  9. 免费正版 IntelliJ IDEA license 详细指南

    一.前言 IntelliJ IDEA 一直是我非常喜欢的 IDE 自从用上之后就回不了头了,但是 Ultimate 版本的费用十分昂贵,其实 JetBrains 自己就提供了6种免费申请授权的方式:本 ...

  10. 对比python学julia(第三章:游戏编程)--(第三节)疯狂摩托(3)

    3.3.    编程实现 2.  控制摩托车和箱子 在这个步骤中,将编程控制摩托车和箱子角色的运动,让摩托车在沙漠公路上能够加速或减速行驶,在碰到箱子时能够停止,以及显示麾托车的行驶速度和里程等. ( ...