Linux内核参数:net.ifnames=0和biosdevname=0有什么区别

Linux内核参数:net.ifnames=0和biosdevname=0有什么区别

我发现centos7.8在其内核参数中使用“net.ifnames=0”而没有“biosdevname=0”,结果似乎是相同的:我得到了传统的网卡名称,例如eth0。

只是好奇,“net.ifnames=0”和“biosdevname=0”有什么区别?

答案1

戴尔文档:

Biosdevname 是由 Dell 开发并根据 GNU 通用公共许可证 (GPL) 发布的 udev 帮助程序实用程序。它根据系统 BIOS 建议的物理位置为网络设备提供一致的命名机制。

来自联机帮助页

biosdevname takes a kernel device name as an argument,
and returns the BIOS-given name it "should" be. 

biosdevname默认情况下,在运行基于 Dell 硬件的 RedHat 的系统上启用此功能。

net.ifnames=0是一个禁用可预测网络接口重命名行为的内核参数。

内核命令行手册页

   net.ifnames=
       Network interfaces are renamed to give them predictable names
       when possible. It is enabled by default; specifying 0
       disables it

答案2

只是作为补充,

内核biosdevname参数只有满足以下条件才生效:

  • 戴尔硬件
  • biosdevname软件包已安装

相关内容