I've got an odd one here, and I'm not sure where to start.
We're installing RHEL 6.3 and doing bonding of the first (or zeroth) onboard and the first offboard.
To do this consistently we really would prefer to use the biosdevnames functionality (e.g. em1 bonds with p2p1).
(We're using Cobbler to provision these systems, if that matters).
This worked for the first 6 machines I kickstarted, but either I'm holding my jaw different, or something has changed in numbers 7 and 8. The first round works fine--the OS installs using em1, em2 and p2p1, the appropriate schtuff gets created in /etc/sysconfig/network-scripts (meaning ifcfg-bond0, ifcfg-em1 ifcfg-em2 and ifcfg-p2p1.
But /etc/udev/rule.d/70-persistent-net-rules gets created with eth0 through eth5, which prevents the ifcfg'd interfaces from coming up.
I put a rm /etc/udev/rule.d/70-persistent-net-rules in kickstart, and it didn't help.
After the first reboot I tried deleting that file and it was recreated on the next reboot.
70-persistent-net.rules references /lib/udev/write_net_rules, which SEEMS to be reading /etc/.../network-scripts/ifcfg* to do its stuff.
When I edit the 70-persistent-net.rules file I get my networking back, but the whole point of kickstart is that I shouldn't have to do that, right?