この章で学ぶこと
ネットワークは、世界中のコンピューターを巨大な郵便システムに見立てた仕組みです。手紙(データ)を、住所(IP アドレス)に向けて配達する。基本はそれだけです。
ただし扱う量がとても多いので、住所の付け方、配達ルートの決め方、同時に大量に届いたときの捌き方、途中で盗み見しない仕組み ── すべてに細かいルールがあります。そのルールを プロトコル と呼びます。
7 層モデル ── 仕事を切り分けるモノサシ
実機がそのままこの形をしているわけではない。けれど「これは何層の話か」がわかると、霧が晴れる。
ネットワークの仕事を、上から順に 7 段階 に切り分けた考え方。1980 年代に ISO が「世界中の機器がバラバラに作られても通信できるように」と定めた、いわば 理想形。
| 層 | 名前 | 役割 | 代表例 |
|---|---|---|---|
| 7 | アプリケーション層 | アプリの会話 | HTTP SMTP DNS |
| 6 | プレゼンテーション層 | 暗号化・文字コード変換 | TLS JPEG ASCII |
| 5 | セッション層 | 会話の開始・終了管理 | SSH RPC |
| 4 | トランスポート層 | 確実に・順序通りに届ける | TCP UDP QUIC |
| 3 | ネットワーク層 | 住所(IP)で経路を決める | IP ICMP IPsec |
| 2 | データリンク層 | 隣の機器との 1 区間配送 | Ethernet Wi-Fi MAC |
| 1 | 物理層 | 電気信号・光・電波 | ケーブル / 光ファイバ / 電波 |
実機は 4 層 で動く
OSI は理想、TCP/IP は現実。実際のインターネットはこの 4 層で組み立てられている。
| 層 | 名前 | OSI 対応 | 代表プロトコル |
|---|---|---|---|
| 4 | アプリケーション | 5〜7 層 | HTTP HTTPS DNS SMTP SSH |
| 3 | トランスポート | 4 層 | TCP UDP QUIC |
| 2 | インターネット | 3 層 | IP ICMP |
| 1 | ネットワークインタフェース | 1〜2 層 | Ethernet Wi-Fi |
試験対策では OSI 7 層、現場では TCP/IP 4 層。両方とも頭に入れておくと、本を読むときも障害対応のときも迷子にならない。
IP アドレス ── インターネットの 住所
インターネット上のあらゆる機器には IP アドレス という住所が割り当てられている。IPv4 なら 4 つの数字(例:192.168.1.1)、IPv6 なら 8 つの 16 進数(例:2001:db8::1)。
32 ビット / 約 43 億個
2011 年に在庫が枯渇。今は IPv6 と NAT という変換装置で延命中。192.168.x.x や 10.x.x.x は家・社内用のプライベート枠。
128 ビット / 約 340 澗個
地球上の砂粒一粒ずつに割り当てても余る数。本来はこちらに移行する予定だったが、IPv4 の延命が予想以上にうまくいって 30 年経ってもまだ混在中。
192.168.x.x など)と、外向けの住所(グローバル IP)に分かれる。家のルーターが NAT(Network Address Translation) で変換して、家中の全機器がたった 1 つのグローバル IP で外と通信できる仕組み。だから世界の IPv4 はまだ枯渇しきっていない。
サブネット ── 住所を「町」「丁目」に分ける
192.168.1.0/24 という表記の /24 が サブネットマスク。32 ビット中、上位 24 ビットが 町(ネットワーク部)、残り 8 ビットが 丁目・番地(ホスト部)を表す。
/24 = 256 個(実用 254)入る小さな町。
/16 = 65,536 個入る大きな町。
/30 = 4 個(実用 2 個)の超ミニ町(ルーター間直結用)。
ルーティング ── 道を選ぶ 仕事
パケットが目的地に届くまで、複数のルーター(道の分岐点)を経由する。各ルーターは ルーティングテーブル(「この宛先ならこっち」表)を持っていて、毎パケットごとに次に渡す相手を決める。
OSPF / IS-IS / EIGRP
企業内・キャンパス内の最適経路を計算するためのプロトコル。リンク状態を全員で共有し、ダイクストラ法で最短経路を算出する。
BGP
インターネット全体の経路を決める王様。AS(自律システム)番号を持つネットワーク同士が経路情報を交換し合って、世界中の道を共有する。
TCP と UDP ── 確実か、速いか
| TCP | UDP | |
|---|---|---|
| 性格 | 真面目で確実 | 軽快で気楽 |
| 順序保証 | あり | なし |
| 再送 | あり(届かなければ何度でも) | なし(届かなければ捨てる) |
| 速さ | ハンドシェイクあり(やや遅) | 即送れる(速い) |
| 用途 | HTTP / メール / SSH / ファイル転送 | DNS / 動画ストリーミング / オンラインゲーム / VoIP |
ポート番号 ── 部屋番号
IP アドレスが「ビルの住所」なら、ポート番号は「部屋番号」。1 台の機器でも、Web サーバ・メール・SSH を別ポートで同時に動かせる。
| ポート | サービス | 性格 |
|---|---|---|
22 | SSH | 暗号化されたリモートシェル |
25 | SMTP | メール送信(サーバ間) |
53 | DNS | 名前 → IP の問い合わせ |
80 | HTTP | Web(平文) |
443 | HTTPS | Web(TLS 暗号化) |
3306 | MySQL | RDB |
5432 | PostgreSQL | RDB |
6379 | Redis | KVS |
27017 | MongoDB | ドキュメント DB |
0〜1023 は well-known port(標準予約、root 権限が必要)、1024〜49151 はアプリ用、49152〜65535 は一時利用(クライアント側のランダム発番)。
この章で覚えた 5 行
ネットワーク = 箱 + 道
郵便システムの言い換え。手紙の中身がデータ、住所が IP、道がケーブル。
OSI 7 / TCP-IP 4
OSI は理想のモノサシ、TCP/IP は実機。どっちも「何層の話か」を整理する道具。
住所 → 町 → 部屋
IP は住所、サブネットは町割り、ポートは部屋番号。3 つで一意に届く。
道はルーターが選ぶ
組織内は OSPF、世界は BGP。BGP が止まれば、本当に世界が止まる。
TCP は真面目、UDP は気楽
用途で使い分ける。Web は TCP、ゲームと音声は UDP。