首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有Mellanox ConnectX-2 10 10GBit的pfSense

带有Mellanox ConnectX-2 10 10GBit的pfSense
EN

Unix & Linux用户
提问于 2016-03-26 17:12:49
回答 2查看 6.6K关注 0票数 1

最近,我买了两个MellanoxConnectX-2-210Gbit NIC,因为非常便宜。我正在努力让这些被一个pfSense框识别。BIOS识别NIC,没有任何问题。然而,pfSense绝对没有,它根本没有出现。

我听说我可以自己安装司机,或者至少可以在某个地方扔出某种神奇的花生酱,让它发挥作用。可悲的是,我所掌握的唯一证据来自这篇关于FreeNAS的文章。不过,这并不适用于我的安装。我也设法找到了NAS4免费上的一篇文章,但是我找不到文章中提到的ISO,也没有找到它是基于什么版本的BSD。也许我错过了NAS4Free网站上的一些东西,但它不在那里。

我尝试过一些快照和当前的2.2.6官方版本。不走运。

有人能用这个指出正确的方向吗?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 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中找到需要编译的两个模块。将有两个感兴趣的目录,mlxenmlx4。这两个目录中都会有一个Makefile。做通常的make && make install过程,你会对任何其他驱动程序。它将删除/boot/kernel中所需的模块。模块名为mlx4.komlxen.ko。将这两个模块复制到您的pfSense框中(进入同一个目录:/boot/kernel)。之后,您可以将这两行添加到/boot/loader.conf文件中:

代码语言:javascript
复制
mlx4_load="YES"
mlxen_load="YES"

保存文件并重新启动pfSense机器。

对我来说,NIC现在出现了,并允许将自己配置为LAN接口。

票数 1
EN

Unix & Linux用户

发布于 2016-05-11 01:50:33

编辑&FreeNAS-9.10-稳定-201605240427 Note!

最近,我升级到最新的FreeNAS-9.10-STABLE-201605240427构建,重新启动时得到了一个内核恐慌引用mlxen模块。我的知识有限猜测是mlx驱动程序现在包含在FreeBSD构建中,因此不再需要这些步骤。

因此,如果您陷入了内核恐慌:

  1. 重新启动并在GRUB提示下按'e‘编辑引导设置
  2. 这将带来一个简单的编辑器,查找引用mlx驱动程序加载的行,并使用#注释它们。
  3. F10继续引导
  4. 从系统调谐器中删除模块加载程序语句。

@9.10的解决方案也适用于FreeNAS (FreeNAS-9.10稳定-201605021851)。长话短说,我拿起一个双卡包,50美元和一个直接连接电缆,以便我可以做iSCSI之间的FreeNAS和我的另一台服务器运行ESXi。ESXi认识到这张卡没有问题;就像OP中的pfsense一样,FreeBSD不知道它是什么。

在这方面,我的步骤不同:

  1. 创建了一个FreeBSD监狱来做工作
  2. 安装gcc (pkg install gcc)
  3. 下载了提到的tar (wget http://www.mellanox.com/downloads/Drivers/MLNX_OFED_FREEBSD_V2.1.6.tar.gz)
  4. 昂塔
  5. 导航到包含makefile的目录(每次用于mlx4mlxen)
  6. make && make install -这将安装到/boot/kernel中有关监狱的根(因此,在我的例子中,我的实际路径是/mnt/zfspoolname/jails/mytempjail/boot/kernel) (这两个模块每次都是如此)
  7. 现在,将两个.ko文件(模块)复制到FreeNAS的/boot/kernel (请记住退出监狱,嗯)
  8. 通过FreeNAS web ui添加模块加载器语句(System -> Tunables -> Add Tunable);这实际上将它们添加到/boot/loader.conf.local
  9. 重新启动FreeNAS
  10. 现在您应该可以添加一个新的网络接口,我的名字是mlxen0
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/272329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档