以前のminiPCでほぼ満足していたのですけど、もう少し省エネならないかなと探して、たどり着いたのがこちら。
販売から結構経ちますが、まだ開発は途中らしい。
ほしい機能が一通り揃ってるようだったので、置き換えられるのか実験をしてみた記録です。
いつも通り、国内よりも、海外から買ったほうが安いです。

仕様など
ここにズラズラ貼るよりも、公式見に行ったほうが早いのに気づいたのでリンク
BPI-R4 Introduction https://docs.banana-pi.org/en/BPI-R4/BananaPi_BPI-R4
注目したいところがコレ
To meet the needs of rapidly evolving tunneling applications, the MT7988A comes equipped with the MediaTek Tunnel Offload Processor System (TOPS), which facilitates the processing of a wide range of tunneling protocols. The MT7988A optimizes networking performance with a finely tuned ISA of MediaTek TOPS, delivering premium-level offloading capabilities.
※訳
急速に進化するトンネリングアプリケーションのニーズに応えるため、MT7988AはMediaTekトンネルオフロードプロセッサシステム(TOPS)を搭載し、幅広いトンネリングプロトコルの処理を容易にします。MT7988Aは、MediaTek TOPSのISAを微調整することでネットワークパフォーマンスを最適化し、最高レベルのオフロード機能を提供します。
IPv4 NATP / IPv6 / DS-Lite / 6RD アクセラレーション用のハードウェアベースのネットワーキング暗号エンジン(EIP-197)
というわけで、使えるかなという感じでテストを進めていきます。
ファームウェアを用意する
公式のファームダウンロード先はこちら
https://docs.banana-pi.org/en/BPI-R4/BananaPi_BPI-R4
ですが、そのままだとWireguardなどほしいパッケージ入っていなかったり、インストールもできず不自由です。
素直にOpenWrt側を使います。
最近になって色々と強化されつつあるので、Snapshotを選択。
カスタマイズで、luciとかずらずら放り込みビルドします。べんり

ビルドが終わったら、sdcard.img.gzをダウンロードして、microSDに書き込みこれで起動させます。
動作試験
そのまま普通にOpenWrtが起動してくるので、LAN1~3かSFP2の方でLuci画面に入って一通り設定います。
設定は、以前書いている map-eとipip6 に ds-lite です。
設定後のスピードテストを行った結果です。
IPIP6のトンネルはCPUを使い2Gbps程度で頭打ちします。
そのままではIPv6の通信も2Gbps程度で限界になりますが、
ファイアウォールの設定から、ハードウェアフローオフロードを有効にすると、IPv6は7Gbps程度まで出ました。
IPv6にはHNATが効いているのがわかりました。


素のOpenWRTではHWNAT以外のオフロードがないようなので、MTK-SDKでやり直してみようと思います。
SDKを使ってやりなおし
今回の機種はほぼリファレンス機で、ビルドの方法まで公開されているので利用します。
ビルド開始
ビルドの手順をいろいろと見ていると、autobuild.shを使うほうがいいみたいなので、それに倣って作業すすめます。ビルド環境はOpenWrt用一式入っていれば通りました
#Get OpenWrt 24.10 source code from Git Server
git clone --branch openwrt-24.10 https://github.com/openwrt/openwrt.git openwrt
cd openwrt; git checkout 3a481ae21bdc504f7f0325151ee0cb4f25dfd2cd; cd -;
#Get mtk-openwrt-feeds source code
git clone --branch master https://git01.mediatek.com/openwrt/feeds/mtk-openwrt-feeds
cd mtk-openwrt-feeds; git checkout c8e3540e54b5b07b7afb4a5bd09d6f8db8c8a496; cd -;
#Choose one SKU to build (1st Build)
cd openwrt
# Select one SKU to build
## 1. Filogic 880 (MT7988+MT7996) MTK Reference Board (RFB) and BananaPi BPI-R4
bash ../mtk-openwrt-feeds/autobuild/unified/autobuild.sh filogic-mac80211-mt7988_rfb-mt7996 log_file=make
#ここまでビルドしてからパッケージとか調整してビルドし直す
make menuconfig
make V=s
ビルド中に気づいてしまったのですが、期待していたTOPSのソースがgitに有りません。
この時点でトンネル系の期待ができなくなりました。残念
オフロード期待する人はipqいったほうがいいですね。
一応SpeedTestやNAT周りもチェックしたのですが、MTK-SDKでビルドしてみたものと、動作自体はSnapshotと大差ない結果になりました。
わざわざSDKビルドする必要ないですね。
追試
TOPSソースのあるSINOVOIPのgithub
ビルド方法は、古いUbuntu 18.04環境でCloneしてからそのままmakeらしい
オプション変えるとビルド通らなくて詰み
MT76では無い方ではビルドできたので確認した結果
TOPSをロードするとほぼ通信できずでした。

おまけ
この辺のbuilder使うとSDKから作るの楽ですね



















コメント