Windows
L2TP 伺服器允許通過防火牆連接 iPhone/iPad,但不允許 Windows
我們的 L2TP 伺服器(執行 Windows 2008 RRAS)位於 NAT 防火牆後面。我已經驗證它正在通過 NAT-T。防火牆規則均已正確設置以通過 GRE、IKE、L2TP,並且伺服器上沒有執行自定義 IPSEC 策略。L2TP 使用的是 PSK 而不是證書。奇怪的是,我的 Windows 7 和 8 桌面無法成功連接,但我的 iPhone 和 iPad 設備連接成功。我想不出還有什麼要檢查的。
另請注意,我們可以很好地使用 PPTP 和 SSTP。
我有失敗和成功連接的防火牆和 netmon 日誌。我見過很多 iOS 設備無法連接完整桌面的情況,但情況恰恰相反,我在網際網路上找不到任何線索。
更新:我什至用全新的 Windows Server 2012 安裝替換了有問題的伺服器,但它仍然存在同樣的問題。
您是否對 Windows 機器進行了系統資料庫更改以使其位於 NAT 後面?
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\PolicyAgent] "AssumeUDPEncapsulationContextOnSendRule"=dword:00000002
如果您更喜歡使用“REG ADD”:
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 2
Microsoft 的這篇文章中提到了系統資料庫更改:https ://docs.microsoft.com/en-US/troubleshoot/windows-server/networking/configure-l2tp-ipsec-server-behind-nat-t-device
請注意,此系統資料庫值有被 Windows 10“功能更新”刪除的歷史記錄。如果您能夠通過自動化機制(如組策略首選項系統資料庫設置)強制執行設置,您將獲得更一致的結果。