インターネットとWeb
最終更新日: 2019年 04月07日
ここまでコンピュータの仕組みやファイル管理について説明してきましたが、ここではインターネットやWebなど一台のコンピュータの外側の話をしていきます。
Webエンジニアが開発するWebアプリケーションは当たり前ですが、このWebという世界規模のネットワークシステムを前提に つくられるのでそもそもインターネットってどういうもの?というところの知識やネットワークの知識は必ず必要になってきます。
インターネットとは?
インターネットとは、家や会社などのコンピュータをまとめたネットワークが外のネットワークと繋がることができるようにしたものです。 学校、家、職場などでコンピュータをネットワークに接続するときにネットワークのケーブルに接続したり、WiFiに繋いだりすると思うのですが、
ここでのネットワークは家なら家限定、会社なら会社限定のネットワークに接続をしています。このローカルなネットワークを外と繋げる仕組みが ネットワークで多くの場合ルータと呼ばれるネットワーク機器やISP(インターネットサービスプロバイダ)と呼ばれる通信事業者のサービスを介して 外のネットワークに接続します。
インターネット上ではIPアドレスというコンピュータを識別するためのアドレスが振られており、これを用いて他のコンピュータと接続します。
インターネットのイメージ
Webとは?
Webとはインターネットとほぼ同義語で使われていることも多いのですが、厳密にはWorld Wide Web(ワールドワイドウェブ)というインターネット上に 構築されたシステムの名称です。ネットサーフィンしているとwwwという言葉をみかけることもあるかと思うのですが、これがワールドワイドウェブのことをさしています。
Webでは主にHTMLというファイルをネットワーク上でやりとりをしています。みなさんが見ているWebページは実はHTMLを解釈したGoogle Chromeなどのブラウザが 人間が見やすいように表示してくれているもので、つまり言い換えると皆さんは日常的にHTMLのドキュメントを見ているということになります。
また多くのWebサイトにはリンクが存在すると思いますが、WebはURLというWeb上の文書の所在地を表す文字列でWeb上のドキュメントを繋げることができます。 このようなそれぞれのサイトからサイトへのリンクが存在するような状況を蜘蛛の巣状に見立てて世界規模の蜘蛛の巣を意味するワールドワイドウェブという名前がつけられています。
WANとLAN
さきほどインターネットの説明で会社、家、カフェなどのネットワークと外側のネットワークを繋ぐという説明をしましたが、 会社、家、カフェなどのグループ単位でのネットワークのことをLAN(ローカルエリアネットワーク)と言い、外側のネットワークのことをWAN(ワイドエリアネットワーク)と言います。
これを踏まえるとインターネットはWANの一種と考えることができ、引っ越しなどで新たに家の回線を繋げるときには、LANに接続している自分のコンピュータや スマートフォンをWANに接続する設定を行なっています。
プログラミングをしていると自分のパソコン上に仮想サーバを立てたり、AWSやGCPなどのクラウド上にあるサーバに接続したりということが頻繁にあるので ネットワークの全体像をイメージできるということは必須になってきます。今の段階ではWANとLANの区別ができるようになっておきましょう。
WANとLAN
ドメインとDNS
インターネットを使う上でドメインという言葉もよく聞くとは思うのですが、ドメインは人間では覚えづらかったりするIPアドレスを紐づけて意味のわかる文字列に変換する仕組みです。
みなさんがよく使うgoogle検索のURLはwww.google.comというドメインですが、このドメインもある一つのIPアドレス(216.58.197.196など)に紐づいています。
このドメイン名とIPアドレスのセットを管理する仕組みをDNSと言い、ドメイン名が与えられたときにそれに紐づくIPアドレスを引き出すサーバをDNSサーバと言います。 DNSというとITおきまりの英語3文字ですが、正式な名前はドメインネームサービスという名前なのであまり構えずに素直に覚えられるかと思います。
DNSサーバにはドメイン名を問い合わせるとIPアドレスを返してくれるので、みなさんがあるサイトを訪れた場合には必ずこの名前解決を行なっていることになります。
まとめ
- 家や会社などのコンピュータをまとめたネットワークが外のネットワークと繋がることができるようにしたものがインターネット
- World Wide Webというインターネット上に構築された蜘蛛の巣上のネットワークがWeb
- 家の中などのネットワークをLAN、ISPを経由した外側のネットワークをWANと言う
- IPアドレスと一対一で対応する理解しやすい文字列がドメイン(www.google.com など)
- ドメイン名から対応するIPアドレスを引き当てることを名前解決と言う
普段何気なく使うインターネットですが、プログラミングをやるにはそれよりさらにもう一歩理解を深める必要があります。
プログラミングの最初につきものの環境構築ですが、このときにドメインの知識とWANとLANの違いというのを知っているかどうかというのも重要なポイントになるので、 それぞれの概念の違いについては意識して覚えるようにしましょう。