根据驱动程序而不是 MAC 地址更改逻辑接口名称?

根据驱动程序而不是 MAC 地址更改逻辑接口名称?

我有一个 USB 转以太网适配器,设置为 eth1。我可以在 70-persistant-net.rules 中轻松更改它,并随意命名。但这是基于 MAC 地址的。我有很多这样的 USB 适配器,无论我插入哪一个,我都希望它更改为特定的名称。每个适配器都有不同的 MAC 地址,因此如果我插入不同的适配器,它不会更改为我想要的名称。每次只能插入 1 个,因此不会出现重复的名称。

有没有办法根据 MA​​C 地址以外的其他内容来更改接口名称,这样无论我插入哪一个,在我的情况下它总是会显示 bac0。

谢谢你的帮助

答案1

我猜你是像这样通过 MAC 选择设备

[...]ATTR{address}=="57:04:b6:c2:6c:z3"[...]

您可以尝试按供应商和型号进行选择

[...]ATTR{vendor}=="VENDOR", ATTR{model}=="MODEL"[...]

lsusb可以从或通过获得必要的信息udevadm

我自己还没有尝试过,所以这只是我的一个有根据的猜测。

答案2

所以我终于让它工作了。这就是我在 70 个持久文件中必须使用的东西。

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTRS{idVendor}=="1d6b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="bac0"

我认为 ATTRS 就是它的原因。我甚至不知道它是什么以及它是如何工作的,哈哈。不过我会接受它。我现在可以插入不同的 USB 转以太网适配器,每个适配器都有相同的接口。

相关内容