跳至主要內容

在學生宿舍中管理公用 IP 耗盡問題

本指南為網路架構師在密集型學生宿舍和多租戶 WiFi 環境中部署電信級 NAT (CGNAT) 與連接埠位址轉譯 (PAT) 以管理 IPv4 耗盡提供了決定性的技術參考。內容涵蓋 NAT444 架構、RFC 6598 共享位址空間、連接埠區塊分配 (PBA) 大小調整、符合 GDPR 規範的記錄策略,以及雙堆疊 IPv6 遷移路徑。對於在受限的公用 IP 池上管理數百或數千台同時線上設備的任何營運商而言,本指南至關重要,並提供了具體可行的設定指導、真實案例研究和投資報酬率 (ROI) 分析。

📖 10 分鐘閱讀📝 2,500 字數🔧 3 範例3 練習題📚 10 關鍵定義

收聽此指南

查看播客逐字稿
您好,歡迎收看 Purple 的技術簡報。我是今天的主持人,今天我們要探討多租戶網路面臨的一個關鍵基礎設施挑戰:管理學生住宿中的公用 IP 枯竭問題。 如果您是負責營運高密度環境(無論是學生住宿、旅宿業,還是大型零售商場)的網路架構師、CTO 或 IT 經理,您一定深知 IPv4 枯竭的痛苦。您有數千台裝置同時在線、逐漸縮減的公用 IP 池,以及必須維持高吞吐量和無縫連線的持續壓力。今天,我們將深入探討電信級 NAT(即 CGNAT)、連接埠位址轉換(PAT),以及如何建構一個既不犧牲效能也不影響合規性的可擴充解決方案。 讓我們來瞭解一下背景。在典型的學生住宿大樓中,單一住戶會攜帶智慧型手機、筆記型電腦、智慧電視、遊戲主機,可能還有一台智慧喇叭。每個用戶就有五到七台裝置。乘以五百個或一千個床位,您面對的就是龐大的並行工作階段負載。在此規模下,標準的 NAT 或 PAT - 連接埠位址轉換 - 通常會崩潰。為什麼?因為單一公用 IP 只有 65,535 個 TCP 和 UDP 連接埠可用。當數千台裝置為了雲端同步、即時通訊軟體和串流媒體而開啟多個背景工作階段時,連接埠很快就會枯竭。結果就是?連線中斷、使用者體驗下降,以及客服工單激增。 這就是 CGNAT(特別是 NAT 444)派上用場的地方。與標準的單層 NAT 不同,CGNAT 引入了第二層轉換。訂戶裝置會從 RFC 1918 空間(例如 192.168.x.x)取得私有 IP。這些 IP 會由無線基地台或 CPE 轉換為共享的電信級位址空間 - 特別是 RFC 6598,即 100.64.0.0/10 網段。最後,CGNAT 閘道器再將這些位址轉換為公用網際網路 IP。 讓我們進入技術深潛。我們該如何有效地部署這個方案? 首先是連接埠區塊分配(PBA)。這是穩定部署 CGNAT 的基石。與其逐一動態分配連接埠(這會產生龐大的記錄檔開銷並使連接埠空間零碎化),不如為每個訂戶分配一個連續的連接埠區塊。 業界的最佳實踐,也是我們通常針對高密度環境所建議的,是為每個訂戶分配大約五百個連接埠。這達到了正確的平衡。這足以處理現代網頁應用程式,又不會耗盡資源池。以每位用戶五百個連接埠計算,單一公用 IPv4 位址最多可支援一百二十八個訂戶。如果您進一步推高,例如到二百五十六個訂戶,您就必須將連接埠分配降至二百五十個,這會顯著增加在尖峰使用時段(例如晚間學習時間或週末遊戲時段)工作階段中斷的風險。 現在,讓我們來談談實作建議與常見陷阱。 陷阱一:忽略工作階段記錄與合規性。在英國和歐洲,根據 GDPR 和合法攔截法規,您必須能夠將公共 IP 和連接埠追溯到特定時間的特定使用者。如果您使用動態連接埠分配,您的 CGNAT 閘道器將為每個工作階段的建立和終止產生記錄條目。在大型網路中,這每天會產生數 TB 的 syslog 資料,這會徹底壓垮您的記錄基礎架構。 解決方案?同樣是連接埠區塊分配(PBA)。使用 PBA,您只需在向使用者分配區塊以及釋放該區塊時進行記錄。這最多可減少百分之九十八的記錄量,使合規管理變得易於處理且具備成本效益。 陷阱二:CAPTCHA 驗證碼問題。當一百二十八名使用者共用同一個公共 IP 時,大型內容傳遞網路和搜尋引擎可能會將該流量標記為可疑流量,並將其視為殭屍網路。使用者會開始收到無休止的 CAPTCHA 驗證提示。為了緩解此問題,請確保您的 CGNAT 閘道器是分散式的,並在特定 IP 位址被列入黑名單時輪換公共 IP 位址池。 接下來,讓我們針對首席架構師常提出的問題進行快速問答。 問題:我們是否應該直接跳過 CGNAT 並升級到 IPv6? 回答:在理想情況下,是的。但學生宿舍的現實情況是,許多舊型裝置 - 舊款遊戲主機、廉價的智慧插座 - 仍然僅支援 IPv4。建議的架構是雙疊堆(Dual-Stack)部署。在執行原生 IPv6 的同時,透過 CGNAT 運行 IPv4。這可以將高達百分之六十到七十的流量(例如 YouTube、Netflix 和 Facebook)直接分流到 IPv6,從而大幅減輕 IPv4 NAT 位址池的負載。 問題:這對我們的 Purple WiFi 部署有何影響? 回答:它可以無縫整合。Purple 作為身分識別提供者,負責處理驗證和分析層。無論是雙疊堆還是 CGNAT,底層的 IP 路由對 Purple 入口網站都是透明的。如果您需要追溯使用者工作階段以符合合規性,只需確保您的 RADIUS 計費和 syslog 正確關聯即可。 總結來說:IPv4 枯竭是現實,但它是可以管理的。 一:使用搭配 RFC 6598 共用位址空間的 NAT 444。 二:實施連接埠區塊分配,每位訂戶大約分配五百個連接埠。 三:將訂戶與 IP 的比例保持在一百二十八比一或以下。 四:部署 IPv6 雙疊堆以分流流量。 五:確保您的記錄策略符合合法攔截要求,同時不會壓垮您的 SIEM。 管理學生宿舍公共 IP 枯竭的技術簡報到此結束。如需詳細的架構圖、設定範例以及更多關於多租戶 WiFi 的深入解析,請務必查看 Purple 官方網站上的完整技術參考指南。感謝您的收聽。

header_image.png

執行摘要

隨著 IPv4 位址枯竭的速度加快,在密集的多租戶環境中 - 例如學生宿舍、 餐飲旅宿業 和大型公共場所 - IT 經理和網路架構師正面臨重大的營運挑戰。一個擁有 1,000 名住戶的單一學生宿舍區,可能會產生超過 7,000 台同時連線的 IP 裝置。標準的連接埠位址轉換 (PAT) 架構在此規模下會失效,導致連接埠枯竭、連線中斷以及使用者體驗下降。

本技術參考指南概述了使用 NAT444 模型管理 IP 枯竭的電信級 NAT (CGNAT) 架構與部署。透過利用 RFC 6598 共享位址空間並實施策略性連接埠區塊分配 (PBA),網路營運商可以實現高訂戶密度 - 每個公用 IP 最多可容納 128 個使用者 - 同時保持對 GDPR 和合法攔截法規的合規性。對於使用 Guest WiFiWiFi Analytics 等平台的場域,穩健的 CGNAT 架構可確保穩定的連線能力和準確的數據收集,而無需支付購買額外 IPv4 位址區塊的資本支出 (CapEx)。

技術深入探討

學生宿舍的規模問題

現代學生宿舍的裝置密度幾乎與任何其他託管網路環境都不同。一個典型的住戶通常會連接智慧型手機、筆記型電腦、智慧電視、遊戲主機和至少一台智慧家庭裝置。在每位住戶擁有五到七台裝置的情況下,一個擁有 1,000 個床位的校區所呈現的同時工作階段負載,甚至讓同等規模的飯店都相形見絀。使用模式更使這項挑戰雪上加霜:晚間尖峰時段 (18:00 - 23:00) 的遊戲、影片串流和社群媒體會出現幾乎同時發生的高頻寬活動,且所有活動都維持著持續性的背景連線。

IPv4 位址空間在區域網際網路註冊機構 (RIR) 層級上已實際上枯竭。負責管理歐洲和中東地區分配的 RIPE NCC 已於 2019 年達到了其最後的 /8 分配政策。在公開市場上取得額外公用 IPv4 區塊的成本目前介於每個位址 40 到 60 美元之間 - 對於管理數百個子網路的任何營運商來說,這都是一筆令人望而卻步的資本支出 (CapEx)。

標準 PAT 的限制

在傳統的單一站點部署中,連接埠位址轉換 (PAT) 會將整個私有 LAN (RFC 1918 空間:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16) 映射到單一公用 IP 位址。單一 IPv4 位址在 TCP 和 UDP 中擁有 65,535 個可用連接埠。雖然這對於小型辦公室來說已經足夠,但在高密度的學生宿舍中,背景應用程式 (雲端同步、即時通訊平台、串流媒體服務) 的激增,意味著單一用戶可以輕鬆消耗數百個同時連線的連接埠。當 PAT 邊緣路由器耗盡其可用連接埠時,新的工作階段請求將會被默默捨棄。這會表現為應用程式逾時、VoIP 通話失敗以及說明台處理票證的增加。

CGNAT (NAT444) 架構

為了突破單層 NAT 的限制,企業網路必須採用電信級 NAT 架構,特別是 NAT444 模型。此名稱是指轉換鏈中涉及的三層 IPv4 位址空間。

第 1 層 - CPE / 存取點層: 訂閱者裝置會被分配到來自 RFC 1918 空間 (例如 192.168.x.x) 的私有 IP 位址。存取點或用戶端設備 (CPE) 執行第一次 NAT 轉換。

第 2 層 - CGNAT 閘道器: CPE 將私有 RFC 1918 位址轉換為 RFC 6598 共享位址空間 (100.64.0.0/10)。此中間空間專門保留用於服務供應商基礎設施與 CGNAT 閘道器之間。使用 RFC 6598 代替另一個 RFC 1918 範圍可防止複雜多租戶環境中的位址重疊和路由衝突。

第 3 層 - 公用網際網路: CGNAT 閘道器執行從 RFC 6598 位址到共享公用 IPv4 位址的最終轉換。這是外部服務可見的位址。

cgnat_pat_architecture_comparison.png

連接埠區塊分配:關鍵設計決策

CGNAT 部署中最重要的設定選擇是連接埠分配策略。存在兩種方法:

動態連接埠分配 (DPA): 連接埠是從共享池中按工作階段進行分配。這最大限度地提高了連接埠利用效率,但會為每個工作階段的建立和拆除產生記錄項目 - 在大規模環境中造成了巨大的合規性和基礎設施負擔。

連接埠區塊分配 (PBA): 每個訂閱者在啟動其第一個工作階段時都會被分配到一個連續的連接埠區塊。該區塊保持分配狀態,直到訂閱者的工作階段終止。這種方法僅在分配和釋放區塊時產生記錄,從而將記錄量減少高達 98%。

| 設定參數 | 建議值 | 原理 || 每個用戶的連接埠數 (PBA 區塊大小) | 500 | 足以因應現代網頁應用程式的使用,且不會耗盡連接埠池 || 每個公有 IP 的最大用戶數 | 128 | 在每個 IP 有 64,000 個可用連接埠的情況下,確保每位使用者擁有 500 個以上的連接埠 | | 每個用戶的最大並行工作階段數 | 2,000 | 防止單一受感染的裝置耗盡整個連接埠池 | | 工作階段逾時 (TCP 已建立) | 7,440 秒 (RFC 5382) | 符合 IETF 對 NAT 行為的建議規範 | | 工作階段逾時 (UDP) | 300 秒 | 防止過期的 UDP 對應佔用連接埠空間 |

業界基準: NFWare 是一家在超過 100 家 ISP 部署過服務的專業 CGNAT 廠商,他們建議每個公有 IP 最多支援 128 個用戶,且每個用戶分配 500 個連接埠。如果超出這個限制 - 例如將每個 IP 擴展到 256 個用戶,而每人僅分配 250 個連接埠 - 將會大幅增加尖峰負載期間工作階段中斷的風險。

雙疊架構 IPv6 作為長期轉移方案

CGNAT 是一種緩解策略,而非永久解決方案。正確的架構方向是部署雙疊架構 (Dual-Stack):在原生執行 IPv6 的同時,搭配 CGNAT 運行 IPv4。現代裝置和各大 CDN (Google、Netflix、Meta、Cloudflare) 在可用時都會強烈偏好使用 IPv6。在設定完善的雙疊架構環境中,高達 60% 至 70% 的總流量可以分流至 IPv6,從而大幅減輕 IPv4 CGNAT 池的負載,並延長其有效使用壽命。

對於極度重視舊版裝置支援的 醫療交通運輸 環境,雙疊架構也提供了一條清晰的轉移路徑:支援 IPv6 的裝置可以進行原生轉移,而僅支援舊版 IPv4 的裝置則可繼續透過 CGNAT 運作,且不會對使用者造成任何干擾。

ip_exhaustion_solution_matrix.png

實作指南

步驟 1:審計您目前的 IP 分配與裝置密度

在部署 CGNAT 之前,請先建立基準。從您現有的網路管理系統中收集以下數據:

  • 每個子網路的尖峰並行裝置數量
  • 每個裝置的平均與尖峰工作階段數
  • 目前的公有 IP 使用率百分比
  • 現有的 NAT 逾時設定

這些數據將直接決定您的 PBA 區塊大小與公有 IP 池的需求。

步驟 2:設計 RFC 6598 傳輸網路

分配 100.64.0.0/10 區塊給電信級傳輸網路。規劃子網路劃分以符合您的校園或園區拓撲 - 通常每個建築物或存取層分段分配一個 /24/23。確保您的路由基礎架構不會將 RFC 6598 前綴洩露到公網或對等互連夥伴。

步驟 3:部署與設定 CGNAT 閘道器

CGNAT 閘道器通常是專用硬體設備,或是執行於通用伺服器硬體上的虛擬化網路功能 (VNF)。關鍵設定參數包括:

  • NAT 位址池: 將您的公用 IPv4 區段分配給 NAT 位址池。確保該位址池大小適合您目標的訂戶與 IP 比例。
  • PBA 設定: 將區段大小設定為 500 個連接埠。將每個訂戶的最大區段數設定為 1(如果訂戶耗盡其初始區段,可以選擇將其擴展到 2,而不是增加基礎區段大小)。
  • 記錄檔: 設定 syslog 輸出到您的 SIEM。使用 PBA 時,每個記錄項目都會記錄:訂戶內部 IP、分配的公用 IP、分配的連接埠區段起點、區段終點、分配時間戳記以及釋放時間戳記。
  • 工作階段限制: 限制每個訂戶最多 2,000 個同時運作的工作階段,以防止濫用。

步驟 4:與身份識別及驗證層整合

在使用 Guest WiFi 平台的環境中,Captive Portal 驗證必須發生在第 1 層 NAT 邊界或之前。這可確保在流量聚合到 CGNAT 位址池之前,身分識別提供者能夠精確地將 MAC 位址和使用者憑證對應到不重複的內部 IP 位址。Purple 的平台在存取點層級處理此問題,維持清晰的使用者與 IP 綁定關係,並在整個 NAT 轉換鏈中保持不變。

對於無密碼存取部署 - 如 How a WiFi Assistant Enables Passwordless Access in 2026 中所述 - 適用相同的原則:身分識別綁定必須建立在 CGNAT 閘道器的上游,以確保精確的工作階段歸屬。

步驟 5:設定 IPv6 雙疊(Dual-Stack)

在所有存取點上啟用 IPv6,並透過 DHCPv6 或 SLAAC 為每個 VLAN 分配一個 /64 前綴。透過您的上游提供者宣告 IPv6 路由。在縮減 IPv4 NAT 位址池的大小之前,請先確認主要 CDN 流量(Google、Netflix、YouTube)已解析為 AAAA 記錄並透過 IPv6 進行路由。

最佳實踐

盡可能實作確定性 NAT。 確定性 NAT 在訂戶的內部 IP 位址與其分配的公用 IP 和連接埠區段之間使用演算法對應。由於這種對應可以透過數學方式計算,因此無需維護或記錄工作階段表 - 為了合法攔截的目的,可以根據需要對該對應進行反向工程。這是注重法規遵循的部署之黃金標準。

分散 CGNAT 閘道器負載。 避免將所有 CGNAT 流量集中在單一設備上。將閘道器分散在整個校園或建築物中,以防止單一節點故障。分散式閘道器還能降低 IP 信譽風險:如果位址池中的某個公用 IP 因可疑的流量模式而被 CDN 標記(例如出現驗證碼 CAPTCHA 問題),則只有一部分使用者會受到影響。 主動監控 IP 信譽。 訂閱 IP 信譽資料來源(例如 Spamhaus、SURBL)並監控您的公用 NAT 池 IP。保留一個乾淨 IP 的備用池,以便在作用中位址被列入黑名單時進行輪替。這在學生宿舍中尤為關鍵,因為少數使用者的行為可能會觸發濫用標記。

強制執行每位訂閱者工作階段限制。 嚴格限制每位訂閱者最多 2,000 個並行工作階段,可防止單一受感染的裝置(例如參與 DDoS 放大攻擊的裝置)耗盡分配給該公用 IP 的整個連接埠區塊。如需監控網路效能的更多詳細資訊,請參閱我們的 如何測量 WiFi 訊號強度與覆蓋範圍 指南。

與 IEEE 802.1X 存取控制保持一致。 在存取層部署基於 IEEE 802.1X 連接埠的驗證,可確保只有經過驗證的裝置才能獲得 IP 分配。這降低了未授權裝置消耗連接埠分配的風險,並為合法攔截目的提供了清晰的稽核軌跡。

疑難排解與風險緩釋

記錄與合規負擔

在英國和歐洲,根據 GDPR 和 2016 年調查權力法案(Investigatory Powers Act 2016),網路營運商必須能夠將公用 IP 位址和連接埠號碼追溯到特定時間戳記的特定使用者。這是一項不可妥協的法律義務。

風險: 使用動態 CGNAT,記錄每次工作階段的建立和終止每天會產生數 TB 的 syslog 資料。擁有 1,000 名使用者且採用動態分配的部署每天可產生 5 億條記錄條目。這會使 SIEM 基礎設施負荷過重、增加儲存成本,並使鑑識調查變得不切實際。

緩釋措施: 連接埠區塊分配(PBA)最多可減少 98% 的記錄量。使用 PBA,您只需記錄區塊分配和釋放事件 - 通常每個使用者工作階段只需兩條記錄條目,而不是數百或數千條。確保您的 SIEM 將這些記錄保留至少 12 個月,以符合英國的資料保留要求。

CAPTCHA 與 IP 信譽問題

當 128 名使用者共用單一公用 IP 時,彙整的流量可能會觸發主流網站上的速率限制或反機器人保護。Google 的 reCAPTCHA、Cloudflare 的機器人管理及類似系統使用基於 IP 的啟發式演算法,可能會將共用的 CGNAT IP 誤判為機器人來源。

緩釋措施: 將您的 CGNAT 池分散到多個公用 IP。主動監控信譽分數。考慮部署 DNS-over-HTTPS (DoH) 或 DNS-over-TLS (DoT) 以防止基於 DNS 的信譽問題。向使用者說明,在共用 IP 的環境中,偶爾出現 CAPTCHA 驗證是已知行為。

應用程式相容性問題

某些應用程式(特別是點對點通訊協定、特定 VoIP 實作和較舊的遊戲平台)依賴持續性連接埠對應或輸入連線初始化。這些在雙重 NAT 下可能會無法運作。

緩解措施: 針對 VoIP,請確保您的 CGNAT 閘道支援適用於 SIP 的 ALG (Application Layer Gateway)。針對遊戲,請考慮實施 UPnP 代理或具備獨立且密度較低 NAT 池的專用遊戲 VLAN。針對銷售點系統需要入站連線的 零售 環境,請將這些裝置放置在完全繞過 CGNAT 層的獨立 VLAN 上。

投資報酬率與商業影響

資本支出 (CapEx) 節省

部署 CGNAT 可提供即時且龐大的 CapEx 節省。以每個 IPv4 位址 50 美元的市場價格計算,一所擁有 5,000 個床位、需要 1:1 裝置對 IP 比例的大學需要購買大約 35,000 個 IP 位址 - 成本高達 175 萬美元。透過部署比例為 128:1 的 CGNAT,相同的部署僅需要不到 300 個公共 IP,從而將 IP 獲取成本降低至大約 15,000 美元。

即使將 CGNAT 閘道硬體或虛擬化網路功能的成本(校園規模部署通常為 20,000 到 80,000 美元)估算在內,淨節省的費用依然非常顯著。

營運支出 (OpEx) 減少

穩定的連線能力能直接減少客服中心的管理負擔。連接埠耗盡事件 - 大規模標準 PAT 的主要故障模式 - 會產生大量的支援工單。一個配置妥當並具有適當工作階段限制和 PBA 的 CGNAT 部署可消除此故障模式,進而預估能減少 30% 到 40% 網路相關的客服中心工作量。

學生宿舍市場的競爭優勢

在競爭激烈的學生宿舍市場中,網路品質是潛在租客的主要選擇標準。如果業者能夠展示一致且高吞吐量的連線能力 - 透過顯示運作時間、工作階段品質和裝置密度指標的 WiFi Analytics 儀表板進行驗證 - 就能獲得更高的租金收益並實現更高的入住率。這種基礎架構的穩定性也是部署先進定位服務的基石,誠如 Purple launched offline maps mode for seamless, secure navigation for WiFi hotspots 中所強調的。

案例研究 1:擁有 800 個床位的大學宿舍

一所由英國大學營運、擁有 800 個床位的宿舍,在傍晚的尖峰時段一直遇到慢速與斷線的連線問題。調查顯示,其單層 PAT 配置使用 /29 公共子網路(6 個可用 IP),在每天傍晚 19:30 就會耗盡所有可用連接埠。該業者部署了具有 PBA 的 CGNAT 解決方案(每個訂戶 500 個連接埠,每個 IP 支援 128 個訂戶),升級到 /27 公共子網路(30 個可用 IP),並啟用了 IPv6 雙疊。部署後的指標顯示,與最初的動態分配試點相比,連接埠耗盡事件減少了 94%,網路相關客服工單減少了 38%,CGNAT 日誌量減少了 65%。在部署後的 60 天內,IPv6 分流率達到了 62%。

案例研究 2:擁有 1,200 間客房的專用學生宿舍 (PBSA) 營運商

一家在英國兩個城市管理三個場點的私營 PBSA 營運商,在開設第四個場點之前,需要標準化其網路架構。其現有的基礎設施混合使用單層 NAT 和臨時的 VLAN 區段,且缺乏一致的記錄策略。我們在所有三個場點部署了具有確定性 NAT 的 CGNAT,實現了無需對話記錄開銷、可透過數學計算的訂戶與 IP 對應。此方法在合法攔截合規性方面滿足了營運商法務團隊的要求,消除了對話記錄的 SIEM 儲存成本,並為第四個場點提供了致的架構範本。該營運商還整合了 Purple 的 Guest WiFi 平台以進行 Captive Portal 驗證,在 CGNAT 閘道上游建立身分綁定,以確保分析報告中的使用者歸屬精確無誤。

關鍵定義

CGNAT (Carrier-Grade NAT)

一種網路架構,營運商在集中式閘道上進行網路位址轉換,使多個用戶能夠共用單一公用 IPv4 位址。定義於 RFC 6264 和 RFC 6888。亦稱為大規模 NAT (LSN) 或 CGN。

當單一公用 IP 不足以服務網路上的所有裝置時,IT 團隊就會遇到 CGNAT。在學生宿舍中,CGNAT 是在不購買額外公用位址空間的情況下,管理 IPv4 耗盡的主要機制。

NAT444

一種特定的 CGNAT 拓撲,包含三層 IPv4 位址空間:用戶私有位址 (RFC 1918)、電信級共享位址 (RFC 6598) 和公用網際網路位址。其名稱是指所跨越的三個 IPv4 網路。

NAT444 是多租戶環境中部署 CGNAT 的標準架構。網路架構師必須理解此三層模型,以正確設計中間網路並避免位址重疊。

RFC 6598 共享位址空間

由 IANA 保留用於 CPE 與 CGNAT 閘道之間中間網路的 100.64.0.0/10 IPv4 位址區塊(100.64.0.0 至 100.127.255.255)。此空間在公用網際網路上不可路由,專為防止 NAT444 部署中的位址衝突而設計。

IT 團隊必須針對中間 CGNAT 網路使用 RFC 6598 - 而非 RFC 1918。在此網路區段使用 RFC 1918 會在使用相同 RFC 1918 範圍的用戶網路中產生位址重疊風險。

連接埠區塊分配 (PBA)

一種 CGNAT 連接埠分配策略,其中在用戶的連線階段期間,向其分配一個連續的連接埠區塊(例如 500 個連接埠),而不是為每個連線單獨分配連接埠。定義於 RFC 7422。

PBA 是符合 GDPR 規範的 CGNAT 部署之推薦方法。與動態連接埠分配相比,它可減少高達 98% 的記錄處理開銷,使大規模遵守合法攔截規範在營運上切實可行。

確定性 NAT

一種 CGNAT 設定,其中用戶的內部 IP 位址與其分配的公用 IP 和連接埠區塊之間的對應關係是透過演算法計算出來的,而無需維護連線階段表。此對應關係在數學上是可逆的,無需擷取記錄即可識別用戶。

對於注重合規性的部署,確定性 NAT 是黃金標準。它完全消除了記錄處理開銷,同時滿足合法攔截要求,因為使用已知演算法即可從公用 IP、連接埠和時間戳記識別用戶。

PAT (Port Address Translation)

網路位址轉換的一種形式,其中透過使用唯一的來源連接埠號碼來區分連線,將多個私有 IP 位址對應到單一公用 IP 位址。亦稱為 NAT 負載過載(overload)或多對一 NAT。

PAT 是大多數企業邊緣路由器中使用的標準單一級別 NAT。它是 CGNAT 的前身,由於大規模部署時連接埠會耗盡,因此不適用於高密度的多租戶環境。

連線階段表

由 NAT 閘道器維護的數據結構,用於記錄每個活動連線的內部(私有)IP 位址和連接埠,與外部(公用)IP 位址和連接埠之間的對應關係。工作階段表(session table)是 CGNAT 所消耗的主要記憶體與處理資源。

連線階段表大小是 CGNAT 閘道關鍵的容量規劃參數。擁有 1,000 個用戶且每個用戶最多 2,000 個連線階段的部署,至少需要 200 萬個項目的連線階段表容量。連線階段表容量不足會導致連線失敗。

雙疊代 (Dual-Stack)

一種網路設定,其中 IPv4 和 IPv6 協定在相同的網路基礎設施和終端設備上同時啟用。具有雙疊代功能的設備在連線到支援 IPv6 的目的地時,會優先使用 IPv6。

雙疊代是 CGNAT 部署中推薦的過渡策略。透過將支援 IPv6 的流量分流至原生 IPv6 路徑,雙疊代可減輕 IPv4 CGNAT 位址池的負載,並提供向 IPv6 為主網路遷移的路徑。

RFC 1918 私有位址空間

保留用於私有網路的三個 IPv4 位址範圍:10.0.0.0/8、172.16.0.0/12 和 192.168.0.0/16。這些位址在公用網際網路上無法路由,僅用於內部網路定址。

在 CGNAT 部署中,RFC 1918 位址用於訂戶設備的位址分配。網路架構師必須確保訂戶網路中使用的 RFC 1918 範圍不會與中間 CGNAT 網路中使用的範圍重疊 - 這也是中間層使用 RFC 6598 的原因。

合法攔截

執法機構依法授權對通訊進行的攔截。在英國,這受 2016 年調查權限法(Investigatory Powers Act 2016)管轄。網路營運商在收到合法攔截請求時,必須能夠識別與特定公用 IP 位址、連接埠和時間戳記相關聯的訂戶。

符合合法攔截合規性是 CGNAT 記錄日誌需求的主要驅動因素。營運商必須保留足夠的日誌,以便從公用 IP 和連接埠數據中識別訂戶。PBA 和確定性 NAT 是使此操作能夠在大規模下可行且不會使日誌記錄基礎設施過載的兩種架構。

範例

一個擁有 600 個床位的學生住宿區目前使用單一 /29 公用子網路(6 個可用 IP)搭配標準 PAT。在晚上尖峰時段(19:00 至 23:00)期間,使用者回報了廣泛的連線失敗。網路團隊已確認 PAT 路由器上出現連接埠耗盡。營運商有 CGNAT 閘道硬體的預算,但除了 /27(30 個可用 IP)之外,無法取得額外的公用 IP。請設計一個 CGNAT 部署方案,以消除連接埠耗盡問題,並支援未來增長至 900 個床位。

步驟 1 - 基準評估:以 600 個床位且每位住戶擁有 5 台設備計算,尖峰同時線上設備數約為 3,000 台。在每位訂戶 500 個連接埠 (PBA) 的情況下,每個公用 IP 可支援 128 位訂戶。利用 /27 中的 30 個可用 IP,理論上最大訂戶容量為 3,840 - 足以滿足 900 個床位且每位住戶擁有 4.3 台設備的需求。步驟 2 - RFC 6598 中介網路:分配 100.64.0.0/20 用於中介電信級網路,為 CPE 到 CGNAT 閘道的流量提供 4,096 個位址。每個大樓翼部的子網路:100.64.0.0/24、100.64.1.0/24 等。步驟 3 - CGNAT 閘道大小調整:部署一台連線階段表容量至少為 768,000 個條目(3,000 位訂戶 × 每位訂戶最大 2,000 個連線階段,並保留 20% 緩衝空間)的 CGNAT 閘道。設定 500 個連接埠區塊的 PBA。將每位訂戶的最大區塊數設為 1,並允許超過 500 個同時線上連線階段的訂戶溢出至 2 個區塊。步驟 4 - IPv6 雙堆疊:在所有無線基地台啟用 IPv6。透過 SLAAC 分配 /64 前綴。目標是在 90 天內實現 60% 的 IPv6 卸載,這可有效將 IPv4 CGNAT 負載降低至 1,200 位同時線上 IPv4 訂戶 - 遠在 /27 容量範圍內。步驟 5 - 記錄:將 syslog 設定為僅傳送 PBA 區塊分配/釋放事件至 SIEM。記錄至少保留 12 個月。步驟 6 - 連線階段限制:在 CGNAT 閘道上對每位訂戶強制執行最大 2,000 個連線階段,以防止濫用。

考官評語: 此解決方案正確指出 /27(30 個 IP × 每 IP 128 位訂戶 = 3,840 容量)足以滿足 900 個床位的增長目標,從而避免了取得額外 IP 的需要。IPv6 雙堆疊組件至關重要 - 如果沒有它,IPv4 池將面臨持續的壓力。每位訂戶 500 個連接埠的 PBA 設定是業界標準建議,並直接解決了連接埠耗盡的失敗模式。連線階段表大小計算(3,000 × 2,000 × 1.2 緩衝)是一種實用的工程方法。另一種方法(在公開市場上為 /24 購買額外的 IPv4 空間)將花費約 150,000 美元,當 CGNAT 能以極低成本達成相同結果時,這筆費用顯然是不合理的。

一家 PBSA 營運商在擁有 1,000 個床位的站點中部署了 CGNAT,並採用動態連接埠分配。其法務團隊指出,目前的記錄方式每天會產生 400GB 的 syslog 資料,這讓 SIEM 負荷過重,也導致執法部門的合法攔截請求變得難以執行。請重新設計記錄策略,以符合英國合法攔截義務,同時將記錄量減少到可管理的水平。

步驟 1 - 遷移至 Port Block Allocation:將動態連接埠分配替換為每個訂閱用戶 500 個連接埠的 PBA。這會立即將日誌事件從每個工作階段一個減少到每個區段分配一個與每個區段釋放一個。對於擁有 1,000 名使用者且每人每天平均有 3 次區段分配/釋放週期的部署,這每天大約會產生 6,000 個日誌項目 - 較動態分配基準減少了 99% 以上。步驟 2 - 日誌結構:確保每個 PBA 日誌項目擷取:(a) 訂閱用戶內部 IP 位址、(b) 分配的公有 IP 位址、(c) 分配的連接埠區段起點和終點、(d) 區段分配時間戳記 (UTC)、(e) 區段釋放時間戳記 (UTC)、(f) 訂閱用戶識別碼 (MAC 位址或 RADIUS 使用者名稱)。步驟 3 - 確定性 NAT 選項:如果 CGNAT 平台支援,請遷移至確定性 NAT。這完全消除了例行操作的日誌記錄,因為對應關係在數學上是可以計算的。僅針對非確定性溢位情況保留 PBA 日誌。步驟 4 - 保留原則:將日誌在具備防竄改功能的日誌儲存空間 (例如,一次寫入的 S3 相容物件儲存空間) 中保留 12 個月。實施存取控制,以便為合法攔截請求檢索日誌時需要雙重授權。步驟 5 - 事件回應程序:記錄回應合法攔截請求的程序,包括在確定性 NAT 下,從公有 IP、連接埠和時間戳記反向計算訂閱用戶的公式。

考官評語: 此處的關鍵見解在於,動態連接埠分配是日誌記錄問題的根本原因,而非 CGNAT 本身。遷移至 PBA 是主要的干預措施。從每天 400GB 減少到大約每天 1MB (6,000 個日誌項目) 是切合實際的,且符合已發布的業界基準。確定性 NAT 選項是最佳的長期解決方案,但需要平台支援 - 並非所有 CGNAT 設備都實作了此功能。存取日誌的雙重授權要求是 GDPR 的最佳實踐,可確保合法攔截日誌檢索是可稽核的。此方法同時滿足了《2016 年調查權力法案》的要求與 GDPR 最小化資料收集原則。

一所大學的 IT 團隊回報,學生在 Google、Netflix 和遊戲平台上頻繁遇到 CAPTCHA 驗證挑戰和速率限制。調查顯示,有 200 名學生透過 CGNAT 共用單個公有 IP 位址。該團隊被告知,短期內無法取得更多公有 IP。在不改變 IP 分配的情況下,可以實施哪些立即的緩解措施?

步驟 1 - 降低訂閱用戶密度:200:1 的比例是主要原因。即使沒有額外的公有 IP,也請檢視 CGNAT 位址池是否得到高效利用。確保完全啟用 IPv6 雙疊(dual-stack)- 如果 60% 的流量分流到 IPv6,則每個 IP 的有效 IPv4 訂閱用戶數會降至約 80 個,遠低於 128:1 的建議閾值。步驟 2 - IP 輪換:為公有 IP 位址池實施輪換原則。如果 CGNAT 閘道支援,請設定為每個訂閱用戶群組分配的公有 IP 進行定期輪換。這可防止任何單一 IP 累積持久性的不良信譽。步驟 3 - DNS 最佳化:確保提供給用戶端的 DNS 解析器優先傳回 AAAA 記錄。許多 CAPTCHA 觸發因素都是基於 DNS 的 - 如果用戶端不必要地將服務解析為 IPv4 位址,則在原本可以使用原生 IPv6 的情況下,流量仍會經由 CGNAT 進行路由。步驟 4 - 工作階段逾時調整:將非 DNS UDP 流量的 UDP 工作階段逾時時間從預設值 (通常為 300 秒) 縮短至 60 秒。這可以更快地釋放連接埠空間,並從外部服務的角度減少表觀的工作階段數量。步驟 5 - 與受影響的平台溝通:針對持久性的黑名單問題,向主要的 IP 信譽資料庫 (Spamhaus、SURBL) 提交移除申請。說明該 IP 是為合法教育機構提供服務的共用 CGNAT 位址。

考官評語: 此情境測試考生在不使用增加 IP 採購這一主要手段的情況下,減輕 IP 信譽問題的能力。IPv6 雙疊架構解決方案是影響最顯著的干預措施,應作為首要建議。DNS AAAA 偏好設定是一個細微但有效的最佳化調整,許多營運商常忽略此點。連線階段逾時(Session timeout)調整是有效的短期措施,但伴隨風險 - 過於激進的逾時可能會中斷具狀態(stateful)的應用程式。除名申請流程是正當的營運程序,但屬於被動應對而非主動預防。正確的長期解決方案仍是將用戶與 IP 的比例降低至 128:1 或以下。

練習題

Q1. 一個擁有 2,000 個床位的學生宿舍校區有一個 /26 公用子網路(62 個可用 IP)。網路團隊正在規劃 CGNAT 部署。請計算:(a) 在推薦的 128:1 比例下可支援的最大訂戶數、(b) 可用的總連接埠容量、(c) 推薦的 PBA 區塊大小,以及 (d) 現有的 /26 是否足夠,或者是否需要額外的 IP。

提示:從 /26 中可用的總 IP 開始,然後套用 128:1 的訂戶比例。在現實的每位房客設備比例下,將結果與 2,000 床的設備數量進行比較。在最終建議中考慮 IPv6 雙疊代分流。

查看標準答案

一個 /26 提供 62 個可用公用 IP。在每 IP 128 個訂戶的比例下,最大 IPv4 CGNAT 容量為 62 × 128 = 7,936 個訂戶。以每位房客 5 台設備計算,2,000 個床位會產生大約 10,000 台並行設備。在沒有 IPv6 的情況下,/26 是不夠的 (7,936 < 10,000)。然而,若透過 IPv6 雙疊代實現 60% 的分流,實際的 IPv4 負載會降至大約 4,000 台設備 - 遠在 /26 的 7,936 容量限制之內。推薦的 PBA 區塊大小為每個訂戶 500 個連接埠。總連接埠容量:62 個 IP × 64,000 個可用連接埠 = 3,968,000 個連接埠。在每個訂戶 500 個連接埠的情況下:3,968,000 / 500 = 最大 7,936 個訂戶。建議:部署啟用 PBA 且每個訂戶 500 個連接埠的 CGNAT,將啟用 IPv6 雙疊代作為前提條件,這樣現有的 /26 即足夠。如果無法保證 IPv6 分流率在 50% 以上,請獲取額外的 /27 作為緩衝。

Q2. 某個擁有 500 床位的學生宿舍所部署的 CGNAT 正引發合規性疑慮。營運商的法律團隊已收到執法部門針對特定公用 IP 位址 (203.0.113.45)、連接埠 51432、時間戳記為 2025-11-15 21:47:33 UTC 的合法攔截請求。該 CGNAT 閘道器配置了動態連接埠分配。SIEM 包含 180 天的記錄,但鑑識團隊回報,從記錄中定位特定訂戶每次請求需要花費超過 4 小時。請找出根本原因,並提出能將回應時間縮短至 15 分鐘以內的補救方案。

提示:4 小時的響應時間是日誌架構導致的問題,而不是數據保留問題。請考慮在動態分配與 PBA 下分別記錄了哪些資訊,以及確定性 NAT 將如何完全改變響應流程。

查看標準答案

根本原因:動態連接埠分配會為每個工作階段產生一筆記錄。在 500 名使用者 × 每小時每人數百個工作階段的情況下,SIEM 每天會產生數百萬筆記錄。若要透過 IP、連接埠和時間戳記定位單一記錄,需要對可能多達數十億筆的記錄進行全文檢索,這就是需要 4 小時回應時間的原因。補救方案 1 (PBA):移轉至連接埠區塊分配 (Port Block Allocation)。使用 PBA,連接埠 51432 的記錄將記錄區塊分配(例如,連接埠 51001-51500 於 21:30:00 UTC 分配給訂戶 192.168.1.23,並於 23:15:00 UTC 釋放)。對公用 IP + 連接埠範圍 + 時間戳記進行單一索引查詢,可在數秒內傳回結果。預估回應時間:2 分鐘以內。補救方案 2 (確定性 NAT):若平台支援,請移轉至確定性 NAT (Deterministic NAT)。連接埠 51432 可以透過數學方式反向計算出訂戶的內部 IP,而無需進行任何記錄查詢。回應時間:30 秒以內。立即行動:在規劃 PBA 移轉的同時,對 (public_ip, port, timestamp) 上的現有 SIEM 記錄建立索引,以縮短目前的回應時間。

Q3. 一位網路架構師正在為一個擁有 800 床位的新 PBSA 開發項目設計 CGNAT 基礎設施。上游 ISP 已提供一個 /27 公用子網路,並確認 IPv6 傳輸可用。營運商還希望部署 Purple 的 Guest WiFi 平台以進行 Captive Portal 驗證。請說明 Captive Portal 驗證相對於 CGNAT 閘道器的正確部署位置,並解釋為何錯誤的部署位置會帶來合規風險。

提示:請考慮 Captive Portal 需要擷取哪些資訊(使用者身分、裝置 MAC、內部 IP),以及在 NAT 轉換鏈中的哪一個點上,這些資訊仍然存在。思考內部 IP 位址在通過 CGNAT 閘道器後會發生什麼變化。

查看標準答案

Captive Portal 驗證必須發生在 Level 1 NAT 邊界或之前 - 亦即在存取點 (Access Point) 或 CPE 層,在流量進入 RFC 6598 中間網路之前。正確部署位置:Purple 的 Guest WiFi 平台在存取點對使用者進行驗證。該平台會記錄繫結關係:使用者身分 → MAC 位址 → RFC 1918 內部 IP → 時間戳記。此繫結關係是在 CGNAT 閘道器執行其轉換之前建立的。然後,CGNAT 閘道器將 RFC 1918 IP 對應到公用 IP 和連接埠區塊,且 PBA 記錄會記載:RFC 1918 IP → 公用 IP → 連接埠區塊 → 時間戳記。這兩筆記錄可以透過 RFC 1918 IP 和時間戳記進行關聯,從而產生一個完整的鏈結:使用者身分 → 公用 IP + 連接埠。錯誤部署位置(Captive Portal 位於 CGNAT 閘道器之後):如果驗證發生在 CGNAT 閘道器之後,平台只能看到公用 IP 和連接埠,而看不到內部 IP。在此時,位於同一個 CGNAT IP 後方的多個使用者將無法區分。平台無法建立可靠的使用者對 IP 繫結,導致無法進行合法攔截歸因,並違反 GDPR 的問責制要求。這就是合規風險。透過 Purple 的架構,身分繫結是在 CGNAT 層的上游建立的,從而確保在分析平台和合規記錄鏈中都能進行準確的使用者歸因。