VPN

IKE(Internet Key Exchange) あいけーいー

IPsec鍵交換SA(セキュリティアソシエーション)VPNDiffie-Hellman認証
IKEについて教えて

簡単に言うとこんな感じ!

VPN通信を始める前に「どの暗号方式を使う?」「本当に相手は正しい相手?」って自動で握手してくれる仕組みだよ。南京錠を送り合って安全に鍵を共有する”見えない交渉役”なんだ!


IKEとは

IKE(Internet Key Exchange)とは、IPsec VPNを確立する際に、通信の両端(たとえば会社の拠点とデータセンター)が安全に暗号鍵を交換・共有するためのプロトコルです。人間に例えるなら「電話をかける前に、まず相手が本物かどうか確認して、どの言語で話すかを決める準備フェーズ」にあたります。

IKEが担う役割は大きく2つ。①お互いの身元確認(認証と、②その後の通信を守るための暗号鍵の生成・共有です。この処理が自動で行われるおかげで、管理者が手動で鍵を設定する必要がなく、定期的に鍵を更新(リキー)することも自動化できます。

現在広く使われているバージョンはIKEv2(RFC 7296)で、旧バージョンのIKEv1に比べてメッセージ数が削減され、モバイル端末からのVPN接続にも対応しやすくなっています。


IKEの仕組みと2つのフェーズ

IKEはVPN接続を確立するまでに2段階のネゴシエーションを行います。

フェーズ名称目的確立するもの
フェーズ1IKE SA(ISAKMP SA)安全な管理チャネルを作る認証・鍵交換用の暗号トンネル
フェーズ2IPsec SA(Child SA)実際のデータ通信用の鍵を決めるデータ暗号化・認証用のSA
  [拠点A のVPN機器]          [拠点B のVPN機器]
        │                           │
        │ ①フェーズ1: 認証+DH鍵交換  │
        │ ←─────────────────────── │
        │ ──────────────────────→ │
        │    IKE SA(管理トンネル)確立  │
        │                           │
        │ ②フェーズ2: IPsec SAのネゴシエーション │
        │ ←─────────────────────── │
        │ ──────────────────────→ │
        │    IPsec SA(データトンネル)確立  │
        │                           │
        │ ③ 暗号化されたデータ通信 開始 │
        │ ═════════════════════════ │

IKEv1 と IKEv2 の比較

項目IKEv1IKEv2
標準化RFC 2409(1998年)RFC 7296(2014年)
フェーズ1メッセージ数6〜9往復4往復(半分以下)
モバイル対応(MOBIKE)なしあり
EAP認証非対応対応
DoS耐性低いCookieチャレンジで改善
現在の推奨度旧式・非推奨✅ 推奨

鍵交換の核心:Diffie-Hellman(DH)鍵交換

IKEが「安全な場所を通らずに鍵を共有できる」のは、Diffie-Hellman(DH)鍵交換アルゴリズムのおかげです。
イメージとしては「2人がそれぞれ秘密の色を混ぜ合わせて、盗み見られても同じ色を作れる」魔法のような仕組みです。
DHグループ番号が大きいほど鍵の強度が高く(例:DH Group 14以上を推奨)、セキュリティが向上します。


歴史と背景

  • 1995年 — IETF が IPsec の仕様策定を開始。鍵管理の仕組みとして SKEME・Oakley・ISAKMP が個別に提案される
  • 1998年 — 3つの仕様を統合した IKEv1(RFC 2409) が標準化。複雑な設定が必要で、モードも複数あり運用が難しいという声も
  • 2005年 — IKEv2 の草案が登場。メッセージを整理・簡素化し、モバイル端末向けの拡張(MOBIKE)も設計に組み込む
  • 2010年 — IKEv2(RFC 5996)が正式標準化。主要なVPN機器ベンダーが対応を開始
  • 2014年 — RFC 7296 として改定・整理。現在の IKEv2 標準はこれが基準
  • 現在 — iOS・Android のネイティブVPN、企業向けSD-WANなど幅広い環境で IKEv2 が標準的に使われている

IPsecとIKEの関係

IKEは単独では動作せず、必ずIPsecとセットで使われます。役割分担を整理すると次のとおりです。

IPsec VPN の構成要素と IKE の位置づけ IKE(鍵交換・ネゴシエーション) フェーズ1 IKE SA の確立(管理トンネル) フェーズ2 IPsec SA の確立(データトンネル) 使用ポート: UDP 500 / 4500 IPsec(データ暗号化・認証) ESP Encapsulating Security Payload AH Authentication Header SA(セキュリティアソシエーション) 鍵を渡す IKE が決めた鍵を使って IPsec がデータを暗号化・認証する

SA(セキュリティアソシエーション) とは、「どの暗号アルゴリズムを使うか」「鍵は何か」「有効期限はいつか」などをまとめた”通信の取り決め書”のことです。IKEはこのSAを自動で生成・更新する役割を担っています。


関連する規格・RFC

規格・RFC番号内容
RFC 7296IKEv2 の現行標準仕様(2014年)
RFC 2409IKEv1 の仕様(旧式・参照用)
RFC 4301IPsec アーキテクチャ全体の定義
RFC 4303ESP(Encapsulating Security Payload)の仕様
RFC 4306IKEv2 の初版(RFC 7296 に置き換え)
RFC 3948NAT越え(UDP Encapsulation)の仕様

関連用語

  • IPsec — IKEが確立した鍵を使い、実際にデータを暗号化・認証するプロトコルスイート
  • VPN — 公衆ネットワーク上に仮想的な専用線を作る技術。IKE/IPsecはその代表実装
  • SA(セキュリティアソシエーション) — IKEが生成する「通信の取り決め書」。暗号アルゴリズムや鍵情報をまとめたもの
  • Diffie-Hellman鍵交換 — IKEが鍵共有に使う数学的アルゴリズム。盗聴されても安全に鍵を共有できる
  • ESP — IPsecのデータ暗号化・認証を担うプロトコル。IKEが決めた鍵で動作する
  • PKI — IKEの認証方式の一つ。デジタル証明書を使って相手の正当性を確認する仕組み