アクアリウムをラズパイ&USBカメラでライブストリーミング part2
こんにちは。
前回の記事に引き続き、ラズパイを使ったアクアリウムストリーミング記事です。
前回の記事はこちら。
今回はちょっとITっぽい内容なので、
アレルギーがあるかたはそっと"戻る"ボタンを押してください。
ざっくり手順
ルータとか書くと、ややこしい感じがしますが、難しいことはしません。
ただ、ご家庭によってルータの設定方法が異なるので、
その辺はうまいこと吸収してください。
実現イメージ
家のルータをごにょごにょして外からIPアドレスでラズパイに通信できるようにする
まずは、グローバルIP指定で外から通信できるようにします。
作業は簡単、ルータの管理画面で、
グローバルIP(WAN側と書いているかも)の8080番ポートに来たアクセスを、
プライベートIP(LAN側と書いているかも)192.168.0.11の8080番ポートに転送する
と設定するだけです。(192.~のIPはラズパイのIPです)
これで、ブラウザでグローバルIPを指定してアクセスすると、
以前の記事で確認したページが見れるようになっているはずです。
IPアドレスを指定しなくてすむようにいい感じにする
次に、グローバルIPはコロコロ変わる可能性があるため、
IP指定ではなく、ドメイン(iryond.hatenablog.comとか)でアクセスできた方が便利ですね。
世の中にはDDNSという便利なサービスがあるので、それを使いましょう。
DDNSを使ったイメージはこんな感じです。
DDNSを使うと、外からアクセスするときにグローバルIPを意識しなくてよくなります。
具体的な仕組みとしては、
- ドメイン(iryond.hatenablog.comみたいな)をDDNSサービスに登録
- グローバルIPアドレスが変わるたびに(定期的にかも?)
ルータがDDNSサービスに「IP変わった!更新して!」と通知 - 通知を受けたDDNSサービスが、登録済みのドメインのIPアドレスを更新
といった感じです。
これを実現するには、DDNSサービス側と、ルータに設定が必要です。
ぼくはというサービスを使っています。無料で便利ですね。
設定の詳細
ご家庭によってルータの管理画面が異なるので、
同じ手順にはならないのですが、参考までに我が家の設定例を共有いたします。
ちなみに、我が家はJCOMのインターネットを契約していて、
ホームルータはHUMAX HG100R-02JGです。
ルータでの転送を設定する
前述のとおり、
グローバルIP(WAN側と書いているかも)の8080番ポートに来たアクセスを、
プライベートIP(LAN側と書いているかも)192.168.0.11の8080番ポートに転送する
と設定するだけです。(192.~のIPはラズパイのIPです)
ちなみに、めちゃくちゃハマったポイントがあって、
画面右上の"有効にする"を押下できていなかったために、
全然設定が有効化されていませんでした。。
そりゃ繋がらないはずだ。
DDNSサービスにドメインを登録する
DDNSサービスに、接続したいドメイン名を登録します。
を無料プランで使用する場合、
ドメインの後部(トップレベルドメイン)はddns.netとなるため、
xxxx.ddns.netのxxxxの部分を登録することになります。
※有料プランで独自ドメインが使えるかは知りません。
Add HostNameを押下して任意のドメイン名を入力し、
ある程度するとこんな感じになります。
もしかしたら、最初のグローバルIPは自分で入力しないといけなかったかもしれません。
その場合は、下記のようなサイトを使って自分でグローバルIPを調べてください。
ルータにDDNSサービスを設定する
最後の手順です。
グローバルIPアドレスが変更になった場合に、
ルータからDDNSサービスに通知するため、ルータ側に設定を施します。
設定といっても、DDNSサービスのアカウント情報を入力するだけなので、
めちゃめちゃ簡単です。
設定画面は下記の通り。
これで、必要に応じてドメインとIPアドレスの紐づけが更新され、
グローバルIPの値を意識する必要がなくなります。
最後に
今回は少しITによった内容になってしまいましたが、
やっていること自体はそれほど難しくないと思います。
是非トライしてみてください。
もしわからないことがあれば、Twitterで連絡いただければ、
できる範囲でサポートします。
次回は、水槽の監視をCloudWatchに統合したので、
そちらについて投稿しようと思います。
それでは、よきアクアライフを。