BLOGinSPACE
インストール型ブログ
セキュリティコード
GoogleSitemapsジェネレータ
サイト探索
Google Sitemaps
Flash programming リンク集
Perl & CGI リンク集
PROGRAMING リンク集
プログラミング言語の種類
ActivePerl
Perlドキュメント(和訳)
Perlデータ構造
Apache JP
Apache 中核機能
ダイナミックDNSサービスを使えば、動的IPアドレスでもドメインによるインターネットサーバの公開ができる
#--------------------------------------------
# まずはダイナミックDNSについて
#--------------------------------------------
常時接続環境が利用できるとなると、インターネットの活用法も飛躍的に広がってくる
単にWebページを閲覧するだけに使用するというのではあまりにもったいない
次なるステップはマイ・インターネットサーバの構築ということになるだろう
プロバイダのメールサーバではメールアドレスやメールの送受信量に制限もあるだろうし、Webサーバも容量やCGIなどに制限が課せられる
せっかく常時接続に近い環境が得られるのであれば、自分だけの自由なサーバを構築してみたくなるものだ
#--------------------------------------------
グローバルIPアドレスとプライベートIPアドレス
#--------------------------------------------
インターネットに直接接続されるPCやホストには、インターネット上において一意で重複しないIPアドレスが割り当てられている
このIPアドレスをグローバルIPアドレスという
このグローバルIPアドレスがないとインターネット上のホストを特定することができない
インターネットが考案された当時は、現在のようにインターネットが爆発的に普及し、インターネットに接続されるホストが膨大になるとは想定されていなかったため、グローバルIPアドレスが不足するという事態となってしまった
こうしたグローバルIPアドレスの枯渇問題に対応するために、LANなどインターネットに直接接続されないPCやホストには、プライベートIPアドレスという内部的に使用されるIPアドレスを割り当てることが多い
プライベートIPアドレスでは直接インターネットに接続することはできない
このため、NAT(Network Address Translation)やIPマスカレードといった、プライーベートIPアドレスとグローバルIPアドレスを変換する仕組みを利用することで、インターネット上のホストに接続できるようにしている
こうした仕組みは、一種のファイアウォールとして機能するというメリットもあるが、逆にインターネット上からプライベートIPアドレスのホストに接続することはできない
このため残念ながらプライベートIPアドレスによるサーバの公開は不可能だ
つまりインターネットサーバを公開するとなると、グローバルIPアドレスが割り当てられていることが必須ということになる
IPアドレスがグローバルIPアドレスかプライベートIPアドレスかは、割り当てられたIPアドレスの範囲(アドレス空間)で知ることができる (下記)
----------------------------------------
10.0.0.0 〜 10.255.255.255
----------------------------------------
172.16.0.0 〜 172.31.255.255
----------------------------------------
192.168.0.0 〜 192.168.255.255
----------------------------------------
これらの範囲のIPアドレスはインターネット上に存在することが禁止されているものだ
ただし、ルータを使ってインターネットに接続している場合は、ルータがグローバルIPアドレスを持ち、サーバ自体はプライベートIPアドレスを持つこともある
この場合は、ルーターとサーバの間でパケットをポートフォワードすることによって、サーバを外部に公開することができる
#----------------------------------
# lPアドレスとDNS
#----------------------------------
インターネット上のホストにはすべてIPアドレスが割り当てられているが、これらは111.122.133.144といった数値の羅列であり人間が覚えることば難しい
これを人間が覚えやすいような、たとえば www.hoo.bar.jpといったドメイン名に割り当て、相互に変換するシステムがDNS(Domain Name System)だ
いわば、DNSはインターネットの電話帳と考えることができる
この仕組みを使うことで、覚えやすいアドレスでホストに到達できるようになっている
ドメイン名からIPアドレスへの変換を正引き(順引き)、逆のIPアドレスからドメイン名への変換を逆引きと呼ぶ
人間が利用する場合はもっばら正引きだけだが、コンピュータにとっては逆引きも重要となる
DNSはIPアドレスとドメイン名の相互変換という仕組みを提供しているが、こうしたアドレスの対応は固定されており、頻繁には変更されないという前提で作られている
つまり、固定(スタティック)IPアドレスが想定されているわけだ
これは常時接続されるホストは当然固定IPアドレスを持ち、頻繁に変更されることはないという想定の元で設計されていたからだ
ところがADSLやBフレッツといった常時接続サービスのほとんどは、接続のたびにIPアドレスが変わる動的(ダイナミック)IPアドレスを提供する
こうした動的IPアドレスでは、DNSに登録したとしてもいつまでそのIPアドレスが割り当てられているかはわからず、実際に誰かがインターネット上から接続しようとしたときには、すでにそのIPアドレスは違うホストに割り当てられているかもしれない
これではDNSそのものが機能しないことになる
となると、サーバを公開する場合には固定IPアドレスが必須になるということになる
もちろん、オプションで固定IPアドレスを割り当てるサービスを行っているプロバイダもいくつかあるが、オプション料金が高額で気軽に使えるものではない
しかし、これはDNSを使う場合の話で、DNSを使わず直接IPアドレスでホストに接続するのであれば現在のグローバルIPアドレスさえわかっていればいいわけだ
とはいえ、IPアドレスはいつ変わるかわからないし、接続しようとしている相手に現在のIPアドレスを伝えるのもやっかいだ
やはりドメイン名による接続ができないと不便ということになる
しかし、そうした動的IPアドレスユーザーのために、ダイナミックDNSというサービスが登場した
通常のDNSがIPアドレスを固定的に扱うのに対し、ダイナミックDNSは動的にIPアドレスを扱う
いわば、IPアドレスがコロコロ変わることを前提に作られたDNSだといえる
#-----------------------------
# ダイナミックDNSの仕組み
#-----------------------------
ダイナミックDNSは、ドメイン名とIPアドレスの対応データベースを動的に書き換えられるように作られているシステムだ
つまり、動的IPアドレスしか持たないホストに対し、ドメイン名でアクセスできるようにするためのサービスだと考えればよい
動的IPアドレスしか持たないホストは、ダイナミックDNSサーバに対して現在のIPアドレスを通知する
ダイナミックDNSサーバは、ドメイン名での名前の問い合わせに対してこのIPアドレスを回答することになる
これによって、インターネット上のホストはドメイン名から目的のホストのIPアドレスに到達できるのだ
インターネット上のホストからしてみるとドメイン名で接続できるため、接続先が動的IPアドレスであるかどうかといったことや、ダイナミックDNSサービスによって名前の解決が行われているかどうかなどを気にする必要もない
ただし、DNSは名前の解決が頻繁に発生しないように名前の解決結果を一定時間キャッシュする
つまり、正しいホストのIPアドレスが伝搬されるまでにタイムラグがあるわけだ
このため、ホストのIPアドレスが変更された場合には、一定期間(おおむね数分から数十分)は接続できない可能性もあることに注意しなければならない
なお、ダイナミックDNSサーバは正引きに対する問い合わせに対して対応するIPアドレスを回答するが、IPアドレスからドメイン名への変換といった逆引きに関しては、接続しているプロバイダのDNSサーバが回答する
このため、正引きと逆引きの結果が一致しないという問題がある とはいえ、通常の用途には問題はないだろう
#-----------------------------
# ダイナミックDNSサービスの種類
#-----------------------------
ダイナミックDNSは、インターネットサービスプロバイダが提供している場合や、ダイナミックDNSとして有償で提供している企業、無償サービスやボランティアベースで提供しているサイトなどがある
それぞれのダイナミックDNSによって提供している機能が若干異なるので、自分に合ったサービスを選択するといいだろう
たとえば、多くのダイナミックDNSサービスはドメイン名が決められており、自分のホストはそのサブドメインとして運用するが、一部のダイナミックDNSサービスでは独自ドメインによる運用が可能なものもある
また、バーチャルドメインや回線切断時にはほかのURLへ転送するオフライン機能、メールの代理受け取りが可能なサービスも存在する
なお、IPアドレスを通知する方法はダイナミックDNSサービスによってまちまちだ
ほとんどのサービスでは手作業によるWebサイトへの登録のほかに、専用のツールで自動化することもできる
無料のダイナミックDNSサービス(日本)
家サーバー・プロジェクト
私的DNS(MyDNS.JP)
DDNS(ダイナミックドメインネームシステム)
Dynamic DO!.jp
マイドメイン
J-SPEED
無料のツール
DiCE for Windows
このエントリーのトラックバックURL: http://sieg.xeong.com/mt-tb.cgi/12
このエントリーを含むはてなブックマーク![]()
サイン・インを確認しました、 さん。コメントしてください。 (サイン・アウト)
(いままで、ここでコメントしたとがないときは、コメントを表示する前にこのウェブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)