最近,我买了两个MellanoxConnectX-2-210Gbit NIC,因为非常便宜。我正在努力让这些被一个pfSense框识别。BIOS识别NIC,没有任何问题。然而,pfSense绝对没有,它根本没有出现。
我听说我可以自己安装司机,或者至少可以在某个地方扔出某种神奇的花生酱,让它发挥作用。可悲的是,我所掌握的唯一证据来自这篇关于FreeNAS的文章。不过,这并不适用于我的安装。我也设法找到了NAS4免费上的一篇文章,但是我找不到文章中提到的ISO,也没有找到它是基于什么版本的BSD。也许我错过了NAS4Free网站上的一些东西,但它不在那里。
我尝试过一些快照和当前的2.2.6官方版本。不走运。
有人能用这个指出正确的方向吗?
发布于 2016-03-26 23:52:05
好的。我花了一点时间搞清楚这件事。
原来Mellanox基本上已经放弃了对NIC的所有支持。然而,并不是所有的东西都丢失了。您仍然可以使用ConnectX-3的遗留版本来实际使用NIC (至少我下载的驱动程序的发布说明是这样说的)。您可以找到驱动程序网页这里,并且实际的驱动程序可以下载正确的这里。它在ConnectX-3 -> Archive Versions -> 2.1 -> FreeBSD -> All -> All下,在实际的驱动站点上。
幸运的是,它附带了有关如何安装驱动程序的说明。由于pfSense没有提供合适的编译环境,所以您必须设置一个单独的机器来编译。我在虚拟机中安装了FreeBSD 10.3 (源代码,它是安装程序中的一个选项),这与我的pfSense版本使用的版本相同。确保使用的FreeBSD版本与pfSense框中使用的版本相同。否则可能会引起问题。
我用pkg install gcc安装gcc。不幸的是,在这一点上,我无法真正使用我从Mellanox网站下载的上述驱动程序。但是,FreeBSD仍然支持这些驱动程序,只是在默认情况下没有启用它们。如果在构建驱动程序时发现有错误,可以在/usr/src/sys/modules中找到需要编译的两个模块。将有两个感兴趣的目录,mlxen和mlx4。这两个目录中都会有一个Makefile。做通常的make && make install过程,你会对任何其他驱动程序。它将删除/boot/kernel中所需的模块。模块名为mlx4.ko和mlxen.ko。将这两个模块复制到您的pfSense框中(进入同一个目录:/boot/kernel)。之后,您可以将这两行添加到/boot/loader.conf文件中:
mlx4_load="YES"
mlxen_load="YES"保存文件并重新启动pfSense机器。
对我来说,NIC现在出现了,并允许将自己配置为LAN接口。
发布于 2016-05-11 01:50:33
最近,我升级到最新的FreeNAS-9.10-STABLE-201605240427构建,重新启动时得到了一个内核恐慌引用mlxen模块。我的知识有限猜测是mlx驱动程序现在包含在FreeBSD构建中,因此不再需要这些步骤。
因此,如果您陷入了内核恐慌:
mlx驱动程序加载的行,并使用#注释它们。F10继续引导@9.10的解决方案也适用于FreeNAS (FreeNAS-9.10稳定-201605021851)。长话短说,我拿起一个双卡包,50美元和一个直接连接电缆,以便我可以做iSCSI之间的FreeNAS和我的另一台服务器运行ESXi。ESXi认识到这张卡没有问题;就像OP中的pfsense一样,FreeBSD不知道它是什么。
在这方面,我的步骤不同:
pkg install gcc)wget http://www.mellanox.com/downloads/Drivers/MLNX_OFED_FREEBSD_V2.1.6.tar.gz)mlx4和mlxen)make && make install -这将安装到/boot/kernel中有关监狱的根(因此,在我的例子中,我的实际路径是/mnt/zfspoolname/jails/mytempjail/boot/kernel) (这两个模块每次都是如此)/boot/kernel (请记住退出监狱,嗯)/boot/loader.conf.local中mlxen0。https://unix.stackexchange.com/questions/272329
复制相似问题