BananaPi BPI-R4について
諸元は下記の通り
- SoC: MediaTek MT7988 (quad-core ARM Cortex-A73 2.0GHz)
- RAM: 4GB DDR4
- ストレージ: 8GB eMMC、microSDスロット
- ネットワーク: 2x 10GbE SFP+、4x 1GbE RJ45
Proxmox上のOpenWrtからの移行理由
当初よりProxmox上でOpenWrtをNVAとして動かしていたが、それ自体が障害点となり、Proxmoxホストの問題がネットワーク全体に影響を与える可能性があるため、専用のハードウェアに移行することにした。
BananaPi BPI-R4の選定理由・要件
- 安価かつ高性能であり、それなりに入手性も高いこと
- 実売価格がボードのみの場合で約1.5万円程度、金属ケース・ファン・電源アダプタ付きでも約2万円程度とコストパフォーマンスが良い
- ちょっと前の独身の日セールでAliExpressからケースやらなんやら付けて約1.7万円で購入できた
- 10GbE SFP+ポートが最低でも1つ以上搭載されていること
- 10GbE SFP+ポートが2つあるBPI-R4は魅力的
- LANポートとしてSFP+ポートを利用することで将来的な拡張性にも期待できる(10Gスイッチングハブなど)
- OpenWrtが利用できること
- OpenWrtの安定版イメージが提供されているため、信頼性が高い
以上の理由から、BananaPi BPI-R4を選定した。
無線は別のOpenWrtアクセスポイントを利用するため、BPI-R4-NIC-BE14は購入しなかった。(技適問題もあるし…)
BPI-R4のセットアップ手順
-
事前準備
- BananaPi BPI-R4本体
- microSDカード(最低8GB推奨、それ未満だとエラーになるとの情報あり)
- USB-UARTアダプタ(3.3V対応)
- ネットワークケーブル
- 電源アダプタなど(Type-C PD給電でも起動できる)
-
OpenWrtイメージのダウンロード
OpenWrtの公式サイトからBPI-R4用のイメージをダウンロードする。
めんどくさいのでOpenWrt Firmware Selectorを使った。
OpenWrt Firmware Selector
モデルは「Banana Pi BPI-R4」を選択し、最新の安定版イメージのSDCARD.IMG.GZをダウンロード。 -
イメージの書き込み
ダウンロードしたイメージを解凍し、Balena EtcherやRufusなどのツールを使ってmicroSDカードに書き込む。
書き込み前にmicroSDカードをFAT32、4KBクラスタサイズでローレベルフォーマットしておくと良い。クイックフォーマットだとアカンらしい。 -
シリアルコンソールの接続
USB-UARTアダプタを使ってBPI-R4のシリアルコンソールに接続する。SFP+やLANポートがある側から見て左側面手前側にUARTピンがある。
ボーレートを115200bpsに設定するのを忘れるとターミナルが化け化けになるので注意。それ以外はデフォルトでOK。
接続はTeraTermやPuTTYなど、お好みでOK。 -
BPI-R4の起動
SW3スイッチが左右ともにON(下側)で起動するとmicroSDカードからブートする。
Type-CやDCジャックから給電すると起動する。すぐにU-Bootが起動するので、そのまま放置するか1. Run default boot comand.を選んでOpenWrtを起動してみる。
正しくOpenWrtが起動できたら、Enterを押すとOpenWrtのターミナルがrootで操作できる。 -
初期設定
この状態ではSDからブートしている状態なので、eMMCにインストールする。
eMMCへのインストールを行うには、microSDからNANDへ書き込み、NANDからeMMCに書き込むといった手順が必要。
以下の手順を順番に行うことでインストール可能- SW3スイッチを左右ともにONの状態で起動し、U-Bootメニューが表示されたら上部に
[SD card]と表示されていることを確認する -
7. Install bootloader, recovery and production to NAND.を選択してNANDに書き込む。 - 書き込みが完了したら、電源を落とす
- SW3スイッチの左側(1番)をOFF(上側)にして起動し、U-Bootメニューが表示されたら上部に
[SPI-NAND]と表示されていることを確認する -
9. Install bootloader, recovery and production to eMMC.を選択してeMMCに書き込む。 - 書き込みが完了したら、電源を落とす
- SW3スイッチの左側(1番)をON(下側)、右側(2番)をOFF(上側)にして起動し、U-Bootメニューが表示されたら上部に
[eMMC]と表示されていることを確認する - そのまま放置するか、
1. Run default boot comand.を選択してeMMCから起動する
以上でeMMCからOpenWrtが起動するようになる。以降はmicroSDカードは不要なので取り外して他に使いまわしてもOK。
- SW3スイッチを左右ともにONの状態で起動し、U-Bootメニューが表示されたら上部に
以降は普通に設定するだけなので割愛。
まとめ
まだ運用初日ではあるが、非常に安定しつつ高速に動作している。
特に温度については、スピードテストやiperf3で負荷をかけてもアチアチになることはなく、ケースのファンも静かに回っているだけで非常に良好。
10GbE SFP+ポートも問題なく動作しており、フレッツ光クロスの10GbE回線をフルに活用できている。
現状は10G-EPONのRJ45をメディアコンバータでSFP+に変換している為、NTTは光クロスの小型ONUを早く出してほしい。