I've purchased a Dell PowerEdge R630 with an integrated Intel X520/I350 (2x SFP + 2x RJ45) network card. I've setup the server locally (on a 1G RJ45 network) to test that everything worked as expected and it did; everything worked, no error messages.
Then I shipped it to the datacenter and let them rack it up for me. As defined in the colocation agreement, they connected the server using a 10G (SFP+) port. As somebody with little to no SFP+ experience, I – naively – assumed it will "just work", but when I tried to (re)install the operating system via iDRAC/VNC and noticed that the one connected SFP+ network link was missing (there is only eno2 to eno4, no eno1). Thought, iDRAC shows the first port as connected.
I first thought Linux is missing some drivers, but then I noticed that there is already an error message during the boot process (before the operating system gets loaded):
- Screenshot of the error message during boot up
- Screenshot of iDRAC showing the port as connected
- Screenshot of
dmesg
output in the Proxmox installers debug mode
As already mentioned, I got barely any knowledge about SFP+ networks which puts me in a rather uncomfortable position: I can't even tell whether thats a hardware issue (such as a compatibility issue with the installed SFP+ module) or a software/configuration issue. Any ideas what I should look at?
Best Answer
This Intel NIC does have an on-device whitelist of SFP+ modules it will accept, but it is possible to disable this and attempt to use whatever SFP+ module you want. You need to pass the ixgbe module parameter
allow_unsupported_sfp=1
.You can test whether this will work by unloading and reloading the module with the option given:
The usual way to make this persistent is to add the module option to a file such as
/etc/modprobe.d/ixgbe.conf
and then runsudo update-initramfs
on Debian based systems orsudo dracut -f
on Red Hat based systems. The content of that file would be:It can also be added to the kernel command line at boot, i.e.:
ixgbe.allow_unsupported_sfp=1
so that you can use it in an installation environment.