コース一覧
ネットワーク基礎:TCP/IP・HTTP・DNS・CDN
プロキシとリバースプロキシ

ネットワーク基礎: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

プロキシとリバースプロキシ

同じ「プロキシ」という言葉で、話が噛み合わない

プロキシを入れよう、という会話が噛み合わないことがあります。片方は社員の通信を管理する装置を、もう片方はサーバーの前に置く装置を思い浮かべているからです。どちらも通信を中継する点は同じですが、立っている場所が正反対です。

クライアントの代理か、サーバーの代理か

利用者の側に立つほうを、フォワードプロキシと呼びます。

プレーンテキスト

利用者 → フォワードプロキシ → インターネット

出ていく通信をここに集めると、行き先を制限したり、誰がいつどこを見たかを記録したりできます。会社や学校で特定のサイトが開けないのは、たいていこれです。出す側から見れば、自分の代わりに外へ行ってくれる係です。

サーバーの側に立つほうを、リバースプロキシと呼びます。

プレーンテキスト

インターネット → リバースプロキシ → 裏のサーバー群

外から見ると、こちらがサーバー本体に見えます。裏に何台いるか、どんな構成かは外に出ません。前回のロードバランサも、実体はこの形の一種です。

守りたい側が逆になっているだけ、と覚えると混乱しません。

1 台しかなくても、前に 1 枚置いておく

サーバーが 1 台しかない構成でも、前にリバースプロキシを置くのが定番です。無駄に見えますが、後から欲しくなるものがだいたいここに乗るからです。

証明書の扱いをここにまとめれば、アプリは平文の HTTP だけ考えればよくなります。アクセスの記録も、画像や CSS を返す仕事も、アプリの手前で終わらせられます。台数を増やしたくなったときも、振り分け先を書き足すだけで済みます。

逆に、アプリに直接 443 番を向けてしまうと、これらを足すたびに構成そのものを組み替えることになります。最初の 1 枚は、拡張のための入口を確保しておく作業です。

置いた瞬間に 1 つ壊れるものがあります。送信元の IP アドレスです。中継しているのはプロキシなので、アプリから見える接続元は全部プロキシになります。アクセス制限も、回数制限も、記録も、全員が同じ相手に見えて機能しません。

対策は決まっていて、プロキシが元の IP をヘッダーに書き足し、アプリはそちらを読みます。ただしヘッダーは送る側が自由に書けるので、外から来た値をそのまま信じてはいけません。自分のプロキシが付けた分だけを採用する、という設定が要ります。ここを省くと、制限を外したい人が好きな IP を名乗れます。

中継はできても、中身は読めない

フォワードプロキシで HTTPS を扱うときは、制約があります。中継はできても、中身は暗号化されていて読めません。

このときプロキシは、CONNECT という専用の依頼を受け取り、指定された相手との間に単なる通り道を用意します。プロキシに見えるのは接続先のホスト名くらいで、どのページを見たかまでは分かりません。

中身まで検査したいなら、プロキシがいったん暗号を解いて読み、もう一度暗号化して送り直すしかありません。そのためには、プロキシが発行した証明書を全端末に信頼させる必要があります。技術的には可能ですが、端末を管理下に置けることが前提になるので、社内の端末以外には持ち込めません。

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

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

  • サーバークライアント(ブラウザなど)がリクエストを送り、サーバーがレスポンスを返す。
  • HTTPWeb の通信プロトコル、HTTPS は TLS で暗号化したもの
  • CSSCascading Style Sheetsの略。
生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2026/05/27·更新 2026/08/26

関連レッスン

  • WebSocket とリアルタイム通信

    双方向通信を実現する WebSocket の仕組みを理解します。

  • gRPC と HTTP/2 利用

    Protocol Buffers と HTTP/2 を使う gRPC の特徴を学びます。

  • ロードバランサ (L4 / L7)

    L4 と L7 ロードバランサの違いと使い分けを理解します。

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

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

復習ミニクイズ

リバースプロキシの特徴として正しいものはどれですか