「VPNがつながらない…」FortiGateでよくあるIPsecトラブルの原因と対策まとめ
FortiGateでIPsec VPNを設定しても、なぜかPhase1やPhase2が確立しない。
一見正しく設定しているつもりでも、細かいパラメータの不一致や見落としでつまずくこと、かなり多いです。
本記事では、FortiGateでVPNがつながらないときに実際に確認しているポイントを5つ紹介します。
現場でよくあるトラブルを例に、対処方法もあわせて解説します。
Phase1/Phase2とは?それぞれの意味と違い
IPsec VPNでは、以下の2段階でトンネルを確立します。
- Phase1(IKE SA):対向装置との信頼関係を確立(鍵交換や認証)
- Phase2(IPsec SA):実際の通信路を確立(トラフィックの暗号化・復号)
重要:
Phase2は、トラフィック(例えばPingや通信)が発生しないと確立されません。
VPN設定後に「トンネルが上がらない」と思っていても、実は通信していないだけでPhase2が未確立というケースも多いです。
以下に、Phase1/Phase2が「落ちている時に見られる現象」と「主な原因」を簡潔にまとめます。
段階 | 現象 | 主な原因 |
---|---|---|
Phase1が落ちている | ・トンネル自体が一切上がらない ・ diagnose vpn tunnel list で何も出ない・ログに「negotiation timeout」「no proposal chosen」 | ・Pre-shared key不一致 ・ポート500/4500のフィルタリング ・IPアドレス・IKEバージョン不一致 |
Phase2が落ちている | ・Phase1は上がるが通信ができない ・ diagnose vpn tunnel list でstatus: down・pingしても反応なし(通信発生しないと上がらない) | ・暗号設定不一致(AES/SHAなど) ・セレクターの設定ミス(送信元/宛先) ・ルートやポリシーの不備 |
1. Phase1が確立しない時に見るべき設定
Phase1が上がらない原因として多いのは以下の通りです。
- 事前共有鍵(Pre-shared Key)の不一致
- 対向機器のIPアドレス設定ミス(interface-ip設定 or NAT超えなど)
- IKEバージョンの不一致(v1とv2)
- ポート500/4500がブロックされている
- 証明書を使用している場合のCNや証明書エラー
実際の現場でも、Pre-shared Keyの打ち間違いで延々と悩んでた…というパターンは結構あります。
2. Phase2が確立しない時に確認する項目
Phase1はOKでも、Phase2でコケることも多いです。
以下を確認してみてください。
- Encryption / Authentication方式の不一致(AES256, SHA1/256など)
- Perfect Forward Secrecy (PFS)の有効/無効が食い違っている
- Quick Mode Selector(送信元/宛先のサブネット)がズレている
- 「no proposal chosen」などのエラーが出ていないかログ確認
たとえば片方がSHA1、もう片方がSHA256だとPhase2が確立しません。
3. diagコマンドでログを取る方法(基本)
トラブル時は必ずログで原因を絞ります。
FortiGateでは以下のdiagコマンドが基本です。
diagnose vpn ike log-filter clear
diagnose vpn ike log-filter dst-addr4 <相手のIP>
diagnose debug application ike -1
diagnose debug enable
どこを見るか:
no proposal chosen
→ 暗号方式が不一致received notify: INVALID_ID_INFORMATION
→ セレクター(サブネット)のミスnegotiation timeout
→ 対向装置と接続不可、ルートやNATが怪しいpeer SA proposal not match local
→ Proposal(暗号アルゴリズム)不一致
通信を止めるときは diagnose debug disable
を忘れずに。
また、Phase2の確認には以下も有効です:
diagnose vpn tunnel list
どこを見るか:
name=
→ トンネル名(設定ミスしてないか)status: up
/status: down
→ トンネル状態rx bytes=
/tx bytes=
→ 通信しているかどうかcreated
→ セッションが新しく作られているか
4. 実際によくあるエラーとその対処法
エラー | 原因 | 対処 |
---|---|---|
no proposal chosen | 暗号化方式が一致していない | 両者のProposal設定を確認 |
received notify: INVALID_ID_INFORMATION | サブネットの設定ミス | Quick Mode Selectorを見直す |
unable to find phase1 handle | 対向装置との接続情報が不正 | IP設定やポリシー確認 |
negotiation timeout | 対向と通信できていない | NAT超え、ルート、ポート確認 |
5. 最終確認:VPNポリシーとルートの設定
トンネルが上がっていても通信できない場合、ルートやポリシーが未設定のケースも多いです。
- 送信元と宛先のポリシーが双方向で作成されているか?
- トンネルインターフェースに適切な静的ルートがあるか?
- NAT設定が不要な通信にかかっていないか?
おすすめ確認コマンド:
get router info routing-table all
show firewall policy
show firewall address
diagでフロー確認する場合:
diagnose debug flow filter addr <宛先IP>
diagnose debug flow show function-name enable
diagnose debug enable
diagnose debug flow trace start 10
通らない原因が「policy lookup failed」や「no matching route」で出ていたら、ポリシーやルーティング設定が怪しいです。
まとめ
VPNがつながらないときは、「Phase1が上がるか」「Phase2で止まっているか」で切り分けて、ログを見ながら一つずつ原因を潰していくのが基本です。
FortiGateは設定がGUIでもCLIでも可能ですが、やっぱりトラブル対応にはCLIでの確認が強い味方になります。
現場で詰まりやすいポイントを押さえておけば、いざというときに焦らず対応できます。