Vigor 4G LTE Fortinet FG Fortigate 建立VPN VPN有通 無封包 有 TX 無 RX,Ping 不到 Tracert 不到

Vigor 4G LTE C410ax VPN sysog 

Coredump was generated, and (dray_ike_conn) terminated with signal (6) !

VPN 秀出有通 

通常是 IKE1 已經OK

但是無封包收送

問題就是出在 IKE2

可以問 Ai

貢獻者,居易科技FAE,詹大神

---------------------------------------

forti端有固定IP但對端設備是透過4G網路上網

VPN建立site to site連線 有成功連線但無流量

開啟forti的NAT Traversal有幫助嗎?

如何開啟? 

---------------------------------------

Ai 的原始回答

https://gemini.google.com/share/21839f62f861

這是一個非常經典的場景。在 4G/5G 網路環境下,對端設備通常位於電信商的 CGNAT(電信級 NAT) 之後,這會導致傳統的 IPsec 封包(ESP 協定)在經過 NAT 轉換時出現問題。

NAT Traversal (NAT-T) 有幫助嗎?

是的,非常有幫助,甚至可以說是必備的。

  • 原因: IPsec 預設使用 ESP 協定(協定號 50),它不像 TCP/UDP 有「連接埠(Port)」的概念。當 4G 分享器或電信商的 NAT 設備收到 ESP 封包時,往往不知道該轉發給內部哪台設備。

  • 作用: 開啟 NAT-T 後,FortiGate 會將 IPsec 封包封裝在 UDP 4500 連接埠中。NAT 設備對 UDP 封包的處理非常成熟,這能確保數據流(Phase 2)能正確穿透 NAT 抵達對端。

  • 現狀: 雖然你的連線顯示「成功(Up)」,但那可能只是 Phase 1(金鑰交換)完成了,實際的 Phase 2 數據傳輸可能因為沒有 NAT-T 而被中途丟棄。


如何在 FortiGate 開啟 NAT-T?

通常 FortiGate 預設是開啟 enable 狀態,但你可以檢查或手動強制開啟:

1. 透過 GUI 圖形介面

  1. 進入 VPN -> IPsec Tunnels

  2. 編輯你的該條隧道連線(Phase 1)。

  3. 展開 Network 區塊。

  4. 找到 NAT Traversal,確保選擇為 Enable

    • 註:如果對端是非常頑固的 NAT 環境,有時需要設定為 "Forced"(強制)。

2. 透過 CLI 指令(最準確)

Bash
 
config vpn ipsec phase1-interface
    edit "你的隧道名稱"
        set nattraversal enable  # 或是 forced
    next
end

如果開啟了 NAT-T 還是沒有流量,請檢查以下三點:

連線成功但無流量(有隧道無數據),通常與以下因素有關:

A. 路由設定 (Static Route)

確保你的 FortiGate 有一條靜態路由,將「對端內部網段」指向該 IPsec 隧道介面

  • 檢查: Network -> Static Routes

B. 防火牆策略 (Policy)

必須有兩條策略(或者一條雙向策略):

  1. Internal -> VPN Tunnel (允許存取對端)

  2. VPN Tunnel -> Internal (允許對端回傳數據)

  • 關鍵點: 檢查策略中是否誤開了 NAT?在 Site-to-Site VPN 策略中,通常不需要勾選 Firewall Policy 裡的 NAT 功能。

C. MTU / MSS 值問題 (4G 網路常見)

4G 網路的封包標頭較大,加上 IPsec 封裝後容易超過 1500 bytes 導致掉包。建議在 FortiGate 的隧道介面調整 TCP MSS:

Bash
 
config system interface
    edit "你的隧道名稱"
        set tcp-mss 1350
    next
end

下一步建議

您可以先嘗試在兩端都將 NAT Traversal 設定為 Enable 並重啟隧道。如果依然沒有流量,您希望我幫您檢查 防火牆策略 (Policy) 還是 路由 (Routing) 的設定邏輯嗎?

 

 

 

 

 

 

  • 文章瀏覽點擊數 4106269