アクアリウムをラズパイ&USBカメラでライブストリーミング part2

こんにちは。

前回の記事に引き続き、ラズパイを使ったアクアリウムストリーミング記事です。

前回の記事はこちら。

iryond.hatenablog.com

今回はちょっとITっぽい内容なので、
アレルギーがあるかたはそっと"戻る"ボタンを押してください。

ざっくり手順

  • 家のルータをごにょごにょして外からIPアドレスでラズパイに通信できるようにする
  • IPアドレスを指定しなくてすむようにいい感じにする

ルータとか書くと、ややこしい感じがしますが、難しいことはしません。
ただ、ご家庭によってルータの設定方法が異なるので、
その辺はうまいこと吸収してください。

実現イメージ

家のルータをごにょごにょして外からIPアドレスでラズパイに通信できるようにする

まずは、グローバルIP指定で外から通信できるようにします。

f:id:iryond:20170815173341p:plain

作業は簡単、ルータの管理画面で、
グローバルIP(WAN側と書いているかも)の8080番ポートに来たアクセスを、
プライベートIP(LAN側と書いているかも)192.168.0.11の8080番ポートに転送する
と設定するだけです。(192.~のIPはラズパイのIPです)

これで、ブラウザでグローバルIPを指定してアクセスすると、
以前の記事で確認したページが見れるようになっているはずです。

IPアドレスを指定しなくてすむようにいい感じにする

次に、グローバルIPはコロコロ変わる可能性があるため、
IP指定ではなく、ドメイン(iryond.hatenablog.comとか)でアクセスできた方が便利ですね。
世の中にはDDNSという便利なサービスがあるので、それを使いましょう。

DDNSを使ったイメージはこんな感じです。 f:id:iryond:20170815173818p:plain

DDNSを使うと、外からアクセスするときにグローバルIPを意識しなくてよくなります。
具体的な仕組みとしては、

といった感じです。

これを実現するには、DDNSサービス側と、ルータに設定が必要です。

ぼくはMy No-IPというサービスを使っています。無料で便利ですね。

設定の詳細

ご家庭によってルータの管理画面が異なるので、
同じ手順にはならないのですが、参考までに我が家の設定例を共有いたします。

ちなみに、我が家はJCOMのインターネットを契約していて、
ホームルータはHUMAX HG100R-02JGです。

ルータでの転送を設定する

前述のとおり、
グローバルIP(WAN側と書いているかも)の8080番ポートに来たアクセスを、
プライベートIP(LAN側と書いているかも)192.168.0.11の8080番ポートに転送する
と設定するだけです。(192.~のIPはラズパイのIPです)

f:id:iryond:20170816011451p:plain

ちなみに、めちゃくちゃハマったポイントがあって、
画面右上の"有効にする"を押下できていなかったために、
全然設定が有効化されていませんでした。。
そりゃ繋がらないはずだ。

DDNSサービスにドメインを登録する

DDNSサービスに、接続したいドメイン名を登録します。
My No-IPを無料プランで使用する場合、
ドメインの後部(トップレベルドメイン)はddns.netとなるため、
xxxx.ddns.netのxxxxの部分を登録することになります。
※有料プランで独自ドメインが使えるかは知りません。

Add HostNameを押下して任意のドメイン名を入力し、

f:id:iryond:20170815174739p:plain

ある程度するとこんな感じになります。

f:id:iryond:20170815174755p:plain

もしかしたら、最初のグローバルIPは自分で入力しないといけなかったかもしれません。
その場合は、下記のようなサイトを使って自分でグローバルIPを調べてください。

www.cman.jp

ルータにDDNSサービスを設定する

最後の手順です。
グローバルIPアドレスが変更になった場合に、
ルータからDDNSサービスに通知するため、ルータ側に設定を施します。

設定といっても、DDNSサービスのアカウント情報を入力するだけなので、
めちゃめちゃ簡単です。

設定画面は下記の通り。

f:id:iryond:20170816011558p:plain

これで、必要に応じてドメインIPアドレスの紐づけが更新され、
グローバルIPの値を意識する必要がなくなります。

最後に

今回は少しITによった内容になってしまいましたが、
やっていること自体はそれほど難しくないと思います。

是非トライしてみてください。

もしわからないことがあれば、Twitterで連絡いただければ、
できる範囲でサポートします。

twitter.com

次回は、水槽の監視をCloudWatchに統合したので、
そちらについて投稿しようと思います。

それでは、よきアクアライフを。

f:id:iryond:20170815175750j:plain