ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
プロトコルとは
プロトコル (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 の制御メッセージ用プロトコル。ping や traceroute が使います。
# 到達性確認
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.0 | 1996 | TCP | 都度接続切断 |
| HTTP/1.1 | 1997 | TCP | Keep-Alive、パイプライン |
| HTTP/2 | 2015 | TCP + TLS | 多重化、ヘッダ圧縮 (HPACK)、サーバプッシュ |
| HTTP/3 | 2022 (RFC9114) | QUIC (UDP) + TLS 1.3 | 0-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
| プロトコル | ポート | 暗号化 | 基盤 |
|---|---|---|---|
| FTP | 20/21 | なし | 独自 |
| FTPS | 990 (TLS) | TLS | FTP + TLS |
| SFTP | 22 | SSH | SSH のサブシステム |
現在は SFTP が事実上の標準。FTP は平文認証のため非推奨。
メール: SMTP / POP3 / IMAP
| 用途 | プロトコル | ポート (TLS) |
|---|---|---|
| 送信 | SMTP / SMTPS | 25, 587 (STARTTLS), 465 (SMTPS) |
| 受信 (ダウンロード型) | POP3 / POP3S | 110, 995 |
| 受信 (サーバ常駐型) | IMAP / IMAPS | 143, 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 化済み。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?