在带第三方光模块的 Netgate XG-7100 上该在哪里设置 hw.ix.unsupported_sfp=1(loader.conf.local 还是 GUI tunables)
楼主在 Netgate XG-7100 的板载 Intel X553 端口和一块外插的 X520-DA2 上都用了第三方 SFP+ 光模块,发现在 /boot/loader.conf 里设置 hw.ixgbe.unsupported_sfp=1 可以让它们工作。问题是:这个设置对板载和 PCIe 上的 Intel 端口是否都适用,loader.conf 和 loader.conf.local 有什么区别,以及为什么 Web GUI 里的 System Tunables 对此不起作用。一位读者用 XG-1537 补充说,驱动现在改名叫 ix 了,而且一个不被识别的模块可能在任何 tunable 生效之前就先把接口禁用掉,逼得人不得不在开机前先拔掉模块。
- 硬件: Netgate XG-7100、Netgate XG-1537、Intel X553、Intel X520-DA2、Intel X710-DA4
- 光模块: 第三方 SFP+
- 封装: SFP+
现象/提示信息:
interface disabled at boot with unsupported module
GUI tunable has no effect
Comments 2
loader 变量必须在驱动加载之前设置:把 hw.ix.unsupported_sfp=1 写进 /boot/loader.conf.local,这个文件在升级后也能保留下来;这个设置对板载和 PCIe 上的 ix(4) 端口效果完全一样。System Tunables(sysctl)应用得太晚,不起作用。
如果接口还是不行,可以试试把驱动作为模块加载(if_ix_load=YES),或者换更新版本的 Intel 驱动;启动日志里能看出模块有没有被接受。