リモートワークや拠点間通信において、VPNは欠かせないセキュリティ技術の一つです。
その中でも「L2TP/IPsec」は、WindowsやAndroidなどの主要なOSに標準で搭載されており、追加ソフトなしで利用できる手軽さから多くの企業や個人に利用されています。
しかし「L2TPとIPsecがなぜ組み合わさっているのか」「設定手順はどうすればいいのか」と疑問に感じる方も少なくないでしょう。
本記事では、L2TP/IPsecの仕組みと特徴、設定方法、L2TPv3との違いまでをわかりやすく解説していきます。
L2TP/IPsecとは?2つのプロトコルを組み合わせたVPN方式
それではまず、L2TP/IPsecの基本的な仕組みと、なぜ2つのプロトコルを組み合わせるのかについて解説していきます。
L2TP/IPsecとは、L2TP(Layer 2 Tunneling Protocol)とIPsec(Internet Protocol Security)を組み合わせたVPNプロトコルです。
L2TP単体はトンネリングの仕組みを提供しますが、暗号化機能を持ちません。
一方、IPsecは暗号化・認証・完全性検証などセキュリティ機能を持ちますが、レイヤー2のフレームを直接転送することはできません。
この2つを組み合わせることで、「安全に暗号化されたL2トンネル」を実現しているのがL2TP/IPsecです。
L2TP/IPsecの通信では、まずIPsecによってセキュアなトンネルが確立され、その中でL2TPによるPPPセッションがカプセル化されます。二重のカプセル化によって安全性が高められていますが、その分オーバーヘッドが生じる点も特徴です。
L2TP/IPsecは標準化されたプロトコルであるため、異なるメーカーの機器間でも相互接続性が高く、企業ネットワークでのVPN構築に適しています。
使用するポートはUDP 500(IKE)・UDP 4500(NATトラバーサル)・UDP 1701(L2TP)であり、ファイアウォール設定でこれらのポートを許可する必要があります。
L2TP/IPsecの通信の流れ
L2TP/IPsecの接続確立は、段階的なプロセスで行われます。
1. IKE(Internet Key Exchange)フェーズ:IPsecのセキュリティアソシエーション(SA)を確立し、暗号化パラメータを交渉する
2. IPsecトンネルの確立:選択された暗号アルゴリズムでトンネルを構築する
3. L2TP制御接続の確立:IPsecトンネル内でL2TPの制御メッセージをやり取りしてトンネルを開く
4. PPPセッションの開始:ユーザー認証(PAP/CHAP/MS-CHAPv2)を行いIPアドレスを割り当てる
5. データ通信開始:暗号化されたトンネル内でデータを送受信する
このように、L2TP/IPsecは複数のレイヤーでセキュリティを担保しているため、信頼性の高いVPN接続を実現できます。
ただし、接続確立までのステップが多いため、OpenVPNやWireGuardと比較するとやや接続に時間がかかる場合があるでしょう。
L2TP/IPsecで使われる暗号化アルゴリズム
L2TP/IPsecで使用される暗号化アルゴリズムは、IPsecの設定によって決まります。
一般的に使われるものとして、AES-128・AES-256による共通鍵暗号化が標準的です。
ハッシュ関数(整合性検証)にはSHA-1やSHA-256、鍵交換にはDiffie-Hellman(DHグループ2・5・14など)が利用されます。
DES・3DESなどの古いアルゴリズムはセキュリティ上の懸念から現在は推奨されておらず、AES-256とSHA-256の組み合わせが現時点でのベストプラクティスとされています。
IKEのバージョンはIKEv1とIKEv2があり、IKEv2の方がより高速・堅牢なため、対応機器ではIKEv2の使用が推奨されます。
事前共有鍵(PSK)と証明書認証の違い
L2TP/IPsecの認証方式には、事前共有鍵(Pre-Shared Key:PSK)と証明書認証の2種類があります。
PSKはサーバーとクライアントが同じ文字列(鍵)を共有して認証する方式で、設定が簡単なためSOHOや中小企業での利用に向いています。
一方、証明書認証はPKI(公開鍵基盤)を用いた方式であり、PKIサーバーの構築が必要ですが、より高いセキュリティを実現できます。
大規模企業や高セキュリティが求められる環境では証明書認証の採用が望ましいといえます。
PSKを使う場合でも、十分に複雑な文字列を設定し、定期的に更新する運用が重要です。
AndroidでのL2TP/IPsec設定手順
続いては、AndroidデバイスでL2TP/IPsecを設定する手順を確認していきます。
AndroidはOSレベルでL2TP/IPsecに対応しており、専用アプリなしでVPN接続を設定できます。
| 設定項目 | 内容 |
|---|---|
| VPN名 | 任意の名称(例:会社VPN) |
| 種類 | L2TP/IPSec PSK(事前共有鍵の場合) |
| サーバーアドレス | VPNサーバーのIPアドレスまたはドメイン名 |
| L2TPシークレット | L2TP専用のパスワード(設定している場合) |
| IPSec識別子 | グループ名(設定している場合) |
| IPSec事前共有鍵 | PSK文字列 |
| ユーザー名 | VPNアカウントのユーザー名 |
| パスワード | VPNアカウントのパスワード |
設定は「設定」→「ネットワークとインターネット」→「VPN」→「+」から追加できます。
接続後は通知バーにカギのアイコンが表示され、VPN接続中であることが確認できます。
なお、Android 12以降ではL2TP/IPsecのサポートが一部変更されているため、OSバージョンに応じた確認が必要です。
Windows環境でのL2TP/IPsec設定
Windowsでは、コントロールパネルまたは設定アプリからL2TP/IPsec VPNを設定できます。
設定手順(Windows 11の場合)
1. 「設定」→「ネットワークとインターネット」→「VPN」を開く
2. 「VPNを追加する」をクリックする
3. VPNプロバイダーを「Windows(ビルトイン)」に設定する
4. 接続名・サーバー名またはアドレスを入力する
5. VPNの種類を「事前共有キーを使ったL2TP/IPsec」に選択する
6. 事前共有キーを入力し、ユーザー名とパスワードを設定して保存する
WindowsではNATの背後にあるサーバーへ接続する際、レジストリの変更が必要な場合があります。
具体的には、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgentにAssumeUDPEncapsulationContextOnSendRuleというDWORD値を追加し、値を2に設定することでNATトラバーサルを有効にできます。
レジストリ変更後はWindowsの再起動が必要であるため、作業前に必ずバックアップを取得することを推奨します。
NATトラバーサルとUDP 4500の関係
L2TP/IPsecをNAT環境で使用する場合、NATトラバーサル(NAT-T)の仕組みが重要になります。
IPsecはESPプロトコルを使用しますが、NATルーターはESPパケットを正しく転送できない場合があります。
そこでNAT-TではESPパケットをUDPでカプセル化することで、NATを越えた通信を可能にしています。
この際に使用されるのがUDPポート4500であり、ファイアウォールでこのポートを許可することがL2TP/IPsec接続の前提条件となります。
NATルーターの種類によってはNAT-Tに対応していない機器もあるため、接続トラブル時は機器の仕様確認も欠かせません。
L2TPv3とは?L2TPとの違いと特徴
続いては、L2TPの発展版であるL2TPv3について確認していきます。
L2TPv3(Layer 2 Tunneling Protocol Version 3)は、RFC 3931で規定されたL2TPの第3バージョンです。
従来のL2TPv2がPPPセッションのトンネリングに特化していたのに対し、L2TPv3はより汎用的なL2フレームのトンネリングに対応しています。
| 比較項目 | L2TPv2 | L2TPv3 |
|---|---|---|
| 対応フレーム | PPPフレームのみ | イーサネット・VLAN・PPPなど多様なL2フレーム |
| 用途 | リモートアクセスVPN | L2 VPN・拠点間接続 |
| RFC | RFC 2661 | RFC 3931 |
| トランスポート | UDP | UDP・IP(直接) |
L2TPv3はイーサネット・Frame Relay・ATMなど多様なL2プロトコルをカプセル化できるため、キャリア向けのL2 VPNサービス構築に適しています。
Ciscoルーターなどのエンタープライズ機器で実装されており、広域イーサネット網の代替として利用されるケースがあります。
over IPsecの意味と動作
「L2TP over IPsec」とは、L2TPトンネルをIPsecで保護する構成を指します。
この表現はL2TP/IPsecと同義であり、L2TPが「上位」のトンネルプロトコルとして動作し、その下でIPsecが暗号化を担う構造を示しています。
IPsecにはトランスポートモードとトンネルモードがありますが、L2TP over IPsecではトランスポートモードが一般的に使用されます。
トランスポートモードではIPヘッダーはそのままにペイロードのみを暗号化するため、トンネルモードと比較してオーバーヘッドが少なくなります。
「over IPsec」という表現はVPN設定画面でも見られる用語であり、意味を理解しておくと設定時に迷わずに済むでしょう。
L2TP/IPsecのメリットとデメリット
L2TP/IPsecには明確なメリットとデメリットが存在します。
メリットとしては、主要OSへの標準搭載・高い相互接続性・二重カプセル化による高いセキュリティの3点が挙げられます。
特に追加ソフトウェアなしで利用できる点は、管理コストの低減につながるため中小企業にとって魅力的です。
一方でデメリットとしては、二重カプセル化によるオーバーヘッドで通信速度がやや低下すること、UDP 500・4500・1701の3ポートを解放する必要があること、NATとの相性問題が発生しやすいことが挙げられます。
近年はWireGuardやIKEv2/IPsecが高速・シンプルな代替として注目されており、新規構築ではこれらも検討に値するでしょう。
まとめ
L2TP/IPsecは、トンネリングを担うL2TPと暗号化を担うIPsecを組み合わせた、信頼性の高いVPNプロトコルです。
WindowsやAndroidに標準搭載されており、追加ソフトなしで手軽に利用できる点が大きな強みです。
設定にはサーバーアドレス・事前共有鍵・ユーザー認証情報が必要であり、NATトラバーサルやファイアウォール設定も合わせて確認することが重要です。
L2TPv3は従来のL2TPv2を拡張した汎用的なL2トンネリングプロトコルであり、キャリア向けL2 VPNの構築に活用されています。
セキュリティ要件と運用のしやすさを考慮しながら、L2TP/IPsecをはじめとするVPNプロトコルを適切に選択・設定してみてください。