何時應該使用 Azure NAT Gateway?
考慮部署 Azure NAT Gateway 服務時,您應該先分析您的案例。 根據預設,Azure 虛擬網路不會部署服務,而且並非所有案例都適合此服務。 不過,對於解決您線上零售公司的 Azure VM 連線問題來說,這是很好的解決方案。
使用 Azure NAT Gateway 服務的案例
Azure NAT Gateway 能為隨選輸出連線提供 NAT 閘道資源而不需要複雜的預先規劃,因此在需要時更容易部署。 設定好之後,您的所有 VM 執行個體都會獲得輸出連線能力,並且會使用您指定的靜態 IP 位址,這能夠簡化允許清單的建立程序。
如果您希望 VM 在存取網際網路資源時使用專屬的公用 IP 位址,Azure NAT Gateway 可提供協助。 假設您的合作夥伴組織只允許一組固定 IP 位址的連線。 您可以將公用 IP 首碼與 Azure NAT Gateway 建立關聯,以確保使用一組連續的 IP 來輸出連線。 接著,您可以根據這份可預測的 IP 清單,在目的地設定防火牆。 例如,假設您的合作夥伴裝載了面向網際網路的 API,而您需要連線到該 API,此解決方案或許能解決問題。
如果您的 Azure 虛擬網路上有資源進行許多輸出連線,且大量使用各種連接埠來進行輸出通訊,則您應考慮部署 Azure NAT Gateway 服務。 此服務能協助您整合並最大化可用的連接埠數量,並且避免連接埠耗盡。
舉例來說,您可能有已經建立了一些子網路的虛擬網路。 這個子網路裝載您的 Azure VM,而另一個子網路則利用網站或一些其他服務裝載應用程式服務。 在不使用 Azure NAT Gateway 的情況下,您的 VM 和其他服務都只有有限數量的可用連接埠來進行輸出連線。 通常來說,這個數目比理論上可用的 65,535 個連接埠還來得少。 如果您的其中一個 VM 或服務耗盡可用的連接埠集區,則連線會逾時。 您無法與其他 VM 共用埠集區,因為埠是以每個 VM 為基礎指派,而且所有這些資源可能有不同的 IP 位址用於公用通訊。 已指派公用 IP 的 Azure VM 會使用此位址存取網際網路資源。 而沒有公用 IP 的 VM 則會使用目前在 Azure 位址服務集區中提供的位址。 Azure NAT Gateway 可藉由為其所覆蓋之子網路中的 VM 提供完整範圍的連接埠,以及適用於輸出連線的唯一公用 IP (或 IP 範圍) 來協助解決這兩個問題。
不適合使用 Azure NAT Gateway 服務的案例
雖然 Azure NAT Gateway 是實用且容易部署的服務,但可能不適合每個案例。 以下列出一些範例:
- 如果您的 Azure VM 配置很簡單,只有幾個很少連線到網際網路資源的 VM,您可能不需要 Azure NAT Gateway。 您可以改用 Azure 原生位址轉譯,或將公用 IP 指派給一或多個 VM。
- 如果您需要管理來自網際網路對 Azure VM 的輸入連線,那麼 Azure NAT Gateway 就不是很實用。 Azure NAT Gateway 只有管理從 Azure VM (或其他服務) NAT 後方起始的輸入連線。 安裝在 Azure VM 上的 Azure VM 或軟體會起始與網際網路上資源的連線。 Azure NAT Gateway 會註冊該連線。 如果網際網路上的該資源應該將某些資料傳回至 Azure VM 或起始輸入連線,則會允許該資源。 不過,從網際網路起始但不回應輸出導向流量的連線將受到封鎖。
- 如果您需要提供連線給其他 Azure 服務 (如 Azure SQL Database 或 Azure 儲存體),則不應使用 Azure NAT Gateway。 您不需要部署 Azure NAT Gateway 就能連線到 Azure 資源。 連線到 Azure 服務時,您可以使用 Azure Private Link 將 Azure 資源繫結至您的虛擬網路,並控制對您 Azure 服務資源的存取。 舉例來說,當您存取 Azure 儲存體時,您可以針對儲存體使用私人端點,以協助確保您的連線完全是私人使用。
- 您無法搭配使用 Azure NAT Gateway 與 Azure 閘道子網路。 您也無法在 Azure 中搭配使用單一 Azure NAT Gateway 服務與多個虛擬網路。 不過,您可以使用單一 Azure NAT Gateway 服務來涵蓋同一個虛擬網路中的多個子網路。