電信級NAT運營商級NATCarrier-grade NAT,縮寫為CGNATCGN),也稱大規模NATlarge-scale NAT,縮寫LSN),是運營商為了緩解IPv4地址枯竭問題,向客戶分配私網IPv4地址而非公網地址,並通過自身的中間件完成的網絡地址轉換(NAT)操作。[1]電信級NAT可以讓更多的終端設備共享一個公共地址。

Thumb
電信級NAT示意圖。

電信級NAT的一種常見應用場景為NAT444。該場景中,客戶到公網的訪問將經歷兩次NAT:源地址由客戶的私有網段先轉換至運營商的私有網段,再轉換至運營商的公網IPv4地址。[2]

另一種電信級NAT的場景是雙棧精簡版(Dual-Stack Lite,也稱DS-Lite),其中運營商的網絡使用IPv6,因此只需要兩個IPv4網段。

共享地址空間

如果運營商使用RFC 1918中的地址作為電信級NAT的地址空間,那麼已經使用RFC 1918空間的客戶設備將存在與之衝突的風險,原因是如果網絡接口的內部地址與外部地址相同,路由和NAT將無法正常工作。

此情況促使一些運營商通過ARIN制定政策,希望為電信級NAT分配新的私有地址空間,但遭到了ARIN的推遲,直到IETF通過了備忘錄RFC 2860,明確了分配IP地址的若干細節問題。

IETF之後發布了RFC 6598,詳述了為電信級NAT部署使用的共享地址空間。ARIN根據此分配的需求將地址空間返還給了IANA[3]分配的地址塊為100.64.0.0/10,即100.64.0.0到100.127.255.255。[4]

優點

  • 最大化利用本已有限的IPv4地址空間。
  • 由於客戶的設備不直接存在於公網上,可能在一定程度上有助於保護其免受攻擊

缺點

電信級NAT遭受到了如下批評:

  • 與任何形式的NAT一樣,電信級NAT違背了端到端原則[5]
  • 由於其有狀態英語Stateful的特性,電信級NAT有顯著的安全性、可擴展性可靠性問題。
  • 電信級NAT使執法行動查閱變得更加困難,因為需要保留額外的NAT日誌。
  • 在電信級NAT下無法運行網絡託管服務。
  • 無法對需要公網IPv4地址的業務(如網絡託管服務)使用電信級NAT,因而其對解決IPv4地址枯竭問題作用有限。

電信級NAT通常會阻止客戶使用端口映射,因為網絡地址轉換(NAT)通常通過將網絡中NAT設備的端口映射到外部接口的其他端口來實現,這樣路由器才能將請求映射到到正確的設備。在電信級NAT網絡中,即使客戶端的路由器已配置端口轉發,運營商處運行電信級NAT的主路由器仍將阻止端口轉發,因此實際的端口將不是客戶配置的端口。[6]為了克服前者的缺點,端口控制協議英語Port Control Protocol(PCP)已在RFC 6887中標準化。

此外,在極少數情況下,可能會遇到IP地址封禁問題。以維基百科為例,系統會封禁破壞者的IP地址。如果該IP地址恰巧為某電信級NAT的出口地址,那麼該NAT下的正常用戶將同時被封鎖。[6]

參見

參考資料

外部連結

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.