思考実験とD.I.Y.

D.I.Y and Gedankenexperiment

【FreeBSD13.4】ファイルサーバーのメンテ(5):2.5Gbe/NICの装着

2.5Gbe/NICを装着し、動作させます。【注*1

1. 2.5Gbeネットワークカードの装着

(1)ネットワークカード(NIC)の選定

FreeBSD13.4の”FreeBSD 13.4 ハードウェアノート[*2]では、NICのチップとして”Intel製I225”がサポートされています。

Intel製I225”搭載されているNICを探したところ、こちらを調達しました。

(2)NICの装着
まずは、NICを装着します。

2.カーネルの再構築

(1)コンフィグレーションファイル修正

GENERICカーネルのコンフィグレーションファイルには”Intel製I225”が記載されていないため、NICを動作させることがでいません。

このため、」装着しても、GENERICをベースにしたカーネルではドライバーが含まれていないので、当然、認識される事はありません。

まずは、”/src/sys/amd64/conf/NOTES”を確認します。

”/src/sys/amd64/conf/NOTES”では、”Intel製I225”なNICのドライバーは”igc”となっています。

root@file_sv:# cd /usr/sys/amd64/conf ; kernelコンフィグレーションディレクトリに移動
root@file_sv:# cp [MYKERNEL][MYKERNEL].old ; [MYKERNEL]をのバックアップを作成する。
root@file_sv:# vi [MYKERNEL] ; [MYKERNEL]を編集し、”igc”を追加する。

[MYKERNEL]のカーネルコンフィグレーションファイルに、”/src/sys/amd64/conf/NOTES”から下記の黄色字部分をコピペします。

[..]

PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!

[..]
#device         nfe                     # nVidia nForce MCP on-board Ethernet
#device         nge                     # NatSemi DP83820 gigabit Ethernet
device          re                      # RealTek 8139C+/8169/8169S/8110S
device          igc                     # Intel I225 2.5G Ethernet
#device         rl                      # RealTek 8129/8139
#device          ahc       [..]

(2)カーネルコンパイル
root@file_sv:# cd /usr/src ; ディレクトリを移動。
root@file_sv:# make buildkernel KERNCONF=[MYKERNEL] ;

[MYKERNEL]の構築

カーネルコンパイルします。

無事コンパイルが終わったので、カーネルをインストールします。

(3)カーネルのインストール
root@file_sv:# make installkernel KERNCONF=MYKERNEL ; [MYKERNEL]のインストール。
root@file_sv:# reboot ;

[MYKERNEL]を有効化するために再起動する。

カーネルのインストールが終わったので、動作確認をします。

3.動作確認と設定

(1)動作確認

”dmes | less”で確認すると、無事、  ”igc”ドライバー(Intel製I225 NIC)が認識されています。 

ネットワークの状態を”netstat -i”で確認すると、まだ、NICの設定を行っていないので、”igc0”には””がついていて、LINK UPしていません。

(2)2.5Gbe NICの設定

2.5Gbe NICの設定を行います。

root@file_sv:# cd /etc ; /etcに移動

root@file_sv:# vi rc.conf

; rc.confを編集。

/etc/rc.confに、下記の黄色字部分を追加します。

hostname="[myhost].local"
keymap="jp.kbd"
ifconfig_re0="inet 192.168.xx.yyy netmask 255.255.255.0"
ifconfig_igc0="inet 192.168.zz.zzz netmask 255.255.255.0"
defaultrouter="192.168.32.254"

[..]

編集が終わったら、再起動します。

2.5GbeNICと2.5Gbeハブとを接続して、”netstat -i”コマンドでネットワークの状態を確認します。

”igc0”には””が外れ、上記で設定したIPアドレスでLINK Upしています。

通信の確認を行います。

今回は、すでに"2.5Gbe/NIC”を装着してある”Ubuntu 24.04LTS”*3]なマシンに、pingでパケットが通るか確認します。

【次回に続く】

ブログランキング・にほんブログ村へにほんブログ村 IT技術ブログへ

出典・引用・備考

*1:この投稿の内容は、特定の機種並びに特定の環境での確認結果になります。
同等機種や異なる環境での動作他を保証するものではありませんので、ご留意いただけます様お願いいたします。

*2:"FreeBSD 13.4 Hardware Notes"、

https://www.freebsd.org/releases/13.4R/hardware/、最終閲覧日:2025年2月10日

*3: