配置:Mellanox MCX4121A 25G雙口網卡
前言
社長使用10Gb光纖網絡也有好一陣了,蘋果M系列產品也下放10Gb電口的網卡,但同時在 Ventura 系統中,同樣下放支持25\40\100\200\400的超高速網路驅動。對一般USER來說的確用不到這麼高的網速。畢竟黑果使用PC主機板內建的2.5Gb網卡真的很個用。
當然使用 10Gb 光口網卡本身也是目前CP值較高的選擇。光是購買光口交換機也是一筆高昂的數字。但對一些自營工作室、中小企業來說,若是常常需要大量的數據做傳輸?萬兆網卡也是下一代的主要目標!
測試用的黑果配置
配置:
- CPU:i9-10900
- Motherboard:GA Z490 ELITE AX
- RAM:美光DDR4-3200 32GB X2
- GPU:SAPPHIRE NITRO+ RX 5700XT 8G GDDR6
- AUDIO:ALC1220-VB
- LAN: Realtek® 2.5GbE LAN chip (2.5 Gbit/1 Gbit/100 Mbit)
- HD:WD BK SN750 500GB
- BT\WiFI:FV-T919 BCM94360CD
工作:
- USB3.0 & USB2.0 正常
- 板載聲卡&2.5G網卡 OK(自動調適,更改版本)
- 核顯加速&獨立顯卡 OK
- CPU電源 OK
- Continuity (Use Camera / Handoff / iPhone calls / SMS messaging / AirDrop)
- Sleep/Wake
- Audio
- WiFi / Bluetooth OK
- Power Management (CPU frequency/power setting by OS)
參考文獻
社長長期地關注如何在 Hackintosh 主機上安裝10Gb網卡的相關訊息,並且已實現在家也可以架設10Gb的局網,提供相關教學分享。然而在最近發現國外論壇 Macrumors 的討論串當中,已有人想要嘗試架設25Gb 以上的光纖網卡,運行在 macOS 上面。
2020\3\6 日誌:
有人已注意到 ATTO FastFrame NQ41 和 NQ42 卡片本質上是重新包裝的 Mellanox ConnectX-3 CX353A 和 CX354A 卡片。 ATTO 在其網站上提供了二進制固件文件,因此使通用的 Mellanox CX3 卡片工作的方法很簡單,只需使用 ATTO 的二進制文件進行固件交叉刷寫即可。這個過程使用 Mellanox 的固件工具包是簡單的。
以下是步驟:
- 從以下網址下載 Mellanox 固件工具:https://www.mellanox.com/products/adapter-software/firmware-tools
- 從以下網址下載 ATTO NQ41/NQ42 固件:https://www.atto.com/downloads/174/driver/29300356
- 執行以下命令:
mst start;
#NQ41 - 單口卡
flint --allow_psid_change -d /dev/mst/mt4099_pci_cr0 -i flsbundle_nq41_2017_09_05.bin burn;
# NQ42 - 雙口卡
flint --allow_psid_change -d /dev/mst/mt4099_pci_cr0 -i flsbundle_nq42_2017_09_05.bin burn;
- 將裝置放入 Mac 並安裝 ATTO 的 FastFrame macOS 驅動程式。
我還沒有親自測試過這個方法,但應該沒問題。我經常將戴爾品牌的 Mellanox 卡片交叉刷寫回原廠 Mellanox 固件而沒有問題。雖然我目前沒有足夠長的 QSFP 電纜來連接我的 Mac,但我會盡快將我的一個卡片刷寫一下,然後再回報情況。
我們可以在淘寶上找到這些網卡,尋找的零件號是 CX353A-FCBT 或 CX354A-FCBT,這些支持高達 56 GbE。CX353A-QCBT 或 CX354A-QCBT 也可能適用,支持高達 40 GbE。目前,ATTO 驅動程序似乎僅支持 ConnectX-3 Pro CX313A 和 CX314A 卡片,支持的設備 ID 類型(即芯片組型號)為 4103。MCX313A-BCBT 和 MCX314A-BCBT 據報應該不兼容,因為其設備 ID 據報為 4099。
不過這對一般小白來說,修改韌體原本就是很麻煩的一件事。社長對此也沒多大的把握。
2023\1\7 日誌:
在 Youtube 上面有人展示 Mellanox ConnectX-4 MCX4121A-ACAT 25GE 卡和 Thunderbolt 到 pciex16 擴充座( Intel J7440 晶片組)。社團朋友也發文過使用這樣的方法。
似乎使用 10Gbe 升級到 25GBe 。不過他演釋的是用M1 透過Thunderbolt 的方式進行測試,當時社長對此懷疑是否macOS 已支援這樣的網卡驅動。
2023\03\13 日誌
Mellanox ConnectX-4 Lx EN 網路轉接器 (MCX4131A-GCAT) 可以原生驅動
2023\04\10 日誌
大佬 xjn819 提出一個方法。
Ventura beta1 獲得了這個 kext。當時,驅動程序仍然是一個 kext 而不是 dext。如果網絡介面卡是由 kext 驅動的,您可以使用命令 ‘networksetup -setMTU en4 9000’ 來調整 MTU。
如果您有一台 Hackintosh,請按照以下步驟操作:
- 禁用 SIP,並添加引導引數:dk.mlx5=0 以阻止 mlx dext 驅動程序。
- 通過 OpenCore 加載附帶的 mlx kext,重新啟動,並使用命令調整 MTU;應該可以工作。
- 使用 ‘ifconfig’ 來檢查。
這個 kext 在 Apple Silicon 上也可能適用,因為它仍然有蘋果的簽名。我有一個大概的想法,但我還沒有嘗試過:
- 禁用 SIP。
- 輸入 ‘sudo nvram boot-args=dk.mlx5=0’ 來阻止 mlx dext。
- 將附帶的 kext 放入 /Library/Extensions,但可能不起作用;重新啟動 Mac,試一下。
- 如果步驟 3 失敗,使用
kmutil
直接加載 kext。 - 使用
kextstat | grep "AppleEthernet"
驗證 kext 是否已加載,並確保 mlx 被顯示。 - 使用命令調整 MTU。
- 在終端中,輸入 ‘ifconfig’ 來檢查 MTU。
2023\04\30 日誌
社長發現在 MacOS 13.1 系統當中,已內建三個 Eth 驅動程式:AppleEthernetE1000.dext、AppleEthernetIXGBE.dext 和 AppleEthernetMLX5.dext。
但在MacOS 13.3.1中,有4個dext驅動程序,包括AppleEthernetIXL.dext。不過x.dext 僅支援M系列白果,黑果不支持。
2024\05\10 日誌
社長在四月底下單,在昨天去了超商取回這張網卡。一開始採用以上網友的方法進行測試,不過還是無法驅動該網卡。最後我做了以下動作:
在BIOS中啟用VT-d後它仍然失敗,但我發現ifconfig和IORegiteryExplorer的檢查有所不同,我嘗試了許多不同的組合設置,結果如下:
1)BIOS – 啟用VT-d。
2) OpenCore – 取消勾選DisableIoMapper;檢查DisableIoMapperMapping;刪除AppleEthernetMLX5.kext;刪除 boot-args=dk.mlx5=0。
電腦重啟之後,總算這張25Gb 網卡可原生驅動,無需再加載任何Kext。
修改MTU
開啟終端機下達指令:
networksetup -setMTU en4 9000
en4 指的是網卡PCIe 的位置,你可以透過Hackintool 工具找到。
不過,目前MTU最高為2034,或許Apple 對此可改善。