Linux udev持久性networking规则

我有一个Linux系统(Slackware Linux 13.0),有两个networking接口。 我们称之为NIC0和NIC1

我的目标是使NIC0在系统中显示为eth0。

我知道这可以通过将networking别名映射到networking接口的MAC地址的udev规则来实现。 在Slackware Linux中,文件/etc/udev/rules.d/70-persistent-net.rules包含这样的规则。

我的问题最棘手的部分是,我需要伪造NIC0的MAC地址。 我知道我可以使用以下命令dynamic更改networking接口的MAC地址:

ifconfig eth0 hw ether <new MAC address> 

你看到这个问题吗? 这假设networking接口已经build立。

所以我的问题是:如果我有一个适用于NIC1的udev规则(应该是以eth1为起始的,使用它的原始MAC地址),那么系统将另一个networking接口(NIC0)作为eth0就足够了默认? 这样我可以稍后改变它的MAC地址,在udev机器完成并且networking别名被提出之后。

我使用的是Slackware 10作为参考,因此configuration文件可能会有一点变化。

/etc/rc.d/rc.inet1是networking接口的初始化脚本,在这里我将开始定制任何启动时间networkingconfiguration。

看起来这个init脚本没有任何指定硬件地址的逻辑。 但是,一个简单的修改应该能够启用这个function。

至于你的具体问题,我想你是问,如果在udev中指定NIC1为eth1将导致NIC0默认为eth0? 如果是这样:可能,但我build议testing这个。 否则,请澄清。