32blogby StudioMitsu
security12 min read

VPNプロトコル徹底比較:WireGuard・OpenVPN・IKEv2の仕組みと選び方

WireGuard、OpenVPN、IKEv2/IPSecの暗号方式・速度・設計思想を技術視点で比較し、用途別に最適なプロトコルを解説する。

vpnwireguardopenvpnikev2security
目次

VPNアプリの「接続」ボタンを押すと、裏側では暗号化トンネルが構築される。このトンネルの作り方を決めるのが VPNプロトコル だ。

プロトコルの選択で通信速度、セキュリティ強度、バッテリー消費が大きく変わる。にもかかわらず、多くのVPN解説記事はプロトコルの中身に触れない。「おすすめVPN 5選」ではなく、プロトコルの設計思想と技術的なトレードオフを理解した上で選びたい人のための記事だ。

VPNプロトコルとは何か

VPNプロトコルは、3つの仕事を担当する:

  1. トンネリング — パケットを別のパケットで包んで送る。元のデータが第三者から見えなくなる
  2. 暗号化 — トンネル内のデータを暗号化する。傍受されても内容を読めなくする
  3. 認証 — 接続先が本物のサーバーであることを確認する。中間者攻撃を防ぐ

この3つの実現方法がプロトコルごとに異なる。ざっくり言うと:

  • WireGuard — 最小限の暗号プリミティブで高速・シンプルに実現
  • OpenVPN — SSL/TLSの上に柔軟なトンネルを構築
  • IKEv2/IPSec — OS標準の暗号スタックを活用し、モバイル切替に強い

どれも正しく実装されていれば十分に安全だ。違いは速度、柔軟性、そして使う場面にある。

WireGuard:次世代の軽量プロトコル

WireGuardはJason Donenfeldが設計し、2020年にLinuxカーネル5.6にマージされた。設計思想は「暗号化はバージョニングしない。正しい選択肢を1つだけ提供する」だ。

技術スタック

項目仕様
鍵交換Curve25519(ECDH)
暗号化ChaCha20-Poly1305
ハッシュBLAKE2s
ハンドシェイクNoise Protocol Framework(IK パターン)
トランスポートUDP のみ
コード量約4,000行

従来のプロトコルが「どの暗号スイートを使うか」をネゴシエーションするのに対して、WireGuardはネゴシエーション自体が存在しない。暗号アルゴリズムが固定されているため、ダウングレード攻撃が原理的に不可能だ。

カーネルモジュールとして動作する

OpenVPNがユーザースペースで動作するのに対し、WireGuardはLinuxカーネルモジュールとして動く。パケット処理にコンテキストスイッチが不要なので、高スループット・低レイテンシを実現できる。

bash
# WireGuardインターフェースの確認(Linux)
ip link show type wireguard

NordLynx:WireGuardの弱点を補う

WireGuardはシンプルさと引き換えに、接続元のIPアドレスをサーバー側で保持する設計になっている。これはプライバシー重視のVPNサービスには都合が悪い。

NordVPNはこの問題を NordLynx で解決した。WireGuardの上にダブルNATを被せ、ユーザーのIPアドレスをサーバーに残さない仕組みだ。WireGuardの速度を維持しつつ、プライバシーの問題をクリアしている。

OpenVPN:実績と柔軟性のスタンダード

OpenVPNは2001年にJames Yonanが開発を始め、20年以上の実績がある。SSL/TLSライブラリ(OpenSSL)を基盤にしており、暗号スイートの選択肢が極めて広い。

技術スタック

項目仕様(推奨構成)
鍵交換ECDHE(Perfect Forward Secrecy)
暗号化AES-256-GCM
認証RSA-4096 または ECDSA証明書
ハッシュSHA-256
トランスポートUDP または TCP
コード量約70,000行(コア部分)

TCPモードの価値

WireGuardやIKEv2がUDPのみに対応するのに対し、OpenVPNはTCPモードで動作できる。これには大きな実用上の利点がある:

  • ポート443(HTTPS)で動作 — VPNの通信がHTTPSトラフィックと見分けがつかなくなる
  • 検閲の厳しい環境で有効 — DPI(Deep Packet Inspection)をすり抜ける可能性が高い
  • 企業ファイアウォールの突破 — UDPがブロックされている環境でも接続できる

海外出張でホテルのWi-Fiから会社のリソースにアクセスする場面や、制限のあるネットワーク環境で作業する場面で、この柔軟性が活きる。

コード量のトレードオフ

OpenVPNのコードベースは約7万行(コア部分)だ。WireGuardの4,000行と比べると大きく、コード量が多いほど潜在的な脆弱性も増える。ただし、20年以上のセキュリティ監査と修正の実績があり、枯れた技術としての信頼性は高い。

IKEv2/IPSec:モバイルに強い安定派

IKEv2(Internet Key Exchange version 2)はRFC 7296で標準化されたプロトコルだ。IETFで策定され、MicrosoftがRFCの主要著者を務めた。Windows、macOS、iOSに標準搭載されている。

技術スタック

項目仕様
鍵交換Diffie-Hellman(Group 14以上推奨)
暗号化AES-256-CBC または AES-256-GCM
認証X.509証明書 / EAP
トランスポートUDP 500 / 4500
MOBIKERFC 4555 対応

MOBIKEによるシームレスな切替

IKEv2の最大の特徴は MOBIKE(Mobility and Multihoming Protocol)だ。Wi-Fiからモバイル回線に切り替えたとき、VPN接続が途切れずにシームレスに移行する。

通勤中にWi-Fiとモバイル回線を行き来するような場面で、VPN接続を意識せずに使い続けられる。WireGuardも再接続は高速だが、IKEv2のMOBIKEは接続自体が途切れない点で一歩リードしている。

OS標準搭載の利点

追加のアプリをインストールせずに、OS標準のVPN設定から接続できる。企業のMDM(モバイルデバイス管理)との相性もよく、エンタープライズ環境で広く採用されている。

3プロトコルの技術比較

項目WireGuardOpenVPNIKEv2/IPSec
速度最速中程度高速
レイテンシ最小高め中程度
コード量~4,000行~70,000行OS依存
暗号アルゴリズム固定(ChaCha20)選択可能(AES等)選択可能(AES等)
TCP対応なしありなし
モバイル切替高速再接続再接続必要MOBIKE(途切れない)
セキュリティ検証形式的暗号証明(複数の学術研究)複数回の第三者監査各実装ごとに異なる
Linux カーネルネイティブユーザースペースユーザースペース
検閲回避弱い強い(TCP 443)弱い

用途別おすすめプロトコル

リモートワーク・自宅作業

WireGuard がベスト。高速で安定しており、バッテリー消費も少ない。常時接続しても端末への負荷が小さい。NordVPNならNordLynxを選べばWireGuardベースで接続できる。

公共Wi-Fi(カフェ・空港・ホテル)

どのプロトコルでも暗号化による保護は十分だ。ただし、公共Wi-Fiでは速度より確実に接続できること が重要。UDPがブロックされている場合に備えて、OpenVPN(TCP)を候補に入れておくと安心だ。

海外出張・制限のあるネットワーク

OpenVPN(TCP 443) 一択。VPNの通信をHTTPSに偽装できるため、DPIによるブロックをすり抜けやすい。WireGuardやIKEv2はUDPパケットの特徴でブロックされやすい。

モバイル中心(通勤・移動中)

IKEv2 が最適。MOBIKEにより、Wi-Fi↔モバイル回線の切替でVPNが途切れない。WireGuardも再接続が速いので実用上は大差ないが、完全にシームレスなのはIKEv2だ。

開発者のVPS・サーバー管理

2つの選択肢がある:

  • 自前でWireGuardをVPSに構築 — 最大の自由度。ただしサーバーの管理・更新は自己責任
  • 商用VPN — 設定不要ですぐ使える。複数国のサーバーを使い分けたい場合に便利

自前構築に時間を使うか、月数百円の商用VPNで時間を買うかは、あなたの判断だ。

まとめ

3つのプロトコルに「最強」はない。用途に応じて選ぶのが正解だ:

  • 速度重視 → WireGuard(NordLynx)
  • 柔軟性・検閲回避 → OpenVPN
  • モバイルのシームレス接続 → IKEv2/IPSec

どのプロトコルも正しく実装されていれば、暗号化の強度は十分だ。大事なのはプロトコルだけではなく、サービス提供者のログポリシー、運営の透明性、第三者監査の有無 も含めて総合的に判断すること。

技術的な仕組みを理解した上でVPNを選べば、「なんとなく安全そう」ではなく、自分のユースケースに合った根拠ある選択ができるはずだ。

関連記事:

公式リソース: