できる?OSSのインストール(3)インストールマニアックス3のWebサーバーをインターネットに公開する
インストールマニアックス事務局です。
こんにちは。
さて、phpやPerlなどのインストールも無事に終わり、いくつかのOSSのインストールも無事にできたら、いよいよWebサーバーをインターネットに公開してレポーティングサイトに登録することになります。
そのためにWebサーバーをインターネットからアクセスできるようにする必要がありますが、ここでは、その一例としてローカルIPアドレスで構築されたWebサーバーをインターネットに公開するための情報を提供させていただくことにいたします。ざっくりとしてますが、その点はご了承ください。
●想定環境
今回の環境としては
・ブロードバンドルータを使って常時接続
・グローバルIPアドレスはブロードバンドルータに1つ割り当てられており、接続ごとに変動する
・ローカルIPアドレス(192.168.1.0/24)を使ってLANを構築し、その中でWebサーバー(192.168.1.100)を公開
という一般的な自宅の環境を想定しておりますが、インターネット接続環境は参加者の方々それぞれによって違いますので、説明通りにうまくいかないこともあります。何卒ご了承ください。iptablesとか使っている人は読む必要はないと思いますよ。
●インターネットからローカルIPアドレスのWebサーバーにアクセスできるようにする
まず、インターネットからここで公開しているWebサーバーにアクセスできるようにするためには、グローバルIPアドレスのポート80へのアクセスをWebサーバーのIPアドレスのポート80に振り分ける必要があります。
これにはNAPTや静的IPマスカレードと呼ばれるブロードバンドルータの機能を使います。
それぞれのルータによってやり方は違うと思いますが、図のような画面で設定できると思います。
だいたいどのルーターでも設定するのは
・公開したいサーバーが持つローカルIPアドレス
・公開したいサーバーが持つポート番号
になります。グローバルIPアドレスの方は自動的に割り当てられますので設定の必要はないでしょう。
NAPT設定画面の例
なお、ブロードバンドルーターによっては、DMZ機能と呼ばれるインターネットからすべてのアクセスをそのマシンに割り振る機能がありますが、セキュリティ的に大変危険ですのでなるべく使わない方がいいでしょう。
NAPTによって設定を済ませると、
http://202.218.13.185/(←自身のグローバルIPアドレスを指定してください)
のようにインターネットからルーターに割り当てられているグローバルIPアドレスを指定してアクセスするとIISのスタートページが見えるようになっていることでしょう。
なお、ルーターに割り振られているグローバルIPアドレスについては、ブロードバンドルーターに表示されていることも多いのですが、わからない場合は http://packetmonster.com/env.php のような環境変数を表示するサイトで見ることもできます。
●ダイナミックDNSサービスを使ってIPアドレスが変わっても同じURLを使ってアクセスできるようにする
これで、インターネットからWebサーバーにアクセスすることが可能になりました。
しかし問題があります。
グローバルIPアドレスはISPによっては接続ごとに変更されてしまうところも多いです。
http://202.218.13.185/env.cgi(登録時)
↓
http://202.218.13.138/env.cgi(チェック時)
のように変わってしまっていたら、せっかく登録したURLにアクセスすることができません。もちろんこれでは得点も無効になってしまいます。
これではちょっと困ります。
それを解決するのがダイナミックDNS(DDNS)サービスです。
DDNSサービスはグローバルIPアドレスとドメイン名を対応させるDNSのサービスに加えて、IPアドレスが頻繁に変更されてもいいように変更されたときも素早く更新されるようになっているDNSサービスです。そのためIPアドレスが変更されたときでも、素早くDDNSを使って対応するIPアドレスを変更することで、同一のURLを使うことが可能です。また、サブドメインが提供されているところも多く、自分でドメイン名を取得していない場合でもインターネットからドメイン名を使ったアクセスが可能になります。
●ダイナミックDNSサービス
ダイナミックDNSサービスを行っているサイトは以下のようなところがあります。
・ieServer.Net(http://www.ieserver.net/)
・Dynamic Do!(http://ddo.jp/)
・MyDNS.JP(http://www.mydns.jp/)
・DynDNS.com(http://www.dyndns.com/)
・no-ip(http://www.no-ip.com/)
また、そのレジストラからドメインを取得することでダイナミックDNSサービスを使えるようになるところもあります。
・お名前.com(http://www.onamae.com/service/ddns/)
・livedoorドメイン(http://domain.livedoor.com/)
・バリュードメイン(https://www.value-domain.com/howto/?action=ddns)
これらのサービスを使い、IPアドレスが変更されたときに通知を行うことで同一URLからアクセスすることができるでしょう。ただし、IPアドレスを更新するのは基本的にこちらの仕事です。更新には以下の方法があります
・DiCE(http://www.hi-ho.ne.jp/yoshihiro_e/dice/)、GnuDIP(http://gnudip2.sourceforge.net/)などダイナミックDNS利用をサポートするソフトウェアを導入する
・各DDNSサービスのWebサイトから設定を行う
・ルータの機能を使って設定を行う
DDNSサービスを提供しているところによってさまざまですので、各自でサービス内容をお確かめの上、環境にあったところをご利用ください。サービス内容やソフトウェアに関するご質問は、各提供元をご参照ください。
また、BIGLOBEやSo-net、ぷららなどISPによってはDDNSサービスが提供されているところもあります。また、バッファローやコレガ、IODATAなどルーターのメーカーによってDDNSサービスが提供されているところもあります。
これらのISPやルーターを使っている場合、そのISPやメーカーのサービスを使うことによって、IPアドレスの変更があった場合、自動的に対応の変更を行ってくれますので、それを使うとより簡単かもしれません。
それでは、皆様のご健闘お祈りいたします。