いつでもどこでも自宅サーバへアクセス!~DDNSの登録~
いままで自宅サーバの立てかたを紹介してきて、自宅へ接続する場合に自分のグローバルIPアドレスを調べて直接アクセスするという方法を取ってきました。
この方法で長く使っているとたまーにグローバルIPアドレスが変わると思います。
外出中に変わってしまうと自宅へのアクセスができなくなって不便です。
そこで、IPアドレスが変わっても自宅へアクセスできるようにします。
方法として、ダイナミックDNSというサービスに登録して、自分のアドレスまで飛ばしてもらう方法を取ります。
さて、調べてみると無料のダイナミックDNSのサービスというものはたくさんあるのですが、今回は「ieServer.Net」を利用します。
まず「http://ieserver.net/」にアクセスしてください。
「ログイン/IPアドレス登録」をクリックする。
各項目を埋めていき、登録をクリックする。
「登録が完了しました」と出たら、ログインをクリックする。
先ほど登録したのと同じく入力する。
一番上の実行をクリックする。
一致の確認が取れたら登録は完了です。
すでにapacheを導入されている方や、以前投稿したAmpacheの導入方法を実践した方は登録したアドレスをブラウザのアドレスバーに入力してみましょう。
うまく行っていれば「It works!」と表示されるはずです。アクセス出来ない方は
1.反映に時間がかかっている
→時間をおいてアクセスしてみる。反映には結構時間がかかるようです。
2.ポートの開放ができていない。
→使用している「ルータの型番 ポート開放」で検索して80番ポートを開ける
3.ルータが内部からのアクセスを拒否している
→「自宅サーバ チェック」等と検索して外部からアクセスしてくれるサイトで試してみる。
この3つを試してみましょう。これでダメならちょっとわからないです。Ampacheの導入がうまく行ってないのかもしれません。
ApacheのインストールはAmpache導入の部分冒頭を参考にしてみてください。
さて、これで設定したアドレスを入力すれば自宅へアクセスできることが出来ました。
しかし、これで終わりではありません。この状態でIPアドレスが変更になると取得したアドレスにアクセスしても接続できなくなります。
これは、ieServerにはIPアドレスが変更になったことがわからないからです。つまり、IPが変更になるたびに、変更になったことをieServerに知らせる必要があります。「それでは意味が無いじゃないか」と思うかもしれませんが、その登録すらも自動化すれば、登録したアドレスにアクセスすればいつでも自宅サーバへ繋がるわけです。
ではIP登録を自動化していきましょう。
RaspberryPiで以下のコマンドを実行し自動更新ツールドダウンロードします。
wget http://ieserver.net/ddns-update.txt
次にこのファイルに自分の情報を設定していきます。
nano ddns-update.txt
を実行し33-35行目に自分の設定を書き込みます。
例
$ACCOUNT = "otankonasu"; # アカウント(サブドメイン)名設定 $DOMAIN = "moe.hm"; # ドメイン名設定 $PASSWORD = "(設定したパスワードを入力)"; # パスワード設定
「ctrl + o」→「ctrl + x」で保存して終了し、
mkdir /usr/local/bin/ddns_auto_update mv ddns-update.txt /usr/local/bin/ddns_auto_update/ddns-update.pl
を実行し名前を変えます。
これでツールの完成です。
このツールは、実行すると’’ 起動時毎に一回だけ’’その時のグローバルIPアドレスをDDNSに登録しに行くものです。起動時毎に一回なので、このツールは定期的に実行してやる必要があります。そうすることによりDDNSに常に最新のIPアドレスが登録されている状態を保ちます。
その時に使われるのがcronというツールです。これは指定された時間毎に登録されたコマンドを実行するものです。RaspberryPiには最初から入っているのでインストールの必要はありません。
crontab -e
を実行し、一番最後の行に
00 0-23/4 * * * /usr/local/bin/ddns_auto_update/ddns-update.pl
を入力し、「ctrl + o」→「ctrl + x」で保存して終了します。
これで定期的にこのツールが実行されます。
テストとしてAmpacheXから自宅のAmpacheへアクセスしてみましょう。
しばらくブログを更新しない間にAmpacheXも昔の面影がなくなってしまいましたねぇ。
-以下余談-
IPアドレスの更新にはDiceを使うのが定石ですがRaspberryPiではmakeできないためパイソンのスクリプトを使う方法を取りました。クロスコンパイル?なにそれ?
以下書き途中












