35. 2012年3月25日 11:06:49
: EVskgte9f6
前回は説明がごちゃっとなっていましたので、 改めて書き直します。・DNSについて インターネットはIPアドレスという番号を住所として使っています。このことはご存知かと思います。 IPアドレス(正確にはInternet Protocol version 4形式のアドレス)というのは4バイトの数値で、表記の仕方にもよりますが、およそ4桁〜12桁になります。これはなかなか覚えにくい。そこで、番号を名前(文字列)で代用するというアイデアが生まれました。これを DNS (Domain Name System) と呼びます。具体的には、DNSサーバーというものをインターネットのあちこちに置いて、そこに名前を問い合わせるとIPアドレスを教えてくれるようになっています。このように名前を「解決」するものなので、ネーム・リゾルバと呼ばれることもあります。 なお、当然ながらDNSサーバーだけは名前が使えません。そのため、あらゆるパソコンには、IPアドレスの形でDNSサーバーが指定されています。 ・・・ ・今回何が起こったか 今回の件で何が起こっていたかを説明します(想像を含みますが御容赦を)。 1)阿修羅掲示板にアクセスするために http://www.asyura2.com/ というURLをウェブブラウザに入力します。 2)ブラウザは(ソケットライブラリというプログラムを介して)DNSサーバーにwww.asyura2.comという名前の計算機のIPアドレスを尋ねます。今回の件では ns1.dnsservice.name, ns2.dnsservice.name という二台のDNSサーバーのどちらかに最終的に問い合わせています。 3)上記2台のサーバーの内、ns1.dnsservice.name は「名前解決を拒否(refuse)」、ns2.dnsservice.nameは「サーバーエラー(servfail)」と返答してきました。そのため www.asyura2.com をIPアドレスに変換できませんでした。 4)IPアドレスが分からなければ、通信相手の住所がわからないのと同じことですから、ブラウザは通信できずにエラーを表示して停止します。これが今回起こりました。 本来 DNSサーバーは(3)でIPアドレスを送り返してくるのですが、それが無かったと言うことです。 ここまで書きますと、なぜ、http://209.54.50.129/ でアクセスすれば阿修羅掲示板を閲覧できたかは、もうお解りかと思います。 "209.54.50.129" はIPアドレス(=通信相手の住所)そのものですから、ブラウザは、"www.asyura2.com"という名前を使ったときとは違い、DNSサーバで名前を解決する必要がありません。"209.54.50.129" と通信すればよいのです。 ただし、これで問題が全て解決したわけではありません。 例えば、http://209.54.50.129/ の中に(A)絶対アドレス指定で(B)名前を使った URL が含まれていると、ブラウザはその部分を読み込めません。例えばランキング部分です( http://www.asyura2.com/〜 となっているはずです )。そのため、多くの人がhttp://209.54.50.129/11/kanri20/index.html などの相対アドレスが主に使われているページを起点として阿修羅を閲覧していたのです。 長くなりましたが、参考になれば幸いです。
|