[ipxe-devel] Intel 82576 MAC swapping

Kieran Evans keyz182 at gmail.com
Thu Jul 26 16:12:27 UTC 2012


Hi,

I have several servers withe Intel 82576 Dual Port Gigabit NICs in them.

I currently have only one port from each wired up to the network, and 
the other empty. I can get iPXE to boot, and it'll get a DHCP link and 
do it's thing.

The problem is, iPXE will boot from nic0 with MAC address 
XX:XX:XX:XX:XX:0d, but once in linux, trying to run dhclient on the 
interface that has that MAC address fails. ethtool claims no link. 
Running dhclient on the interface XX:XX:XX:XX:XX:0c succeeds however. 0c 
is the interface iPXE claims to be net1, which it is unable to get a 
link on.

I'm using the onboard PXE boot environment to chainload iPXE. The 
onboard PXE gets a link and loads iPXE through the 0c interface, 
followed by iPXE getting a link on the 0d interface, followed by Linux 
being able to get a link on 0c again.

I believe this problem may be linked to point 5 in this FAQ[1] relating 
to the 82580
     Are the MAC Addresses still automatically calculated like on the 82576?

So my guess is that the MAC Addresses are calculated when the driver 
loads, and some difference between the way the BIOS, iPXE and Linux 
drivers work causes the interfaces to be enumerated in different orders.

This is an issue as trying to pass anything like BOOTIF to get 
installers and such to use the correct interface to install from doesn't 
work.

Output from ifstat if needed:

net0: 00:26:6c:fc:e4:0d using 82576 on PCI02:00.0 (open)
   [Link:up, TX:4 TXE:0 RX:11 RXE:4]
   [RXE: 4 x "Operation not supported (http://ipxe.org/3c086003)"]
net1: 00:26:6c:fc:e4:0c using 82576 on PCI02:00.1 (closed)
   [Link:down, TX:0 TXE:0 RX:0 RXE:0]
   [Link status: Down (http://ipxe.org/38086101)]

/Kieran

[1] 
http://communities.intel.com/community/wired/blog/2010/05/20/frequently-asked-questions-for-the-intel-82580-gigabit-ethernet-controller




More information about the ipxe-devel mailing list