サーバーやネットワークについて勉強したことをまとめます。
1.サーバーとは何か
2.サーバーの種類
3.パーミッションについて
4.RAIDについて
5.TCP/IPについて
長くなるので、投稿を分けます。
この記事では、5.TCP/IPについてを記載していきます。
TCP/IPとは
インターネットで標準的に利用されるプロトコル(通信方式)のことをいいます。
インターネットは、ネットワーク同士が相互に結びつきあうことで成立する世界最大・唯一のネットワークです。
全世界が同じプロトコルに統一し、ネットワーク内の機器同士が通信することで、初めてこれが実現しています。これは、IETFやIEEE、W3Cなどの国際的な標準団体によって定められています。
インターネットがない時代のコンピュータネットワークでは、OSメーカーなどが独自に決定していたため、同じLANに接続しても異なるOS間では通信ができなかったり、ネットワークが独立していたため、それぞれの会員同士しか通信できませんでした。
プロトコルを統一することで、現在は、異なるOSや異なるプロバイダー間での通信が可能となりました。
ネットワークの階層とプロトコル
ネットワーク内では様々なプロトコルや機器が働いていますが、それらの役割を明確にするために、階層モデルが定められています。
Webページを見る際のプロトコルは次のようになります。
ネットワークの階層(プロトコル) | 階層の説明 | プロトコルの説明 |
---|---|---|
アプリケーション層(HTTP) | WebやWebメールなどのサービスを提供する | Webページを見るためのプロトコル |
トランスポート層(TCP) | アプリケーション層とインターネットを仲介すし、データを正しく届けるための手配をする | データを確実に届けるためのプロトコル |
インターネット層(IP) | IPアドレスを手掛かりに、遠隔地にあるPCにもデータを届けられるようにする | 一般的な通信に使うプロトコル |
ネットワークインターネット層(イーサネット) | ネットワークカードなどの通信用のハードウェアを制御し、実際にデータを伝送する。 | 有線LANでデータを送るためのプロトコル |
アプリケーション層はサービスを提供し、その他3つの層はデータを届ける通信機能を担当します。
プロトコル群のなかにもTCP/IPがありますが、一般的にはインターネットで使用するプロトコル一式のことをTCP/IPといいます。
(プロトコル群であることを強調する場合、TCP/IPプロトコルスイートと呼ばれます。
ネットワークでの通信
①LANケーブルでPCやサーバースイッチと繋げることで、物理的に同じネットワーク同士で接続する。
②別のネットワークに接続するには、スイッチの先にルーターを設置する。(DNSサーバーで名前解決し、通信する)
③TCP/IPによりネットワーク間の住所を定め、データをやり取りする。(DHCPサーバーで割り振られる)
IPアドレスとは
ネットワーク間の住所のようなもので、ネットワーク内の全ての機器には、DHCPサーバーによりIPアドレスが割り振られています。
IPアドレスを手掛かりにデータのやり取りをしています。
ネットワーク部とホスト部に分かれています。
-
ネットワーク部...複数あるネットワークの中で、目的のホストがどのネットワークに属しているのか特定する。(学校で例えれば2年1組といったクラス)
-
ホスト部...ネットワーク内で重複しないように割り当てられているアドレス。(学校で例えれば、出席番号)
IPアドレスの確認方法
ここでは、ターミナルソフトで確認する方法について記載します。
ifconfigかip addrで確認できます。
※現在のLinux環境では、ipコマンドが推奨されています。
画像内の四角で囲ってある部分は、
黄...インターフェイス名
赤...IPアドレス
緑...サブネットマスク
を表しています。
サブネットマスクは、IPアドレスのどこまでがネットワークアドレスで、どこまでがホストアドレスか示すものです。
「255」になっている部分がネットワークアドレス、「0」となっている部分がホストアドレスとなります。
ip addrでは、サブネットマスクがなく、IPアドレスの後ろに/8のような記載が追加されていますが、その「/8」の部分がネットワークアドレスの長さ(ビット数)を表しています。
ポート
IPアドレスは、「コンピュータ」は特定できますが、そのコンピュータが、Webページを見たいのか、メールを送信したいかなど、どの「アプリケーション」かまでは判断できません。
アプリケーションを判断するために、サーバーは「ポート」という出入口を用意しています。
各プロトコルにはそれぞれ、ポート番号が定められており、それにより適切な処理が行われます。
例えば、HTTPは80番、HTTPを暗号化したHTTPSは443番、FTPは21番といったようにです。
ポートの確認方法
どのファイルがそのポート番号を使用しているかを調べるためには、ポート番号と同列の一番右のPIDを確認し、
tasklist / svc / fi "PID eq PID番号"
を入力します。

xampp等でポート番号が重複してエラーが出たときに、ファイルを特定するのに使用できます。
参考資料
・「いちばんやさしいLinuxコマンド入門教室」著:中島能和 株式会社ソーテック社 2018年
・「スラスラわかるネットワーク&TCP/IPのきほん 第2版」著:リブロワークス SBクリエイティブ株式会社出版 2018年
・http://www.atmarkit.co.jp/ait/articles/0207/20/news003.html
・http://www.atmarkit.co.jp/ait/articles/0207/20/news003_2.html