なろぐ2

PC関連のメモ帳

TrueNasで10Gと2.5G NIC導入

うちのNASが10G対応になったのは大分前ですが備忘録も
兼ねてメモ。

MicroServer N54Lをベースにしておりますので、0からだと

参考にならなかったり別途用意するものが出てくる可能性が

あります。

 


2021年5月の段階でTrueNasのバージョンは12.0-U3.1と
なっております。
10G対応のNICですがインテル製とMellanox製は公式に
サポートしているとか。
(どのカードまでサポートされているかは不明なので
購入予定の場合は事前にお調べください)

 

で。前にも書きましたが比較的安価で入手性の良いAquantia
(現Marvell)製のNICチップ AQC-107はサポートされて

おりません。

ただしTrueNasの元となるFreeBSD用のドライバは一応あるので
手動でインストール可能です。
注)Aquantic用ドライバをWebから落としますので、TrueNasが
 標準でドライバを持っているNICが必須です。
 


参考 環水平アーク様

www.eximradar.jp

 

以下転載および加筆

〇ドライバパッケージをダウンロードする為、リポジトリ
 書き換えます。

 /usr/local/etc/pkg/repos/local.conf
  変更前: enabled : yes
  変更後: enabled : no
 /usr/local/etc/pkg/repos/FreeBSD.conf
  変更前: enabled : no
  変更後: enabled : yes

12.0-U3.1でも上記の設定は書き換えないとドライバを
探してこれません。


〇ファイルを修正したら現在の最新版を確認する。
#pkg search aquantia


〇確認したパッケージをインストール。
#pkg install aquantia-atlantic-kmod-XXX

※XXXの数値は上のコマンドで表示されたドライバーバージョン
2021年5月の段階では0.0.5_1が最新のようです。


〇以下のコマンドでドライバをロード
#kldload /boot/modules/if_atlantic.ko


ここまでで一応接続可能となります。

 

で、リンク先の記事では
/boot/loader.conf に以下を追記。

if_atlantic_load="YES"

 

とありますが手動でloader.confを書き直してもTrueNasの
アップグレードを行うとloader.confがデフォルトに戻って
しまいNICのドライバがロードされません。

毎回オンボードBroadcom NIC(こちらはFreeNasの頃から

ドライバが標準装備)に切り替えてloader.confを書き換えて

おりました。

実はこれ毎回書き換えを行わなくてもロードされる事に

気付きました。


TrueNasのWebコントロールにログインし、左ペインのシステム→
調整と辿ります。
右上の『ADD』から追加で
Variable : if_atlantic_load
Value : YES
Type : loader
Enabled : チェック

 

f:id:narol:20210507165041p:plain


以上の設定を追加しておけばTrueNasをアップグレードしても
きちんとNICのドライバはロードされます。

 

 

 

さて2.5Gの方。

ちょっと調べていたらカニことRealtekの2.5G NICチップRTL8125の

ドライバがあるようです。
https://jira.ixsystems.com/browse/NAS-108091

https://github.com/truenas/ports/pull/999

 

今のところ手動導入必須のようですがそのうち正式にサポート
されるかもしれません。

それではちょっとテスト。
ごそごそとSD-PE25GLAN-1L(RTL8125搭載のカード)を探してきました。

 

やり方は上にあるAquantiaと一緒。
リポジトリを書き換えて、pkg search realtekで検索。


2021年5月の段階ではドライバは『realtek-re-kmod-v196.04_2』
というファイルのようです。
あとはこれまたインストールも上にある通り。
で、ドライバのロードは
#kldload /boot/modules/if_re.ko
でOK。

 

とりあえずこんな感じに認識しました。

f:id:narol:20210507165049p:plain


re0というのがRealtek NICですね。
きちんと2.5Gで認識しているようです。
(bge0はオンボードBroadcom、aq0はAquantiaのNICです。

 CCCはHDDなので気にしない。)

 

あとは動作テストも出来れば良かったのですがRTL8125のロー
プロファイルブラケットを紛失で取付出来ず。
(認識テストはプラプラと固定されない状態で行いました。)
もう一枚RTL8125を買うのも何だしなー。
まずはここまで。

 

上のリンク先ではうまく動いているという報告もありますので
普通に使えるかも。そもそもRTL8125チップはWindowsでも素直
でしたからね。

 

 

10G、2.5Gと導入はちょっと面倒ですね。
シェルでファイルを書き換えないとダメなのがなー。
シェルはWindowsPowerShellとかコマンドプロンプトより
ハードルが高いですし。
まー面倒な時はインテルを買っておけという結論ですかね。