First of all, is using ifrename to get wireless cards to have wlan* names instead of eth* names the best way to do things? I was having issues with Slackware loading a PCMCIA card as eth0 if it was plugged in at boot, but not at other times, making configuration (rc.inet1.conf) quite difficult if the onboard lan interface (which is eth0 or eth1 depending on the PCMCIA card being plugged) have different settings.
I got around it by specifying the onboard interface as the first module to load in rc.modules, and that's made it appear as eth0 first all the time now. The on-board wireless in this laptop uses the ipw3945 driver, and loading that usually causes it to become eth1 or eth2.
I've edited /etc/modprobe.conf and made a wildcard mac address match in /etc/iftab to rename the PCMCIA wireless card to wlan* instead. Is this the best way to do it? I'm kind of accustomed to OpenBSD's naming conventions for network interfaces. The PCMCIA card is a generic orinoco_cs/hermes card, and the modprobe line is seen below for it...
Trying to do the same for the on-board (ipw3945) device doesn't work so well though. The problem is, modprobe.conf needed to be modified to load a 'regulatory daemon' (ipw3945d) when the module is modprobe'd. Doing so seems to bring the device up before ifrename can do it's magic and therefore fails. So, I'm wondering what'd be the best way to get around this? I've tried putting in sleep statements in the modprobe.conf line (as I'll show below) and it doesn't work, plus using sleep timings isn't always going to be accurate is it?
in modprobe.conf:
Code:
install ipw3945 /sbin/modprobe -i ipw3945; /sbin/ipw3945d --quiet; /sbin/ifrename
install orinoco_cs /sbin/modprobe -i orinoco_cs ; /sbin/ifrename
the older version with the sleep command in looked like:
Code:
install ipw3945 /sbin/modprobe -i ipw3945; /sbin/ipw3945d --quiet; sleep 0.6 /sbin/ifrename
Anything less than 0.5 was too soon, the interface hadn't appeared, and anything above, it was already up and couldn't be renamed. There's nothing wrong with the iftab line, as it works if I manually bring down the interface and then run ifrename, but I'll list it anyway:
Code:
wlan* mac 00:13:20:* # intel on-board
wlan* mac 00:02:2D:* # orinoco/hermes
Any suggestions/comments/recommendations? Slackware seems to be a bitch to get specific devices to have specific settings if the module loading order is different, and I don't know of another way to rename other than with messing with udev, and that would mean hard-specifying the interface name and number (e.g. wlan0)...