当前位置: 首页>>技术教程>>正文


为什么我的网络接口名为enp0s25而不是eth0?

,

问题描述

很多脚本在安装Ubuntu 15.10后就停止了工作,我很难记住这个新名字,因为我习惯ethx和wlanx多年。是否有这个改变的原因?我是否必须习惯这个,或者我可以重新命名它并返回到旧的eth0?

$ ifconfig

enp0s25   Link encap:Ethernet  HWaddr 77:5a:5e:a6:86:d5  
      inet addr:192.168.31.239  Bcast:192.168.31.255  Mask:255.255.255.0
      inet6 addr: fe80::725a:b6ff:fea6:86d7/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:4833 errors:1332 dropped:0 overruns:0 frame:666
      TX packets:5589 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:3266446 (3.2 MB)  TX bytes:1046654 (1.0 MB)
      Interrupt:20 Memory:d3500000-d3520000

最佳解决思路

这被称为Predictable Network Interface naming,它是systemd的一部分,从15.04版本开始,Ubuntu已经过渡到该版本。

基本思想是,与以前的* nix命名方案不同,在这种方案中,硬件探测不按特定顺序进行,并可能在重新启动之间发生变化,这里接口名称取决于硬件的物理位置,可以通过查看lspcilshw输出来预测/猜测。相反,我们可以猜测它在pci系统中的物理位置的信息。在你的情况下,这将是PCI总线0,插槽2.根据the freedesktop.org article,实际上有3种方法如何分配接口名称:基于板载卡的BIOS /固件,基于PCI信息,并基于接口的MAC地址。 Refer here for other examples

根据the freedesktop.org page切换到可预测命名的原因之一是,经典的命名约定可能会导致multi-interface系统中的软件安全风险,因为设备在启动时被添加和删除。另外,根据Sam Hanesthe comment,“在一个具有多个以太网端口的大型服务器上这是非常宝贵的:您可以立即知道哪个接口转到哪个端口,添加或删除硬件不会更改其他端口的名称。”

如果您决定恢复到其他版本的命名,请参见How to rename network interface in 15.10

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1026.html,未经允许,请勿转载。