如何在 VPC CIDR 上為周遊 VPN 連線的流量設定 NAT?

1 分的閱讀內容
0

我有一個 AWS VPN 連線至由 Amazon Virtual Private Cloud (Amazon VPC) 管理的 VPC,其中網路 CIDR 重疊。我想為我的 AWS VPN 設定 NAT。

簡短說明

AWS VPN 沒有提供將 NAT 套用至 VPN 流量的受管選項。相反地,您可以使用軟體型 VPN 解決方案手動設定 NAT。AWS Marketplace 中有許多此類 VPN 解決方案。

NAT 也可以在 Amazon Elastic Compute Cloud (EC2) Linux 執行個體上手動設定,該執行個體正在執行軟體型 VPN 解決方案和 iptables。

解決方法

此範例組態使用兩個 VPC。第一個是 AWS 受管 VPN,第二個是用作客戶閘道的軟體型 VPN 解決方案。

在開始之前,確認您已設定 AWS Site-to-Site VPN 連線。接著,使用分佈的套件管理員在 EC2 Linux 執行個體上安裝所選的 VPN 解決方案。

允許 VPN 流量

設定您的 VPC 路由表、安全群組和網路 ACL,以允許 VPN 流量:

  1. 在您的路由表中輸入指向目的地網路的路由。將軟體 VPN EC2 執行個體的彈性網絡介面設定為目標。

  2. 確認您的路由表具備網際網路閘道目標的預設路由。

  3. 在執行個體的安全群組規則中,允許使用 UDP 連接埠 500 (ISAKMP) 和 4500 (IPsec NAT-Traversal) 的傳入流量。

  4. 關閉來源/目的地檢查,以允許執行個體轉送 IP 封包。

設定 VPN 連線

為您的相關解決方案設定站點對站點 VPN 連線。AWS 根據裝置廠商和型號提供可下載的範例組態檔案。

設定 iptables

為來源 NAT 或目的地 NAT 設定您的 iptables 規則。

對於來源 NAT,請使用下列字串,在括號的位置填入適當的值:

sudo iptables -t nat -A POSTROUTING -d <Destination address or CIDR> -j SNAT --to-source <Your desired IP address>

對於目的地 NAT,請使用下列字串,在括號的位置填入適當的值:

sudo iptables -t nat -A PREROUTING -j DNAT --to-destination <Your desired IP address>

若要將正在執行的 iptables 組態儲存到檔案,請使用以下命令:

sudo iptables-save > /etc/iptables.conf

若要在開機時載入此組態,請在 /etc/rc.local 中的 exit 0 陳述式前輸入以下這一行:

iptables-restore < /etc/iptables.conf

選用:測試您的 AWS Site-to-Site VPN 連線。如果測試成功,則會根據 iptables 組態適當地轉譯流量。


相關資訊

NAT 執行個體

AWS 官方
AWS 官方已更新 2 年前