在 IPsec 協定族中,ESP(Encapsulating Security Payload,IP Protocol 50)是唯一能同時提供加密與認證的核心協定,是現代 VPN 安全通訊的基石。
ESP 的雙重安全能力:加密 × 認證
ESP 封包結構分為三個核心區域:Header(SPI + Sequence Number)、加密的 Payload,以及尾端的 ICV(Integrity Check Value)。Payload 區段使用對稱加密演算法(如 AES-GCM)保護資料機密性;ICV 則透過 HMAC(如 SHA-256)驗證封包完整性與來源真實性。相較之下,AH 協定僅提供認證而無加密能力,因此在需要同時滿足機密性與完整性的場景下,ESP 是 IPsec 唯一可行的選擇。Transport Mode 僅加密 IP Payload,Tunnel Mode 則將整個原始 IP 封包一併封裝,後者廣泛應用於 Site-to-Site VPN。
NAT-T:讓 ESP 穿越 NAT 的關鍵機制
ESP 直接承載於 IP 層(Protocol 50),本身不含 Port 欄位,導致 NAT 設備無法修改其內部位址,封包在 NAT 後端將無法正確還原。NAT-T(NAT Traversal,RFC 3947)透過在 ESP 外層額外封裝一個 UDP Header(Port 4500),讓 NAT 設備得以正常追蹤連線狀態。IKEv2 協商階段會自動偵測路徑上是否存在 NAT(透過 NAT-D Notify Payload),一旦偵測到 NAT,雙方即切換至 UDP 4500 進行後續通訊。這使得 ESP 在家用路由器、雲端環境等普遍 NAT 場景下得以正常運作。
💡 重點整理
- 唯一雙功協定:ESP 是 IPsec 中唯一同時提供加密(AES)與認證(HMAC)的協定。
- Protocol 50:ESP 直接運作於 IP 層,無 TCP/UDP Port,NAT 無法直接處理。
- NAT-T 解法:偵測到 NAT 後自動封裝 UDP Port 4500,確保穿越相容性。
- 模式選擇:Tunnel Mode 封裝完整原始封包,適合 VPN Gateway 部署場景。
ESP 憑藉加密與認證的雙重能力,成為現代 IPsec VPN 的核心基礎。搭配 NAT-T 機制,ESP 得以在複雜的網路環境中穩定運作,是構建安全通道不可或缺的協定。
📚 參考文獻
- RFC 4303 – IP Encapsulating Security Payload (ESP):https://datatracker.ietf.org/doc/html/rfc4303
- RFC 3947 – Negotiation of NAT-Traversal in the IKE:https://datatracker.ietf.org/doc/html/rfc3947
- NIST SP 800-77 Rev.1 – Guide to IPsec VPNs:https://csrc.nist.gov/publications/detail/sp/800-77/rev-1/final
⚠️ 本文內容基於撰寫時的最新資訊,實際應用時請參考官方文件的最新版本。
留言
張貼留言