CiscoルータでIPsec VPNが貼れない時の対処法
Ciscoルータを使用してIPsec VPNを構築する際、VPNトンネルが確立できない、トラフィックが流れないといった問題に直面することがあります。
この記事では、「Cisco ルータ 設定」におけるIPsecの基本構成と、トラブル発生時のチェックポイント、FortiGate VPNとの連携時の注意点、そしてshowコマンド・debugコマンドを使ったトラブルシューティングの具体的手順までを解説します。
図1:CiscoルータとFortiGateのVPN構成例
よくあるIPsec VPN接続失敗の原因
IPsecが貼れないとき、以下のような原因が考えられます:
- ISAKMP/IKE(フェーズ1)の設定不一致
- トランスフォームセット(フェーズ2)の不一致
- 暗号方式やハッシュアルゴリズムの非対応
- アクセスリスト(ACL)の設定ミス
- VPN対象のトラフィックがマッチしていない
- NATトラバーサルが無効
- FortiGateとの仕様不一致
1. ISAKMP(IKE Phase1)の設定確認
IKEフェーズ1はVPNトンネルの土台です。Ciscoルータで現在の設定を確認するには:
show crypto isakmp policy
以下の項目がFortiGateや他のVPN装置と一致している必要があります:
- encryption(例:aes)
- hash(例:sha)
- authentication(例:pre-share)
- group(DHグループ、例:group2)
- lifetime(秒数)
2. トランスフォームセットの確認(IKE Phase2)
IKEフェーズ2では、IPsecトンネルで使用する暗号・認証方式を定義します。
crypto ipsec transform-set MYSET esp-aes esp-sha-hmac
FortiGateと接続する場合、双方でトランスフォームセットの内容が一致している必要があります。
図2:暗号・認証方式の互換性
3. アクセスリストとトラフィックのマッチング
トンネルに通す通信はアクセスリスト(ACL)で定義します。
access-list 100 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 crypto map VPNMAP 10 ipsec-isakmp set peer 203.0.113.1 set transform-set MYSET match address 100
VPN対象のトラフィックがACLに一致していなければ、IPsec SAは確立されません。
4. NATトラバーサル設定の確認
NAT環境を通る通信では、nat-traversal
の有効化が必要です。
crypto isakmp nat-traversal 20
未設定だと、ISAKMPパケットがブロックされてトンネルが貼れません。
5. FortiGateとの連携時の注意点
FortiGateとのVPN接続では、以下の項目に注意してください:
- IKEバージョン(v1/v2)
- ルートベースVPN / ポリシーベースVPNの違い
- PFS(Perfect Forward Secrecy)の有無
- 事前共有鍵(Pre-Shared Key)の一致
6. showコマンドとdebugコマンドの活用
代表的なshowコマンドと確認ポイント
show crypto isakmp sa
→ IKEフェーズ1の状態確認。- MM_ACTIVE:成功
- IDLEまたは
NO_STATE
:失敗
show crypto ipsec sa
→ フェーズ2のSA確認。
#pkts encaps / decaps が増えていれば通信中。show access-lists
→ VPNトラフィックにACLがマッチしているかを確認。
hitcnt が増加しているかをチェック。show crypto map
→ crypto map に正しいACLとpeerが設定されているか確認。
debugコマンドの使い方と出力例
問題の詳細を知るには debug が有効です。ただし、本番環境では使用に注意が必要です。
debug crypto isakmp
→ フェーズ1の認証・交渉ログ。
出力例: ISAKMP (0): authentication failed → Pre-shared key の不一致debug crypto ipsec
→ フェーズ2の動作ログ。
出力例: IPSEC(sa_initiate): no policy found → トラフィックがcrypto mapと一致していない可能性
リアルタイム出力を表示するには:
terminal monitor
終了時は必ず以下で停止しましょう:
undebug all
図3:IPsec VPNの処理フロー(フェーズ1・2)
まとめ
CiscoルータでIPsec VPNが貼れない原因は多岐にわたりますが、以下のポイントを順に確認することで効率的にトラブルを解消できます。
- ISAKMPポリシー(IKE Phase1)の設定確認
- トランスフォームセット(IKE Phase2)の一致
- アクセスリストとトラフィックの定義の正確性
- NATトラバーサル設定の有無
- FortiGateとの接続時のバージョン差や仕様確認
- show・debugコマンドを使ったフェーズごとの状況把握
「Cisco ルータ 設定」や「FortiGate VPN」の連携は実務でも頻繁に登場する構成です。今回ご紹介したトラブルシューティング手法を活用し、効率よく問題を解決していきましょう。