気合でなんとか

@ningensei848が頑張った記録

チームラボのオンラインスキルアップ課題 をやろう その1

 

 

前回までのあらすじ

ningensei848.hatenablog.com

 

 

今回やること

  1. インターネットの仕組みとは
  2. HTTPの仕組みとは
  3. webサーバを立てる準備

※これだけやれると第一目標「掲示板をつくる」の達成度が20%くらいになるはず

 

インターネットの仕組みとは

インターネットとは、家庭内LANや企業内LAN、携帯電話網などのネットワーク同士を繋ぐ、世界規模の通信網のことです。

インターネットに接続するにはルータなどの機器を使用します。

インターネットに接続する機器にはIPアドレスと呼ばれる固有番号(176.32.93.81 など)が割り当てられており、通信の際にはIPアドレスを用いて接続先を指定することになっています。

 

しかし、IPアドレスは数値列であり人間には分かり辛いため、一般には英数字列で名前(ドメイン名と呼ばれる www.team-lab.com など)を付け、IPアドレスドメイン名を関連付けることによって、IPアドレスの代わりにドメイン名で接続することができるようになっています。

インターネットにおいて、リクエストを送信する側をクライアント、それを受けてレスポンスを返す側をサーバと呼びます。
クライアントとサーバはプロトコル(通信規約)に従い通信を行います。

 

一般に1つのIPアドレス上で複数の種類のサーバが動いてることが多く、通信の際にこれらを区別するためにポート番号という0から65535までの数値が用いられます。

 

キーワード:ルータ, IPアドレス, ドメイン, DNS, クライアント&サーバ, ポート番号

 

"ルータとはコンピュータネットワークにおいて、データを2つ以上の異なるネットワーク間に中継する通信機器である。通信プロトコルTCP/IPが使われるようになってから普及した。データをネットワーク層で、どのルートを通して転送すべきかを判断するルート選択機能を持つ。通常はOSI基本参照モデルでの第1層(物理層)から第3層(ネットワーク層)までの接続を担う。一般的に用いられるルーターは、基本機能として各ネットワーク間でのIPパケット(第3層)をやり取りできるようにする装置である。"

"IPアドレスとは、IP(Internet Protocol)でネットワーク上の機器を識別するために指定するネットワーク層における識別用の番号である。IPにおいてパケットを送受信する機器を判別する。データリンク層MACアドレス物理アドレスということに対応して、論理アドレスとも呼ばれる。MAC = Media Access Controlの意味"

"ドメイン名とは、IPネットワークにおいて個々のコンピュータを識別する名称の一部。インターネット上においてはICANNによる一元管理となっており、世界中で絶対に重複しないようになっている。通常、IPアドレスとセットでコンピュータネットワーク上に登録される。多くの場合、ドメイン名はその下位に1つまたは複数のホスト名を連ね、またドメイン名それ自身もホスト名である。DNS = Domain Name Systemにより、ドメイン名を含むホスト名とIPアドレスとの変換が実行されている。"

"クライアントサーバモデルとは、表示能力と処理能力の高いコンピュータをたくさん配置することがコスト的に容易な時代になった結果、特定の役割を集中的に担当するコンピュータ(サーバ)と、利用者の操作するコンピュータ(クライアント)に役割を分けるモデルのことである。このモデルでは、クライアントがサーバに「要求」を送信し、サーバがそれに「応答」を返す形で処理が行われる。"

"ポートとは、OSがデータ通信を行うためのエンドポイントである。「ポート(port)」という言葉はハードウェア(入出力ポート)についても用いるが、ソフトウェアにおける「ポート」は、特定のプロセスやサービスの種類によって特定される論理的な構成概念である。ポートは常にホストのIPアドレスおよび通信プロトコルの種類と関係しており、この3つで通信セッションの送信元と宛先が決定する。ポートはIPアドレスプロトコルごとに16ビットの数値によって特定され、この数値のことをポート番号(port number)という。IPアドレスを建物の住所にたとえるなら、ポートは個別の部屋、ポート番号は部屋番号に相当する。"

 

 情報学徒なのでそれとなーく知っていたことばかりだが、結局いまだにあやふやなことばかりだったので、復習ができるいい機会であった。まぁこれがわかったからといって、ブリッジだのLANだのの敷設ができるかというとそうでもないが。電気工事士を持っている友人がいるが、彼のように貪欲に資格を取りに行くくらいでないと本当に身につくともいえないのかもしれない。とりあえずどんなものなのかリンクだけ貼っておくので気が向いたら見に行くつもりで。

試験案内一覧(第二種電気工事士試験) | ECEE 財団法人電気技術者試験センター

と、思ったけどこれ↓見ると取れそう~~ってなってしまうな……??

qiita.com

 

HTTPの仕組みとは

WebサーバはHTTPというプロトコルを用いてクライアントと通信します。HTTP通信は必ずクライアント側のリクエストから開始され、サーバはこれにレスポンスを返します。リクエストではメソッドと呼ばれるもので動作を指定します。メソッドには主に2種類あり、GETはデータの取得、POSTはデータの送信を表します。

  • リクエスト&レスポンスによって通信が成立する
  • 主に二種類のメソッドがある → GET(データ取得)& POST(データ送信)
  • クライアント「データよこせ」
    サーバ「まってね」
    サーバ「いいよ」
    クライアント「サンキュ」

実際の通信を見る
GoogleChromeには「要素を検証」という機能があり、Webページの情報や通信の様子を見ることができる。右クリック→「要素を検証」→「Network」タブで色々なWebページの通信の様子を見てみよう。

 

webサーバを立てる準備

いよいよWebサーバを実際に立ててみる(その準備?)

Webサーバには無料で利用できるApache HTTP ServerやMicrosoft製のIISをはじめとして様々な種類のものがあり、当然自作することもできます。今回は最も利用者数が多いApacheを使用します。XAMPPというApacheの他にも様々なものを含んだパッケージをインストールしましょう。

XAMPP(ザンプ)をインストールする。OSによって導入するものは異なるのでHPの表示に従う。私の場合はwindows10なので以下のリンクからインストールした。

※ver.はまぁ、新しい方がいいのではないだろうか?この辺は詳しくないので取り敢えず最新のものにしておいた。チェックボックスはすべてレ点に入れたまますべてまとめてインストさせてもらった。

www.apachefriends.org

インストールできたらコントロールパネルを起動してみる。

Apacheの行にある[Action]のうち、[START]をクリックすればローカルサーバが起動するらしい。通常ならいけないはずの http://localhost/ に跳べるようになっているはずだ。ここまで出来たら準備はおk!

 

次回へとつづく……

 

 

次からは、「HTML&CSSを書いてみよう」、開始。

 

次回

まだ