首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wlan号码分配

wlan号码分配
EN

Unix & Linux用户
提问于 2013-04-24 21:59:40
回答 2查看 24.3K关注 0票数 13

Linux如何或在何处确定网络设备的分配?特别是用于无线USB设备的wlan0wlan1

一段时间前,我插入了一个TP,它被指定为wlan0。我把它拿走了。本周,我插入了一个Edimax USB无线设备,它被命名为wlan1。我今天删除了它,尝试第二个Edimax USB无线设备(我买了两个),现在它出现了wlan2

我对Unix/Linux有足够的了解,知道这是在某个地方配置的,如果我删除未使用的配置文件,我可以使最新的Edimax变成wlan0。但是怎么/在哪里呢?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2013-04-25 00:43:09

Udev是确定Linux下设备名称的系统组件--主要是/dev下的文件名,但也包括网络接口的名称。

从099到196的udev版本带有记录网络接口名称的规则,并且总是对同一设备使用相同的号码。默认情况下,从udev 174开始禁用这些规则,但是您的发行版可能会启用这些规则(例如,Ubuntu保留它们)。一些发行版提供了不同的规则集。

记录和保留接口名称供以后使用的脚本是/lib/udev/rules.d/75-persistent-net-generator.rules。它用/etc/udev/rules.d/70-persistent-net.rules编写规则。因此,将现有的wlan0wlan1条目从/etc/udev/rules.d/70-persistent-net.rules中删除,并将wlan2更改为wlan0。运行udevadm --trigger --attr-match=vendor='Edimax' (或任何与设备匹配的--attr-match参数),将规则重新应用于已经插入的设备。

票数 16
EN

Unix & Linux用户

发布于 2013-04-24 22:58:37

由于引入了网络设备的持久性命名,systemd v197已经解决了这一问题。

根据freedesktop 可预测网络接口名称页面,内核只是根据相关驱动程序探测它们的顺序分配名称:

内核应用的网络接口的经典命名方案是简单地指定以"eth0“、"eth1”、.被驱动程序探测到的所有接口。由于驱动程序探测对于现代技术来说通常是不可预测的,这意味着一旦多个网络接口可用,名称"eth0“、"eth1”等的分配通常不再是固定的,很可能一个引导上的"eth0“最终在下一个引导上是"eth1”。

如果您的发行版使用systemd,您可以使用可预测的分配但可能很难处理的名称(如wlp0s11 ),也可以编写一个udev规则,以便根据mac地址给它们一个您更熟悉的名称,比如wifi1 .

/etc/udev/rules.d/中包含一个名为10-network-device.rules的文件:

代码语言:javascript
复制
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="22:bb:cc:33:44:dd", NAME="wifi1"
票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/73595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档