ホームサーバーソリューションの提供

2008/10/19
★★★
ホームサーバーを構築してから、もう 5 年の歳月が経とうとしている。
当時、モデムのダイアルアップによるインターネットアクセスがほぼ廃れ、ADSL 全盛の時期に筆者は、契約プロバイダの制約のため、ADSL を利用できずにいた。
そのため、筆者は、背面教師というべきか、ダイアルアップに固執し、研究し、ダイアルアップでも可能な Web のサービスを模索していた。
ダイアルアップによるホームサーバーのインターネット公開の実験にも成功。RAS(Remote Access Server) による外部からのホームネットワーク接続経路の構築にも成功した。
と、様々な研究、実験を繰り返し、既に万全の準備が整い、契約プロバイダの ADSL 対応が発表され、迅速に契約を行い、ADSL 環境を導入した。
レスポンスは、当然、向上しており、エンドユーザーコンピューティングとしての視点では満足した。
そして、様々な Web サイトを見るなかで、「ホームサーバー」というキーワードを多々見つけるようになった。
筆者は、ダイアルアップによるホームサーバーのインターネット公開に成功していたものの、ホームサーバー側の IP アドレスがセッションの確立の度、もしくは定期的に変更されてしまうため、自宅の PC を利用した継続的な Web サーバーの公開は出来ないと考えていた。
Web 上では、「ホームサーバー」というキーワードとともに、それを実現する Dynamic DNS というものの存在を始めて知った。
通常の DNS は、スタティックにつまり、DNS 自体に特定の IP アドレスを設定することによって、名前解決を実現している。
ダイヤルアップや家庭向け ADSL では、IP アドレスが変更されることがあるので、IP アドレスが変更されてしまう度に、利用している DNS プロバイダへ接続し、各エントリを書き直す必要があった。また、通常の DNS では、キャッシュが設定されていることが多いため、IP を書き直したとしてもその反映には、国内で 1 日位必要という状況であった。
これを解決するのが、Dynamic DNS であり、通常では比較的雑多な、IP アドレスの変更が容易に可能なインターフェースを持っている。
また、DNS の TTL も短く設定されており、DNS 名に対する IP アドレスがキャッシュされる時間も短時間となっているため、IP が変更されたタイミングで DNS の各エントリを変更すれば良い。
極論、手動で IP アドレスの書き換えを行っても良いが、既にWeb 上には、Dynamic DNS クライアントなるものがフリーウェアとして出回っている。
この Dynamic DNS クライアントは、プロバイダから提供される IP アドレスの変更を感知し、IP アドレスが変更されている場合は、Dynamic DNS へ通知を行い DNS レコードを更新する。
そこで、Dynamic DNS クライアントを入手し、ホームサーバー構築に望んだ。
が、そこで分かったことは、数々のフリーウェアを散策したが、サーバープロセスとして動作するものが無い。つまり、いくつかのフリーフェアでは、ログオンしっぱなしで、常駐アプリケーションとしてプロセスを生かしておく必要があった。ホームサーバーという表現では、ちょっとミスマッチな方式と思った。
そこで、MASUDAQ.COM のプロダクトラインとして、Windows サーバープロセスで動作する Dynamic DNS クライアントの開発に着手することを決定した。
実は2年ほど前から、このプログラムは完成していたのだが、.NET Framework のバージョンによる障害、特に各社ルータとの相性問題などで、リリースを控えていた。
当初の仕様であった一番大きな問題は、ルータを監視し、IP アドレスの変更イベントを機会に、Dynamic DNS サーバーに通知をするという方式、つまり、ルータにはある程度のトラフィックはかけるが、Dynamic DNS サーバーには、最低限のアクセスしかかけないことが実現できます。
当初では、この仕様を取り込みテストを実施していたが、ルーターにログインし、ルーターからログオフする方式、グローバル IP アドレスが記述されてるページの特定など、ルータ依存の問題が多く発覚し、開発を一時保留としていた。
今回、MASUDAQ.COM では、MASUDAQ Utilities の充実の一環として、ルーター監視機能除外バージョンをリリースすることを決めた。
現時点(2008/10/19)の Dynamic DNS クライアントの仕様としては、サーバープロセスで起動し、ログオフしてもプロセス起動し続けるが、規定時間毎に Dynamic DNS サーバーに通知を送るといった仕様のみが組み込まれている。

「MASUDAQ Dynamic DNSer」は、MASUDAQ Utilitiesに公開されています。

コメント (0)

コメントの投稿