今回は皆さんが見ているwebサイトまでどのような経路を辿っているか解説していきます。
まず、大まかな道のりを説明していきます。
最初に情報機器(PCなど)からDNSサーバにhttps://wwww.google.comのIPアドレスをもらいます。
つぎにリピータハブ、スイッチングハブ、ルータをとおり、Webサイトのあるサーバに情報をくださいという通知をします。
すると、Webサーバから情報が帰ってきて、サイトを開くことができます。
WebサイトのIPアドレス
まず、スマホやパソコンなどの情報機器内でwebサイトへの問い合わせメッセージを送信します。
しかし、webサーバにネットワークを通じて接続するにはIPアドレスといわれるサーバの住所が必要となります。
しかし、webサイトがあるサーバのIPアドレスは情報機器の中には入っていません。
そのため、webサーバへのアドレス情報を持っているDNSサーバーというところに問い合わせます。
DNSサーバーへの問い合わせはコネクションレスであるUDPを用います。
DNSサーバー一つでは世界のすべてのアドレスを管理することはできません。
そのため、複数のDNSサーバに分けて管理します。
https://www.google.comというwebにアクセスすることを考えます。
ここで、URLを分解するとhttps、www、google、comというアドレスに分けることができます。
ここで、httpsはどのプロトコルを使っているか、wwwはどんな名前のサーバか、googleはどのサイトか、comはどの国別ドメインかを表しています。
DNSサーバに問い合わせるときはどのサーバー希望するアドレスが記録されているかわかりません。
そのため下の図のように見つけていきます。
URLでは目には見えないよに隠れていますが、https://www.google.com.という風に最後に.が隠れています。これをルートドメインといいます。
ルートドメインは13個しかなくそこからさまざまなDNSサーバへと分かれています。
では、希望するDNSサーバへの道のりを説明していきます。
まず、ルートドメインサーバに問い合わせます。(①)
すると、ルートドメインサーバはURLからcomにあることからcomサーバのIPアドレスをPCに通知します。(②)
次に、comサーバに問い合わせます。(③)
すると、googleの情報を持っているgoogleサーバへのIPアドレスをPCに通知します。(④)
このように、上から順番に問い合わせることで最終的にwww.google.com.の情報を持っているDNSサーバから希望するwebサイトへのIPアドレスを得ることができます。
Webサーバまでの経路
WebサーバのIPアドレスがわかるとそのWebサーバに向けて通知します。
まず、リピータハブですべてのスイッチングハブに通知します。
そして、MACアドレスを用いてスイッチングハブが自分宛てのものかどうか判断します。
自分宛てのものでなければその場で捨てます。
自分のMACアドレス宛てのものであればルータへ転送します。
ルータでIPアドレスが一致するWebサーバの情報を持つルータへと転送します。
そしてルータからWebサーバに情報機器が必要としている情報を送り返します。
送り返すときは同様の経路を辿り情報をおくります。
以上のようにWebサイトにアクセスするには様々な経路を辿っています。
これを1秒もかからない内に済ませてしまいます。
これまでの経路を下図を用いてみていきます。
まず、PC AからIPアドレスをもらいます。
そして、リピータハブ、スイッチA、ルータ A、ルータ B、ルータ C、Webサーバの経路を辿ります。
帰りは送った情報にPC AのIPアドレスがあるためそれを使いPC Aに情報を返します。
これでWebサイトまでの道のりは終了です。
今回の説明ではキャッシュサーバやファイヤーウォールなどの説明を省きましたが、実際はWebサイトまでの道のりはとても複雑です。
興味があれば調べてみてください。
コメント