[わ]

NanoPi R5CにOpenWrtをいれる

おはようございます。waturaです。IPv6のndp周りでどハマりしましたが、無事に安定稼動するルーターを手に入れました。
そうすると次はより良い環境が欲しくなります。

お家ネットワークカイゼン|watura お家ネットワークカイゼン wtr.io

前の記事でも書いていますが、2025年に置いても10GbE環境の構築は恐ろしくお金がかかります。なので、構築するのは2.5GbE環境です。

XikeStor 2.5gbps スイッチングハブ 6 ポート(4x2.5G RJ45と2x10G SFP+)搭載 プラグアンドプレイ 金属筐体 静音冷却 アンマネージド スイッチングハブ デスクトップや壁掛け設置可能 個人や家庭向け | SKS1200-4GPY2XF amzn.to 7,680円 (2025年01月01日 22:30時点 詳しくはこちら) Amazon.co.jpで購入する

2.5GbEのスイッチを導入しました。また、MacBookとはUSB-C Ethernet Adapterで繋ぐようにしました。

WAVLINK USB-C 2.5G有線LANアダプター/USB-C USB-A 2in1 LAN変換コンバーター/RJ45 ギガビットイーサネット/10/100/1000/2500 Mbps/高速転送/コンパクト/在宅勤務、オンライン授業またはオンライン会議に適用/Windows 7/8/10、Mac OS 10.14.3またその以降、Linux3.2,、Chrome OSなどに対応 amzn.to 2,015円 (2025年01月01日 22:32時点 詳しくはこちら) Amazon.co.jpで購入する

WiFiはろくな速度が出ないので、有線1択です。このアダプタにしたのは安かったからです。

ルーター

候補

お値段的に問題がすくなく、少しでも10GbEを使える選択肢

WXR-5950AX12 : Wi-Fiルーター : AirStation | バッファロー Wi-Fiルーター WXR-5950AX12の商品情報サイト。バッファロー公式情報です。 www.buffalo.jp

BE7200デュアルバンドWi-Fi 7ルーター 「Archer BE7200」は最大7.2 Gbpsのネットワーク速度を誇るWi-Fi 7を搭載しており、快適なネットワー www.tp-link.com

Banana Pi BPI-R4 - Banana Pi Wiki wiki.banana-pi.org

2.5GbEが使える候補

FriendlyElec FriendlyElec-Power & Source of Big Ideas friendlyelec.com

Banana Pi BPI-R3 - Banana Pi Wiki wiki.banana-pi.org

Banana Pi BPI-R3 Mini - Banana Pi Wiki wiki.banana-pi.org

Radxa E52C Enhanced Mini Network Titan radxa.com

その他の候補

有象無象の10GbEやSFP+, 2.5 GbE の載っている mini PC

選定

なんとなく、buffaloとかTP-Linkはいやだよね。でも、安くていいよねぇ。しかもbuffaloのは10GbE x 2 だよ!とうところで、悩みました。でも、いろいろ遊ぶならば,TP-Linkはルーターしか出来ないので微妙。BuffaloはOpenWrtもいれれるしいいよね〜。SBC系やnanopi面白そうだよねえ
とマジでとりとめもなく半月くらい上記の候補をググり続けて調べていました。(Perplexityとかで調べてたので、いずれはググるは死語になる?)

結論としては、OpenWrtが問題なくうごきそうで、かつ、お安くて、小さいNanoPi R5Cを購入しました。
メタルケースつきで1万円切っているというところが決め手ですね。
WiFiは使わないので,M.2 E-KeyじゃなくてM-Keyだったら最高of最高って感じだったのですが、本体サイズ的にもあわなそうなので残念でした。

Radxa e52cは安くてよかったのですが、OpenWrt対応がまだ微妙そうだったり、本体の拡張性が低そうだったのでやめました。
BPI系はSFP→rj45に変換する系が高いし、発熱するので不便そうだったのでやめました。
TP-LinkとかBuffaloはメーカーがスキじゃないのでやめました。

NanoPi R5CにOpenWrtをいれる

NanoPiにはFriendlyWrtというOpenWrtのフォークが入っています。なので、そのままそれを使うのもありです。
動かしてみた感想としては、ぜんぜんいらないものがいっぱい入っているなぁという感想でした。なので、OpenWrtをいれてみました。

インストール方法

入れ方は簡単です。

OpenWrtのダウンロード

OpenWrt Firmware Selector firmware-selector.openwrt.org

Ext4の方をダウンロードします。

FriendlyOpenWrt

にログイン

http://192.168.2.1
ID: root
PW: password

write to eMMC

ダウンロードしたOpenWrtを書き込みます

Partitionサイズの問題

もともとのPartitionが超ちっちゃくて悲しい感じになっているので、root fs を最大まで大きくします。
まずは、必要なツールのインストールです。

opkg update; opkg install parted losetup resize2fs

私の環境では /dev/mmcblk1 にデータが入っていたので、/dev/mmcblk1 として書いていますが,一応どこに入っているのかは確認しておいたほうがいいです。

Partitionをでかくしていく

parted -f -s /dev/mmcblk1 resizepart 2 100%
reboot
losetup /dev/loop0 /dev/mmcblk1p2 2> /dev/null
resize2fs -f /dev/loop0
reboot

これで、OpenWrtをNanoPi R5Cで使えるようになりました。

iperf3

2.5GbEアダプタを接続したMacBookPro(Client)

[  5]   0.00-1.00   sec   279 MBytes  2.33 Gbits/sec
[  5]   1.00-2.01   sec   281 MBytes  2.36 Gbits/sec
[  5]   2.01-3.00   sec   280 MBytes  2.36 Gbits/sec
[  5]   3.00-4.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   4.00-5.01   sec   276 MBytes  2.31 Gbits/sec
[  5]   5.01-6.01   sec   281 MBytes  2.36 Gbits/sec
[  5]   6.01-7.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   7.00-8.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   8.00-9.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   9.00-10.00  sec   282 MBytes  2.35 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec  2.74 GBytes  2.35 Gbits/sec                  sender
[  5]   0.00-10.01  sec  2.73 GBytes  2.35 Gbits/sec                  receiver

2.5GbEアダプタを接続したMacBookPro(Server)

[  5]   0.00-1.00   sec   277 MBytes  2.32 Gbits/sec
[  5]   1.00-2.00   sec   280 MBytes  2.35 Gbits/sec
[  5]   2.00-3.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   3.00-4.00   sec   281 MBytes  2.36 Gbits/sec
[  5]   4.00-5.00   sec   279 MBytes  2.34 Gbits/sec
[  5]   5.00-6.00   sec   279 MBytes  2.34 Gbits/sec
[  5]   6.00-7.00   sec   281 MBytes  2.36 Gbits/sec
       [  5]   7.00-8.00   sec   279 MBytes  2.34 Gbits/sec
[  5]   8.00-9.00   sec   279 MBytes  2.34 Gbits/sec
[  5]   9.00-10.00  sec   280 MBytes  2.35 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  2.73 GBytes  2.35 Gbits/sec               sender
[  5]   0.00-10.00  sec  2.73 GBytes  2.34 Gbits/sec                  receiver

MacBookPro(WiFi)(Server)

[  5]   0.00-1.00   sec  69.1 MBytes   579 Mbits/sec
[  5]   1.00-2.00   sec  67.0 MBytes   562 Mbits/sec
[  5]   2.00-3.00   sec  56.8 MBytes   476 Mbits/sec
[  5]   3.00-4.00   sec  62.1 MBytes   521 Mbits/sec
[  5]   4.00-5.00   sec  60.4 MBytes   506 Mbits/sec
[  5]   5.00-6.00   sec  64.1 MBytes   538 Mbits/sec
[  5]   6.00-7.00   sec  64.2 MBytes   539 Mbits/sec
[  5]   7.00-8.00   sec  65.8 MBytes   551 Mbits/sec
[  5]   8.00-9.00   sec  69.4 MBytes   582 Mbits/sec
[  5]   9.00-10.00  sec  67.0 MBytes   562 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   646 MBytes   542 Mbits/sec sender
[  5]   0.00-10.01  sec   644 MBytes   540 Mbits/sec                  receiver

WiFはもうちょいでてほしいんですが、まあ、そんなもんかなぁという数値ではあります。というわけで、iperfするくらいならば、2.5GbE環境が出来てきたという感じになります。

OpenWrtの設定自体は前の記事を参照してください。

なお、光クロスだとこの記事の設定だとうまくいかないので修正が必要でした。また、今回はMap-eをつかう契約にしたのでDS-Liteの設定とかも全部不要になったので大幅に変わったという感じでした。

OpenWrt 22.03/23.05 で MAP-E のポートセット全部使う zenn.dev

この記事にあるスクリプトをつかってマッピングをちゃんとしてあげないと、Bundle installすらできないつらい環境になってしまっていました。

ほぼ理論値でてた

#note