

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS Client VPN 用戶端路由強制執行
<a name="cvpn-working-cre"></a>

Client Route Enforcement 有助於在透過 VPN 連線的裝置上強制執行管理員定義的路由。此功能可確保來自連線用戶端的網路流量不會不小心傳送到 VPN 通道之外，以協助改善您的安全狀態。

Client Route Enforcement 會監控連線裝置的主要路由表，並根據用戶端 VPN 端點中設定的網路路由，確保傳出網路流量流向 VPN 通道。這包括在偵測到與 VPN 通道衝突的路由時修改裝置上的路由表。用戶端路由強制執行同時支援 IPv4 和 IPv6 地址系列。

## 要求
<a name="requirements-cre"></a>

Client Route Enforcement 僅適用於下列 AWS 提供的 Client VPN 版本：
+ Windows 5.2.0 版或更新版本 (IPv4 支援）
+ macOS 5.2.0 版或更新版本 (IPv4 支援）
+ Ubuntu 5.2.0 版或更新版本 (IPv4 支援）
+ Windows 5.3.0 版或更新版本 (IPv6 支援）
+ macOS 5.3.0 版或更新版本 (IPv6 支援）
+ Ubuntu 5.3.0 版或更新版本 (IPv6 支援）

對於雙堆疊端點，用戶端路由強制執行設定會同時套用至 IPv4 和 IPv6 堆疊。您只能為一個堆疊啟用用戶端路由強制執行。

## 路由衝突
<a name="route-conflict-cre"></a>

當用戶端連線至 VPN 時，會在用戶端的本機路由表和端點的網路路由之間進行比較。如果兩個路由表項目之間的網路重疊，則會發生路由衝突。重疊網路的範例如下：
+ `172.31.0.0/16`
+ `172.31.1.0/24`

在此範例中，這些 CIDR 區塊構成路由衝突。例如， `172.31.0.0/16` 可能是 VPN 通道 CIDR。由於 `172.31.1.0/24` 具有較長的字首，因此更為具體，因此通常會優先考慮並可能將 `172.31.1.0/24` IP 範圍內的 VPN 流量重新導向至另一個目的地。這可能會導致意外的路由行為。不過，啟用用戶端路由強制執行時，會移除後者 CIDR。使用此功能時，應考慮潛在的路由衝突。

完整通道 VPN 連接會透過 VPN 連接引導所有網路流量。因此，如果啟用 Client Route Enforcement 功能，連線至 VPN 的裝置將無法存取本機網路 (LAN) 資源。如果需要本機 LAN 存取，請考慮使用分割通道模式，而非完整通道模式。如需分割通道的詳細資訊，請參閱 [分割通道 Client VPN](split-tunnel-vpn.md)。

## 考量事項
<a name="considerations-cre"></a>

啟用用戶端路由強制執行之前，應考慮以下資訊。
+ 在連線時，如果偵測到路由衝突，此功能會更新用戶端的路由表，將流量導向 VPN 通道。建立連線之前已存在且由此功能刪除的路由將會還原。
+ 此功能僅在主要路由表上強制執行，不適用於其他路由機制。例如，強制執行不會套用至下列項目：
  + 政策型路由
  + 介面範圍路由
+ Client Route Enforcement 會在 VPN 通道開啟時保護它。通道中斷連線後或用戶端重新連線時，不會提供任何保護。

### OpenVPN 指令對雲端路由強制執行的影響
<a name="considerations-openvpn"></a>

OpenVPN 組態檔案中的某些自訂指令與 Client Route Enforcement 有特定的互動：
+ `route` 指令 
  + 將路由新增至 VPN 閘道時。例如，將路由新增至 VPN `192.168.100.0 255.255.255.0` 閘道。

    新增至 VPN 閘道的路由會受到用戶端路由強制執行的監控，類似於任何其他 VPN 路由。其中的任何衝突路由都會被偵測並移除。
  + 新增路由至非 VPN 閘道時。例如，新增路由 `192.168.200.0 255.255.255.0 net_gateway`。

    新增至非 VPN 閘道的路由會因繞過 VPN 通道而從用戶端路由強制執行中排除。其中允許衝突路由。在此範例中，用戶端路由強制執行會將路由上方排除在監控之外。
  + 與 IPv4 路由類似，新增至 VPN 閘道的 IPv6 路由會受到用戶端路由強制執行的監控，而新增至非 VPN 閘道的路由會排除在監控之外。

### 忽略的路由
<a name="cre-ignored"></a>

用戶端路由強制執行會忽略下列 IPv4 網路的路由：
+ `127.0.0.0/8` — 預留給本機主機
+ `169.254.0.0/16` — 預留給 link-local 地址
+ `224.0.0.0/4` — 預留給多點傳送
+ `255.255.255.255/32` — 預留廣播

用戶端路由強制執行會忽略下列 IPv6 網路的路由：
+ `::1/128` — 預留給迴路 
+ `fe80::/10` — 預留給 link-local 地址 
+ `ff00::/8` — 預留給多點傳送 

**Topics**
+ [要求](#requirements-cre)
+ [路由衝突](#route-conflict-cre)
+ [考量事項](#considerations-cre)
+ [啟用用戶端路由強制執行](activate-cre.md)
+ [停用用戶端路由強制執行](deactivate-cre.md)
+ [疑難排解 IPv6 用戶端路由強制執行](cre-ipv6-troubleshooting.md)

# 啟用 AWS Client VPN 端點的用戶端路由強制執行
<a name="activate-cre"></a>

您可以使用 主控台或 在現有的 Client VPN 端點上啟用 Client Route Enforcement AWS CLI。

**使用主控台啟用用戶端路由強制執行**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中，選擇 **Client VPN Endpoints** (Client VPN 端點)。

1. 選擇您要修改的 Client VPN 端點，選擇**動作**，然後選擇**修改 Client VPN 端點**。

1. 向下捲動頁面到 **Other parameters** (其他參數) 區段。

1. 開啟**用戶端路由強制執行**。

1. 選擇 **Modify Client VPN Endpoint** (修改 Client VPN 端點)。

**使用 啟用用戶端路由強制執行 AWS CLI)**
+ 使用 [modify-client-vpn-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-client-vpn-endpoint.html) 命令。

# 從 AWS Client VPN 端點停用用戶端路由強制執行
<a name="deactivate-cre"></a>

您可以使用 主控台或 在 Client VPN 端點上停用 Client Route Enforcement AWS CLI。

**使用主控台停用用戶端路由強制執行**

1. 在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 開啟 Amazon VPC 主控台。

1. 在導覽窗格中，選擇 **Client VPN Endpoints** (Client VPN 端點)。

1. 選擇您要修改的 Client VPN 端點，選擇**動作**，然後選擇**修改 Client VPN 端點**。

1. 向下捲動頁面到 **Other parameters** (其他參數) 區段。

1. 關閉**用戶端路由強制執行**。

1. 選擇 **Modify Client VPN Endpoint** (修改 Client VPN 端點)。

**使用 停用用戶端路由強制執行 AWS CLI**
+ 使用 [modify-client-vpn-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-client-vpn-endpoint.html) 命令。

# 疑難排解 IPv6 用戶端路由強制執行
<a name="cre-ipv6-troubleshooting"></a>

如果您遇到 IPv6 用戶端路由強制執行的問題，請考慮下列疑難排解步驟：

驗證用戶端版本  
確保您使用的是 AWS VPN Client 5.3.0 版或更新版本，這是 IPv6 Client Route Enforcement 支援的必要項目。

檢查端點組態  
確認端點已啟用用戶端路由強制執行，並已針對 IPv6 或雙堆疊流量進行設定。

檢查用戶端日誌  
檢閱 AWS VPN 用戶端日誌是否有任何與 IPv6 用戶端路由強制執行相關的錯誤訊息。尋找包含「IPv6」和「用戶端路由強制執行」或「CRM」的項目。

檢查路由表  
為您的作業系統使用適當的命令來檢視 IPv6 路由表：  
+ Windows：`netsh interface ipv6 show route`
+ macOS：`netstat -rn -f inet6`
+ Linux：`ip -6 route`

檢查是否有衝突的路由  
尋找可能與 VPN 路由衝突的任何 IPv6 路由。請特別注意具有相同目的地但不同閘道的路由。

驗證 ISP IPv6 支援  
確保您的網際網路服務提供者 (ISP) 正確支援 IPv6。

如果您在嘗試這些疑難排解步驟後仍遇到 IPv6 用戶端路由強制執行的問題，請聯絡 AWS Support 以取得進一步協助。