ラズパイとキャンディパイで完全ワイヤレスサーバー
ラズパイ(Raspberry Pi)はワンボードPCといわれる分野で一番有名なデバイスです。私はもともとUNIX(SolarisとLinux)のエンジニアだったのでLinux OSを採用しているラズパイは得意分野なんですが、今まであまり記事にしませんでした。
今(2020年くらい)はLinuxはほぼサーバー用です。サーバーはどこかのデータセンターにおいてあるのが普通なので、ラズパイのように小型のワンボードにするメリットをあまり感じなかったからです。
でも唯一うまみがあるとすれば、WIFIルータなどの中継点を経由しないでモバイル網で直接Internetに接続すれば、組み込み用途にはいいかなぁと思っていました。
今回の記事ではラズパイにCandy Pi Liteというデバイスをつなげて4G網経由でサーバーを構築してみたのでその手順を紹介します。
ハードウェア
Candy Pi Lite
Candy PiはRaspberry Piにつなげてモバイル端末網でインターネットに接続ができるCandy Line社の通信機器です。Candy PiシリーズはRaspberry Pi専用のデバイスでCandy Line社は(HWは)このCandy Piシリーズしか製品がありません。
Candy Pi社のリンクを張っておきます。株式会社インベンティットの社内ベンチャーみたいです。
Candy Piは通信回線の種類とかから何種類かに分かれています。
- Candy Pi Lite + : 高速通信向け 21000円位
- Candy Pi Lite LTE-M : 省電力用途向け 13000円位
- Candy Pi Lite : 低速通信向け 14000円~17000円くらい
Lite+はKDDI版とDOCOMO版とSoftBank版があります。LiteはLTE版と3G版があり、両方ともDOCOMO回線専用のようです。LTE-M版はマルチキャリアでDOCOMO、KDDI、SoftBankとも使えます。
注意しないといけないのはLite LTE-MとLiteのLTE版は違う物でLTE-Mはマルチキャリア、LiteのLTEはDOCOMO専用です。もうちょっとわかりやすい名前のほうが・・・。
私はLTE-M版を買いました。一番安いし、高速通信が必要なら5G版まで待っていたでしょうし。低速通信なのでGPIO端子で通信します。USBケーブルを使いません。
ラズパイ(Raspberry Pi)
ラズパイはRaspberry Pi 3 Model Bを使いました。でも持っているならRaspberry Pi Model A+とかで良いと思います。最近のラズパイは高速化や機能強化で電力消費が半端ないです。
使えるラズパイの種類はほぼ全部ですが、一覧にしました。
- Raspberry Pi Zero WH
- Raspberry Pi Zero(要はんだ付け)
- Raspberry Pi Zero W(要はんだ付け)
- Raspberry Pi Model A+
- Raspberry Pi Model B+
- Raspberry Pi2 Model B
- Raspberry Pi 3 Model B
- Raspberry Pi 3 Model B+(電源プラグ寸法:内径:φ2.1mm、外径:φ5.5mm)
- Raspberry Pi 4 Model B(電源プラグ寸法:内径:φ2.1mm、外径:φ5.5mm)
この他にASUSのTinker Boardも使えます。(Pi Zeroが一番かも?)
SIMカード
実はSIMカードが一番重要です。SIMカードは各事業者でグローバルIPかプライベートIPを割り当てるか異なっていて、インターネット側からサーバーにアクセスするにはグローバルIPが必要です。サーバーを作るのであればグローバルIPが必須です。
できるだけ安いSIMでグローバルIPを振ってくれる事業者は次のようなところがあります。
- ASAHI ネット LTE(固定IP)
- イプシム (固定IP)
- インターリンク LTE (固定IP)
- イオンモバイル
- OCN モバイル ONE
固定IPは電源を入れなおしても常に同じグローバルIPを振ってくれます。固定IPならIPアドレス直打ちでもサーバーにアクセスできます。
固定でない動的IPの場合は電源を入れる度にIPが変わってしまう可能性がありますが、ダイナミックDNSなどのサービスを使うと解決できます。私はMydnsを使っています。
ダイナミックDNSは電源入り後から導通まで少し時間がかかりますが、それでもOKというならば固定IPは不要です。固定IPでなければイオンモバイルが一番安く480円/月で利用できます。
私はイプシムを使いました。イプシムは固定IP不要なら500円/月にできるので必要な時だけ固定にしようと思っていました。しかし、動的IPの時はプライベートIPになってしまいます。多分もう解約します。
OS
OSイメージはDebianベースのラズパイ専用OSのRaspbianです。RaspbianにCandy Piの動作に必要なソフトが全部入った状態でOSイメージが配布されています。Candy Piのサイトからダウンロードできます。
OSが入ったSDカードの作製方法は普通のラズパイと一緒です。
ソラコムSIMを使う場合はこれだけで通信できます。私のイプシムはAPNの設定が必要でした。APNの設定についてはこちらのページを参考にしてください。
起動・通信
再起動すると自動的に通信事業者へつなぎに行きます。
モニターとキーボードが無ければこの機器を操作する方法はありません。しかし、このためにモニターを準備するのもなんなので外部からSSHできるようにします。
このバージョンのRaspbianは/bootフォルダに名前が”ssh”のファイルがあればSSHサーバーを起動します。/bootフォルダはWindowsでもアクセスできるのでSDカードをWindowsに着けて/bootフォルダにsshという名前のからファイルを作ります。
このSDカードを使ってラズパイを起動し、しばらくしてからSSHクライアントソフトでアクセスするとリモートで操作することができます。
できました?(このSSH周りが一番トラブルの多いポイント)
サーバー構築
ラズパイがインターネットとつながったらサービスをインストールしてサーバーにします。
サーバーの構築は普通のラズパイと一緒なのでここでは説明しませんが、有線のサーバーと違うところは通信量に制限があることです。普通に”apt-get update”とやるだけで何MBと消費するので気を付けましょう。
Linuxのサービスのインストールや設定はこのブログにもいくつか紹介しています。検索でLinuxを探すと見つかると思います。
まとめ
この記事ではラズパイの完全無線化の方法について紹介しました。ラズパイをモバイル回線経由でインターネットにつなぐためには次の物が必要です。
- ラズパイ本体
- Candy Pi
- SIM(グローバルIPが良い)
- OS Candy Piが配布 Raspbianベース
ここではCandy Piを使用しましたが、USB接続のモデムなど、これ以外の選択肢もあります。私がCandy Piを選んだ理由は実績があったというだけです。
最後に「完全無線のラズパイサーバー」は電源が有線だぞと言われそうですが、実はラズパイは5Vのモバイルバッテリーで動きます。今は100円ショップでもいいのがありますので、完全無線が欲しい人はモバイルバッテリーを使いましょー。
サーバーを完全無線にする意味はどのくらいあるのか分からないですが、必要な人はぜひ参考にしてください。