ITの教科書検索

第5章 アプリケーション層|5-4|コース全体 19本中19本目

入門読了 約10分更新日 2026-09-27

Webページが表示されるまでの流れ

URLを入力してからWebページが表示されるまでに、DNS・ARP・NAT・ルーティング・TCP・TLS・HTTPが働く順番を12段階で説明します。入門コースの内容のまとめです。

目次
  1. URLを入力してから表示されるまでに働く仕組み
  2. 宛先を決めるまで(URL・DNS)
  3. 送り出すまで(判定・ARP・カプセル化・NAT)
  4. つながるまで(TCP・TLS・HTTP)
  5. 表示するまで
  6. 全12段階の早見表
  7. 練習問題(総合・全5問)

URLを入力してから表示されるまでに働く仕組み

https://example.com/ のようなURLをブラウザに入力してからページが表示されるまでには、DNS・ARP・カプセル化・NAT・ルーティング・TCP・TLS・HTTPが決まった順番で働いています。

入門コースのまとめとして、これまでの18本の記事の内容が、どの段階でどう働いているかを確認します。各段階には、その仕組みを説明した記事へのリンクを置いています。

自分のPCから https://example.com/ を開く場面を例に、最初から最後まで順に説明します。PCのIPアドレスは 192.168.10.25/24 とします。

宛先を決めるまで

  1. 1

    URLをスキーム・ホスト名・パスに分解する第7層

    ブラウザは、まずURLを3つの部分に分けます。先頭の https はスキームで、使うプロトコルを表します。続く example.com はホスト名で、接続先のサーバの名前です。最後の / はパスで、サーバの中のどのページかを表します。

    URLやドメイン名は、第7層のアプリケーション層で使います。ただし、第7層に層としてのアドレス体系があるわけではありません。実際の宛先は、この後DNSでIPアドレスに変換されて初めて決まります。

  2. 2

    DNSでホスト名をIPアドレスに変える第7層

    ホスト名の example.com のままでは通信できないので、DNSでIPアドレスを調べます。

    PCがキャッシュDNSサーバに問い合わせると、キャッシュDNSサーバはルート・TLD・権威の順にDNSサーバをたどります。こうして返ってきたIPアドレスを、ここでは 203.0.113.50 とします。

実は、このDNSの問い合わせ自体も、これから説明する③〜⑧の手順(宛先判定・ゲートウェイ・ARP・カプセル化・NAT・ルーティング)を経て届いています。

DNSサーバへの通信も、HTTPサーバへの通信も、仕組みは同じです。分かりやすくするため、以下はDNSの名前解決が終わった後の話として説明します。

送り出すまで

宛先IPアドレスが分かると、PCはまず宛先が自分と同じネットワークか、外かを判定します。

  1. 3

    宛先が同一ネットワークか判定する第3層

    PCは、自分のIPアドレスとサブネットマスクから、ネットワークアドレスを求めます。宛先にも同じマスクをかけて、2つのネットワークアドレスを比べます。

    192.168.10.25/24 と 203.0.113.50 では、ネットワークアドレスが一致しないので、宛先は外です。

  2. 4

    デフォルトゲートウェイに任せる第3層

    外向けの通信は、PCが自分で届けることはできないので、デフォルトゲートウェイに中継を任せます。この例では、デフォルトゲートウェイのIPアドレスは 192.168.10.1 です。

  3. 5

    ARPで次に渡す相手のMACを調べる第2〜3層

    次に渡す相手のMACアドレスは、ARPで調べます。調べるのは、最終的な宛先であるサーバではなく、同じネットワーク内にあるゲートウェイのMACアドレスです。

DNSで宛先IPが分かった後宛先は同一ネットワーク?はい(経由しない)いいえデフォルトゲートウェイへ預けるMACを照会ARP:宛先そのものARP:ゲートウェイのMAC解決解決宛先へ直接送信ゲートウェイへ送信
PCは、自分のIPアドレスとサブネットマスクを使って、自分と宛先のネットワークアドレスを比べます。同じネットワークなら、宛先のMACアドレスをARPで調べて直接送信します。別のネットワークなら、デフォルトゲートウェイに任せることになり、ARPで調べるのもゲートウェイのMACアドレスになります。同じネットワークの場合はゲートウェイを通らないので、その分だけ手順が短くなります。
  1. 6

    カプセル化してフレームを組み立てる第4〜2層

    送るデータを、TCPヘッダ、IPヘッダ、Ethernetヘッダの順に包んでいきます。宛先MACアドレスには、手順5で調べたものを使います。このとき、TCPヘッダには送信元ポート番号も書き込まれます。

  2. 7

    自宅ルータがNATでグローバルIPに変換する第3層

    パケットは最初に、プライベート網とインターネットの境目である自宅ルータを通過します。このとき、送信元IPアドレスがグローバルIPアドレスに変換されます。家庭用ルータで使われるNAPTでは、第3層のIPアドレスだけでなく、第4層の送信元ポート番号も変換されます。

  3. 8

    以降の各ルータが経路を選んで転送する第3・2層

    インターネット上の各ルータは、ルーティングテーブルを見て、変換後のパケットを次のルータへ転送します。宛先IPアドレスは、最後まで 203.0.113.50 のままです。一方、宛先MACアドレスはホップごとに書き換わります。

つながるまで

パケットがサーバに届いても、データのやり取りはまだ始まりません。次の3つの段階を順番に済ませる必要があります。

③〜⑧の処理は、最初に1回だけ行われるものではありません。最初に送られるのは⑨のSYNパケットで、その後のTLSやHTTPの各パケットも、送るたびに同じ経路(③〜⑧)を通ります。

ただし、毎回まったく同じ手順を踏むわけではありません。たとえばARPでは、一度調べた相手のMACアドレスをキャッシュに保存するので、送るたびに問い合わせることは通常ありません。また、NATを行うのはPCではなく、経路上の自宅ルータです。

  1. 9

    TCPの3ウェイハンドシェイクで接続を確立する第4層

    PCとサーバは、SYN、SYN+ACK、ACKの3回のやり取りをします。このやり取りで、お互いの開始番号を確認し合います。

  2. 10

    TLSハンドシェイクで暗号化を確立する第6層

    PCとサーバは鍵の材料を交換し、交換した材料から共通鍵を計算します。あわせて、証明書と署名を確認します。TCPの接続が確立していなければ、この段階は始まりません。

  3. 11

    HTTPでリクエストとレスポンスをやり取りする第7層

    暗号化された通信路の中で、ブラウザはGETリクエストを送ります。サーバからは、HTMLを含むレスポンスが返ってきます。レスポンスの先頭には、結果を表す3桁のステータスコードが入ります。前にこのサイトからCookieを受け取っていれば、ブラウザはそれもリクエストに付けます。その仕組みはCookieの記事で説明しています。

↓ 時系列(上から順に)クライアントサーバ① TCP(第4層)接続を確立② TLS(第6層)暗号化を確立③ HTTP(第7層)ページを取得
クライアントとサーバは、まず第4層のTCPの3ウェイハンドシェイクで接続を確立します。次に、第6層のTLSハンドシェイクで、証明書の確認と鍵交換を済ませます。最後に、第7層のHTTPでリクエストとレスポンスをやり取りします。TCPの接続がなければTLSは始められず、TLSの暗号化が済むまでHTTPの中身は送れないので、この順序は入れ替わりません。

表示するまで

HTMLが届くと、ブラウザはその中身を解釈します。HTMLの中で<img>や<link>により画像・CSS・JavaScriptが指定されていれば、ブラウザはその数だけ追加のリクエストを送ります。

宛先が新しいホスト名なら、②のDNSから⑨〜⑪のTCP・TLS・HTTPまでをやり直します。宛先が同じホストなら、TCPとTLSの接続は再利用するのが基本です。HTTP/1.1では既存の接続を再利用し、HTTP/2では1本の接続にまとめてリクエストを送ります。HTTP/3では、TCPの代わりにQUICの接続を1本使います。

この場合、繰り返すのは⑪のHTTPのリクエストとレスポンスだけです。1つのページを表示するために、この往復がリソースの数だけ繰り返されます。リソースとは、HTMLや画像のように、ページの表示に必要なファイルのことです。

すべてのリソースが届くと、ブラウザは画面を組み立て、ページが表示されます。ブラウザが表示を受け持ち、サーバが処理とデータを受け持つこの分担は、クライアントサーバシステムの記事で説明する3層の形です。

全12段階の早見表

段階やること主な層関連する記事
① URLを読むスキーム・ホスト名・パスに分解する第7層1-2
② DNSホスト名からIPアドレスを調べる第7層5-1
③ 宛先判定自分のIPアドレスとマスクで、宛先が同じネットワークか比べる第3層2-2・2-3
④ ゲートウェイへ別のネットワーク宛てはデフォルトゲートウェイに任せる第3層3-1
⑤ ARP次に渡す相手(宛先かゲートウェイ)のMACを調べる第2〜3層3-2
⑥ カプセル化TCP→IP→Ethernetの順にヘッダを足して1枚のフレームにする第4〜2層1-4
⑦ NAT自宅ルータでプライベートIPをグローバルIPに変換する第3層(NAPTは第4層も)2-4
⑧ ルーティング以降の各ルータが経路表を見て転送する。宛先MACはホップごとに書き換わる第3・2層3-3・2-1
⑨ TCP3ウェイハンドシェイクで接続を確立する第4層4-2
⑩ TLSハンドシェイクで暗号化を確立する第6層5-3
⑪ HTTPリクエストを送り、レスポンスを受け取る第7層5-3
⑫ 描画HTMLを解釈し、画像やCSSを追加で取得する第7層新しいホストは②〜⑪、同じホストは⑪だけを繰り返す

練習問題(総合・全5問)

複数の記事の内容にまたがる問題です。

Q1DNSの応答でサーバのIPアドレスが分かった後、そのサーバ宛ての通信で正しい順序はどれか(DNSの問い合わせ自体を送るために先に行われるARPは考えないものとする)?
Q2自分のPCが192.168.10.25/24、宛先が203.0.113.50(別ネットワーク)のとき、「ARPで尋ねる相手」と「送り出すフレームの宛先IPアドレス」の組み合わせとして正しいものは?
Q3ルータを2台経由してサーバへ届くときの説明として正しいものは?
Q4家庭内の2台のPCが同時に同じWebサイト(宛先443番)へアクセスしても混線しない。これを支えている仕組みの組み合わせとして正しいものは?
Q5このサイトの分類で、TLSハンドシェイクは第何層の仕事か?

選んでから「採点する」を押すと、解説つきで答え合わせができます。

入門コースでは、層に分ける理由とOSI参照モデルから始めて、アドレスの仕組み、データが届く仕組み、通信の制御、アプリケーション層の順に説明してきました。ここで説明した12段階の流れの中で、それらの内容はすべてつながっています。

この先に読むとよいページは、目的によって変わります。目的ごとの順番は、目的別の勉強の順番に並べています。

おすすめの本 PR

この記事の内容を扱っている本です。

目的別の本の選び方を見る

入門コースを読み進める

入門コース 全19本中19本目