跳至內容

電信級NAT

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
電信級NAT示意圖。

電信級NAT運營商級NATCarrier-grade NAT,縮寫為CGNATCGN),也稱大規模NATlarge-scale NAT,縮寫LSN),是運營商為了緩解IPv4地址枯竭問題,向客戶分配私網IPv4地址而非公網地址,並通過自身的中間件完成的網絡地址轉換(NAT)操作。[1]電信級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]

參見

[編輯]

參考資料

[編輯]
  1. ^ RFC 6264 - An Incremental Carrier-Grade NAT (CGN) for IPv6 Transition. [2016-12-31]. (原始內容存檔於2017-01-28). 
  2. ^ NAT444 (CGN/LSN) and What it Breaks. [2016-12-31]. (原始內容存檔於2012-05-18). 
  3. ^ Re: shared address space... a reality!. [13 September 2012]. (原始內容存檔於2017-02-03). 
  4. ^ 100.64.0.0/10 – Shared Transition Space. [2016-12-31]. (原始內容存檔於2012-05-03). 
  5. ^ Assessing the Impact of NAT444 on Network Applications. [2016-12-31]. (原始內容存檔於2020-06-02). 
  6. ^ 6.0 6.1 存档副本 (PDF). [2016-12-31]. (原始內容存檔 (PDF)於2016-03-04). 

外部連結

[編輯]