4.

ネットワークプロトコル完全ガイド

編集
この記事の要点
  • プロトコル (Protocol) = ネットワーク上で機器同士が通信するための「共通言語・約束事」
  • TCP/IP の 4 階層で整理: アプリケーション層 / トランスポート層 / インターネット層 / リンク層
  • 代表的なもの: TCP, UDP, IP, ICMP, ARP, DNS, HTTP/HTTPS, FTP, SMTP/POP3/IMAP, SSH, TLS, DHCP, SNMP, NTP, BGP, OSPF
  • 各プロトコルには IANA が割り当てた ポート番号がある (HTTP=80, HTTPS=443, SSH=22, DNS=53 など)
  • 近年の動向: HTTP/3 (QUIC)、TLS 1.3、IPv6、Zero Trust 系プロトコル (BeyondCorp、SPIFFE/SPIRE)

プロトコルとは

プロトコル (Protocol) とは、ネットワーク上で 機器同士がやり取りするための共通のルールです。「どんなフォーマットで」「どんな順序で」「どんな意味で」データを送受信するかを定義します。人間の言語に例えるなら、共通の文法と単語、そして会話の手順 (挨拶 → 用件 → 終了) を取り決めたものです。

プロトコル無しでは、たとえ物理的にケーブルが繋がっていても通信できません。インターネットは数千の標準プロトコルの集積です。

レイヤード プロトコル アーキテクチャ (Layered Protocol Architecture)

複雑な通信機能を 階層 (レイヤー) に分割し、各層が独立した責務を持つ設計思想。下位層の詳細を上位層が知らなくても良いという「関心の分離」を実現します。代表的なモデル:

OSI 7 層TCP/IP 4 層主なプロトコル
第7層 アプリケーションアプリケーション層HTTP, FTP, SMTP, DNS, SSH
第6層 プレゼンテーションTLS, JPEG, MIME
第5層 セッションSIP, RPC, NetBIOS
第4層 トランスポートトランスポート層TCP, UDP, QUIC, SCTP
第3層 ネットワークインターネット層IP (v4/v6), ICMP, IGMP, IPsec
第2層 データリンクネットワークインターフェース層Ethernet, Wi-Fi, PPP, ARP, VLAN
第1層 物理RJ45, 光ファイバ, 無線

インターネット層: IP / ICMP

IP (Internet Protocol)

インターネットの根幹プロトコル。IPv4 (32bit, 約 43 億アドレス) と IPv6 (128bit, 約 340 澗アドレス) があります。

IPv4 例: 192.168.1.1     /24 (= 255.255.255.0)
IPv6 例: 2001:db8::1     /64

特徴:
- コネクションレス (受信側との事前合意なし)
- ベストエフォート (到達保証なし)
- パケット単位で経路選択 (ルーティング)
- TTL (Time To Live) でループ防止

# IP アドレス確認
ip a                    # Linux
ipconfig                # Windows
ifconfig                # macOS / Linux 旧

ICMP (Internet Control Message Protocol)

IP の制御メッセージ用プロトコル。pingtraceroute が使います。

# 到達性確認
ping 8.8.8.8

# 経路確認
traceroute google.com       # Linux / macOS
tracert google.com          # Windows

# ICMP タイプ:
# 0 Echo Reply, 8 Echo Request (ping)
# 3 Destination Unreachable
# 11 Time Exceeded (traceroute で使用)

ARP (Address Resolution Protocol)

IP アドレス → MAC アドレスを解決。同一セグメント内でのみ動作。arp -a でテーブル確認。

トランスポート層: TCP / UDP / QUIC

プロトコル信頼性順序保証速度用途
TCPあり (再送, ACK)あり遅いHTTP, FTP, SSH, SMTP
UDPなしなし速いDNS, DHCP, NTP, VoIP, ゲーム
QUICあり (TCP 同等)あり速い (UDP 上)HTTP/3, 動画ストリーミング
SCTPありありSS7 over IP, WebRTC データチャネル

TCP の 3 ウェイハンドシェイク

クライアント                         サーバ
    |  SYN (seq=x)               -->  |
    |  <-- SYN+ACK (seq=y, ack=x+1)   |
    |  ACK (ack=y+1)             -->  |
    |  [接続確立、データ送受信開始]    |
    |  ...                            |
    |  FIN                       -->  |
    |  <-- ACK                        |
    |  <-- FIN                        |
    |  ACK                       -->  |

アプリケーション層プロトコル

Web 系: HTTP / HTTPS / HTTP/3

バージョン登場下位特徴
HTTP/1.01996TCP都度接続切断
HTTP/1.11997TCPKeep-Alive、パイプライン
HTTP/22015TCP + TLS多重化、ヘッダ圧縮 (HPACK)、サーバプッシュ
HTTP/32022 (RFC9114)QUIC (UDP) + TLS 1.30-RTT 接続、HoL ブロッキング解消、モバイル切替に強い

名前解決: DNS

# DNS クエリ (ホスト名 → IP)
dig example.com           # 詳細
nslookup example.com      # 全 OS
host example.com          # 簡易

# レコードタイプ
A      IPv4 アドレス
AAAA   IPv6 アドレス
CNAME  別名
MX     メールサーバ
TXT    任意 (SPF/DKIM/ドメイン認証)
NS     ネームサーバ
SOA    ゾーン情報
SRV    サービス位置

# DNS over HTTPS (DoH) / DNS over TLS (DoT)
# 暗号化された DNS、プライバシー保護

ファイル転送: FTP / SFTP / FTPS

プロトコルポート暗号化基盤
FTP20/21なし独自
FTPS990 (TLS)TLSFTP + TLS
SFTP22SSHSSH のサブシステム

現在は SFTP が事実上の標準。FTP は平文認証のため非推奨。

メール: SMTP / POP3 / IMAP

用途プロトコルポート (TLS)
送信SMTP / SMTPS25, 587 (STARTTLS), 465 (SMTPS)
受信 (ダウンロード型)POP3 / POP3S110, 995
受信 (サーバ常駐型)IMAP / IMAPS143, 993

リモート操作: SSH / Telnet

  • SSH (Secure Shell): 暗号化済リモートシェル。公開鍵認証。22/tcp。現在の標準
  • Telnet: 平文リモートシェル。23/tcp。使用厳禁 (パスワードが平文で流れる)

暗号化: SSL / TLS

バージョン状況
SSL 2.0 / 3.0廃止 (POODLE 脆弱)
TLS 1.0 / 1.1廃止 (2020 年主要ブラウザ対応終了)
TLS 1.2現役、互換性高い
TLS 1.3★ 現行推奨。ハンドシェイク 1-RTT、0-RTT 可

その他のアプリ層プロトコル

  • DHCP (67/68 UDP): IP アドレス自動配布
  • SNMP (161/162 UDP): ネットワーク機器の監視・管理
  • NTP (123 UDP): 時刻同期
  • LDAP (389/636): ディレクトリサービス (Active Directory 等)
  • RDP (3389 TCP): Windows リモートデスクトップ
  • VNC (5900 TCP): クロス OS GUI リモート

ルーティング プロトコル

プロトコル種類用途
RIP / RIPv2距離ベクトル小規模ネットワーク (現在ほぼ使われない)
OSPFリンクステート企業内 (IGP)
IS-ISリンクステートISP のバックボーン
BGPパスベクトルインターネット (EGP)。AS 間ルーティング

近距離 / IoT 通信プロトコル

  • Bluetooth (2.4GHz): スマホ・周辺機器。BLE (Bluetooth Low Energy) で IoT 対応
  • Zigbee (IEEE 802.15.4): メッシュ型、低消費電力、Smart Home (Hue, SmartThings)
  • Z-Wave: Smart Home 老舗
  • LoRaWAN: 長距離 (数 km) 低速 IoT
  • Matter: スマートホーム新標準 (2022-)、IP ベース

プロトコルスタックと IANA ポート割当

1 つのアプリケーションは複数の層のプロトコルをスタックのように積み重ねて動作します。例えば Web ブラウジング: HTTPS over TLS over TCP over IP over Ethernet

IANA (Internet Assigned Numbers Authority) がポート番号を管理:

  • Well-Known Ports: 0-1023 (HTTP=80, HTTPS=443, SSH=22 等)
  • Registered Ports: 1024-49151 (MySQL=3306, PostgreSQL=5432 等)
  • Dynamic / Private Ports: 49152-65535 (一時的なクライアント側で利用)
# 開いているポート確認 (Linux)
ss -tunlp        # 推奨
netstat -tunlp   # 旧

# Windows
netstat -ano | findstr LISTENING

# /etc/services (Linux/macOS) でポート → サービス名対応表
cat /etc/services | grep ^http

FAQ

Q: TCP と UDP、どちらを選ぶべき?
A: 信頼性が必要なら TCP (Web, ファイル転送, メール)、速度・低遅延が必要で多少のロスを許容できるなら UDP (動画ストリーミング, ゲーム, VoIP, DNS)。

Q: HTTP/3 はいつ普及する?
A: 2026 年時点で Google / Cloudflare / Facebook など主要サイトは既に対応。ブラウザも Chrome / Firefox / Safari がデフォルト有効化済み。サーバ側 (nginx 1.25+, Caddy, h2o) も対応進行中です。

Q: IPv4 と IPv6、両方使われる?
A: 現在は デュアルスタック が主流。モバイルキャリアは IPv6 + IPv4 over IPv6 (DS-Lite, MAP-E) に移行中。日本では NTT フレッツ網が IPv6 化済み。

編集
Post Share
子ページ
  1. TCP/IP
  2. Web通信プロトコル
  3. IPX/SPX
  4. AppleTalk
同階層のページ
  1. ネットワークの範囲と種類
  2. ネットワーク機器
  3. OSI参照モデル
  4. プロトコル
  5. アドレッシング・識別子
  6. ルーティング・スイッチング
  7. 負荷分散・プロキシ・CDN
  8. ネットワークセキュリティ
  9. クラウドネットワーク

最近更新/作成されたページ