コース一覧
ネットワーク基礎:TCP/IP・HTTP・DNS・CDN
HTTP の基本

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

ブラウザからサーバーまでデータが届く仕組みを、OSI・TCP/IP、IPとルーティング、TCP/UDP、HTTP/HTTPS、DNS、CDNから体系的に学びます。通信障害や構成選択をプロトコルから考えられるようになります。

1
ネットワークの全体像
0. ネットワークとは8分
1. OSI 7階層モデル10分
2. TCP/IP 4階層モデル9分
3. パケットとフレーム9分
4. ルーター・スイッチ・ハブ9分
2
IP とルーティング
0. IPアドレス (IPv4 / IPv6)10分
1. サブネットマスクと CIDR11分
2. NAT とプライベートIP9分
3. ルーティングと経路選択10分
4. ファイアウォール基礎9分
3
TCP / UDP
0. TCP と UDP の違い9分
1. 3-way ハンドシェイク9分
2. 輻輳制御と再送10分
3. UDP の用途 (DNS / 動画 / ゲーム)8分
4. ポート番号と well-known port9分
4
HTTP / HTTPS
0. HTTP の基本10分
1. HTTP メソッド9分
2. HTTPS と TLS ハンドシェイク10分
3. HTTP/2 と HTTP/3 (QUIC)10分
4. REST API の設計原則10分
5
DNS とドメイン
0. DNS とは8分
1. レコードタイプ10分
2. 名前解決の流れ10分
3. DNS キャッシュと TTL9分
4. CDN の仕組みと Anycast10分
6
応用
0. ロードバランサ (L4 / L7)10分
1. プロキシとリバースプロキシ9分
2. WebSocket とリアルタイム通信9分
3. gRPC と HTTP/2 利用10分

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

01ネットワークとは
02OSI 7階層モデル
03TCP/IP 4階層モデル
04パケットとフレーム
05ルーター・スイッチ・ハブ
06IPアドレス (IPv4 / IPv6)
07サブネットマスクと CIDR
08NAT とプライベートIP
09ルーティングと経路選択
10ファイアウォール基礎
11TCP と UDP の違い
123-way ハンドシェイク
13輻輳制御と再送
14UDP の用途 (DNS / 動画 / ゲーム)
15ポート番号と well-known port
16HTTP の基本
17HTTP メソッド
18HTTPS と TLS ハンドシェイク
19HTTP/2 と HTTP/3 (QUIC)
20REST API の設計原則
21DNS とは
22レコードタイプ
23名前解決の流れ
24DNS キャッシュと TTL
25CDN の仕組みと Anycast
26ロードバランサ (L4 / L7)
27プロキシとリバースプロキシ
28WebSocket とリアルタイム通信
29gRPC と HTTP/2 利用

ネットワーク基礎:TCP/IP・HTTP・DNS・CDN

HTTP の基本

HTTPリクエストの旅

「画面が真っ白です」と言われて、どこから見るか

不具合の報告が来たとき、最初に知りたいのは「ブラウザが何を送って、サーバーが何を返したか」です。ここが読めないと、直すのが自分なのか相手なのかも決められません。ブラウザとサーバーの間を流れているのは、実はただのテキストです。

送るほうは 1 行目で用件が決まる

ブラウザが送るリクエストは、用件を書いた 1 行目、付帯情報を並べたヘッダー、そして本文の 3 つでできています。

プレーンテキスト

GET /articles/network HTTP/1.1
Host: example.com
Accept: text/html

1 行目の GET /articles/network が「この住所のものをください」という用件です。ヘッダーはそこに付ける但し書きで、Host はどのドメイン宛てかを示します。ページを取りに行くだけなら本文は空のままです。

返すほうも 1 行目で結果が決まる

サーバーの返事も同じ形です。1 行目に結果、続いてヘッダー、そして本文が入ります。

プレーンテキスト

HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8

<!DOCTYPE html>
<html>...</html>

200 が結果を表す 3 桁の数字です。この数字は暗記するものではなく、桁で読みます。200 番台は成功、300 番台は場所が移ったという知らせ、400 番台は依頼した側の間違い、500 番台は受けた側の故障です。

つまり 404 が返っているなら、押しているリンクや叩いている URL のほうを疑います。500 が返っているなら、こちらの送り方は届いていて、サーバーの中で処理が転んでいます。1 桁目を見るだけで、調べる場所が半分に絞れます。

この 2 つのかたまりは、ブラウザの開発者ツールの Network パネルでそのまま読めます。手元から直接見たいときは、レスポンスのヘッダーまで表示する指定を付けて取得します。

プレーンテキスト

$ curl -i https://example.com

不具合の報告を受けたら、まずここを見ます。何を送って何が返ったかが分かれば、話は「誰の担当か」から「どこを直すか」に変わります。

サーバーは前回の話を覚えていない

HTTP はリクエストを 1 つずつ独立に扱います。さっきログインした人からの 2 回目でも、サーバーは何も覚えていません。

覚えていないのに、ログイン状態が続くのはなぜか。クライアント側に保存した Cookie やトークンを、毎回のリクエストにくっつけて送り直しているからです。状態はサーバーではなく、送られてくる紙のほうに書いてあります。

裏を返すと、そこに入れたものは全部、画像 1 枚を取るリクエストにまで付いてきます。Cookie を安易に増やすと、以降のすべての通信が少しずつ重くなります。

解説

現場の話

覚えないのは不便に見えて、実は台数を増やせる理由になっています。どのサーバーが受け取っても判断材料が全部リクエストに入っているので、前段で好きに振り分けられます。アクセスが増えたらサーバーを足すだけで捌ける設計は、この性質の上に成り立っています。

このレッスンに出てくる用語

意味があいまいなまま進んだ語は、ここから読み直せます。

  • ブラウザユーザーから見たWebのクライアント
  • サーバークライアント(ブラウザなど)がリクエストを送り、サーバーがレスポンスを返す。
  • リクエストWeb 通信の基本単位、ブラウザの問い合わせとサーバーの返答
  • ドメインサイト名(example.com)
  • URLページの住所全体
  • 処理計算や代入を表す長方形
  • HTTPWeb の通信プロトコル、HTTPS は TLS で暗号化したもの
  • Cookieブラウザ側に小さなデータを保存させる仕組み
生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/05/27·更新 2026/08/26

関連レッスン

  • HTTP メソッド

    GET / POST / PUT / DELETE などのメソッドの意味と冪等性を学びます。

  • HTTPS と TLS ハンドシェイク

    暗号化通信 HTTPS と、TLS で鍵を共有する流れを理解します。

  • HTTP/2 と HTTP/3 (QUIC)

    HTTP/1.1 の課題と、HTTP/2・HTTP/3 がどのように改善したかを学びます。

  • REST API の設計原則

    リソース指向、ステートレス、URL 設計など REST の基本を理解します。

分からないところは Tap (AI先生) に質問できます

24 時間いつでも、あなたのレベルに合わせて日本語で答えます。

復習ミニクイズ

HTTP ステータスコード 403 の意味として正しいものはどれですか