OpenWrt+OCNバーチャルコネクトでIPv6接続する(その1:きっかけとハードウェア/ソフトウェアの選定)
はじめに
本記事は自宅のインターネット環境をPPPoE(IPv4)環境からOCNバーチャルコネクトを使ったIPoE(IPv4 over IPv6)に市販のルータを使わず接続できるようにした個人的メモです。なお、最近のインターネット接続は千差万別でややこしいため、このエントリが万人に通用するわけではないことをはじめに断っておきます。
動機
拙宅は、集合住宅で部屋まで光回線が来ている。インターネット接続はNTTから提供されているHGW(PR-500KI)を使っており、HGW経由にWiFiルータ(Google WiFiのメッシュネットワーク)を接続してインターネットに接続している。
特に速度で不満になることはなかったが、ある時「あれ?IPv6でつなげるんじゃね?」と思い立って調べてみると、以下のようなことが判明した。
- IPv4はPPPoEで接続されている
- PPPoEはオーバーヘッドが大きく、またつないでいる人も多いためインターネット接続の速度低下が起こる(場合がある)
- IPv4の通信をIPv6でカプセル化するIPoE方式にすると速くなる(ことが多い)
- IPv6接続にはいろいろな方式があり、プロバイダ毎に異なる
- プロバイダ各社の方式に対応するにはルータが対応している必要がある
- HGWも対応していない(ことが多い)
- 自宅のGoogle WiFiはじめ、海外製のルータはこの方式に対応しないものが多い
- 国内製で新しい製品であれば対応していることが多いが、メッシュWiFi(IEEE 802.11s)にも対応している製品は皆無
そこまで広い家に住んでるわけでもいのでメッシュは必須か?という状況のため、プロバイダの方式に対応したルータを買ってくれば問題なかったのだが、なんか踊らされている気がしたのでいい方法がないか検討してみた。
一部で有名なYAMAHA製のルータを(NVR510、RTX830、RTX1210あたり)使えば実現できそうであったがこれらはいかんせん高価。調べて見た結果、ルータ用のハードウェアとオープンソースのルータOSを組み合わせればこれよりは安価にできそうだったのでやってみることにした。
やること
- ルータに使うハードウェアを選ぶ(本記事)
- ハードを海外から買う
- OpenWrtをインストールする
- OCNバーチャルコネクトでIPoE接続する
- HGWと置き換える
拙宅の環境
拙宅の環境を記す。この環境以外でうまくいくかどうか、今(2021年3月現在)うまくいっててもこの先うまくいく保証はないので悪しからず。
- 地域:東日本(首都圏)
- 回線:フレッツ光コラボ回線(ドコモ光)
- プロバイダ:OCN
ハードウェア選定
ルータ用途なので、複数のNICを持っているという観点で探した。いろいろ見ていると市販のWiFiルータのファームウェアを書き換えることもできるらしい。
いろいろ調べた結果、最終的にPC Engines(ゲーム機ではない)というスイスにある会社の組み込み用の機器がいい感じに使えることがわかった。
apu2シリーズ
apu2というシリーズは、AMDのCPU(GX-412TC, 1GHz 4core)が載っており、x86_64でLinuxも動くハードウェア。
メモリ(2GBor4GB)とNICポート(2〜4ポート)が選択でき、miniPCI-eポートにWiFiカードや3G/LTEのカードも載せられる。国内で使うには技適の問題とかあるらしいのと、今回の使い方的に無線デバイスは載せなかった。
m-SATA SSDやケースやACアダプタなどオプションも同時に購入できたし、もともと組み込み用途を意識してるらしく、信頼性もありそうだなということで、これを使うことにした。
VGAは無いのでディスプレイを使わずにインストールなどやる必要がある。
他の候補
- Raspberry Pi:みんな大好きラズパイ、USB接続のLANを使えばできそうだったが、かっこ悪かったので却下
- Banana Pi:迷ったが調べた感じあまり評判がよろしくなさそうだったのでやめた
- GL.iNet GL-MV1000:あとで知ったけど、今回使ったOpenWrtが最初から入っていてこれも悪くなさそう。
ソフトウェア(ルータOS)
UbuntuなどLinuxを入れて最初から設定するのもよいが、めんどくさいのと余分なものもたくさん入ってしまいそうだったので、もう少し調べてみた。そうするとやはり世の中にはルータに特化したOSがあり、そのなかから選ぶことにした。いずれにしても市販のルータのファームより高機能になりそうだった。
- OpenWrt(debianベースだが独自、今回使ったのはこれ)
追記(2021/03/19):debianベースと書いたがそうではないな - pfsense(FreeBSDベース)
- Vyatta(有名だがIPoEの情報が少なかった)
OpenWrtは更新頻度も高く、日本語のWebUIも使えて、慣れたdebian系というのもあってこれを使うことにした。
OpenWrtでできること
公式にも書いてあるが、VPN/VLAN/IPsec/DHCP/DNSなどだいたいのことはできる。かつLinuxなので、webカメラを繋いだりGPIOも使えるし、(やろうと思えば)ブログを立ち上げたり、DBを動かすことも可能。
次回
まだ前振りなのだが、想定より長くなってしまったのでこの辺で。次回、PC Enginesのapu2の購入方法について書いてみようと思う。
Discussion