

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

# `AWSSupport-TroubleshootVPN`
<a name="automation-aws-troubleshoot-vpn"></a>

 **Description** 

 `AWSSupport-TroubleshootVPN` Runbook 可協助您追蹤和解決 AWS Site-to-Site VPN 連線中的錯誤。自動化包含數個自動化檢查，旨在追蹤與 AWS Site-to-Site VPN 連線通道相關的 `IKEv1`或 `IKEv2` 錯誤。自動化會嘗試比對特定錯誤，其對應的解決方案會形成常見問題清單。

 **注意：**此自動化不會修正錯誤。它會在指定的時間範圍執行，並掃描日誌群組是否有 [VPN CloudWatch 日誌群組](https://docs.aws.amazon.com//vpn/latest/s2svpn/log-contents.html)中的錯誤。

 **如何運作？** 

Runbook 會執行參數驗證，以確認輸入參數中包含的 Amazon CloudWatch 日誌群組是否存在、日誌群組中是否有任何與 VPN 通道日誌記錄對應的日誌串流、VPN 連線 ID 是否存在，以及通道 IP 地址是否存在。它會在為 VPN 記錄設定的 CloudWatch 日誌群組上進行 Logs Insights API 呼叫。

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

Linux、macOS、 Windows

**參數**
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 之使用者的許可。
+ LogGroupName

  類型：字串

  描述：（必要） 為 AWS Site-to-Site VPN 連線記錄設定的 Amazon CloudWatch 日誌群組名稱

  允許模式： `^[\.\-_/#A-Za-z0-9]{1,512}`
+ VpnConnectionId

  類型：字串

  描述：（必要） 要故障診斷的 AWS Site-to-Site VPN 連線 ID。

  允許模式： `^vpn-[0-9a-f]{8,17}$`
+ TunnelAIPAddress

  類型：字串

  描述：（必要） 與您的 相關聯的通道編號 1 IPv4 地址 AWS Site-to-Site VPN。

  允許模式： `^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)[.]){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?){1}$`
+ TunnelBIPAddress

  類型：字串

  描述：（選用） 與您的 相關聯的通道編號 2 IPv4 地址 AWS Site-to-Site VPN。

  允許模式： `^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)[.]){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?){1}|^$`
+ IKEVersion

  類型：字串

  描述：（必要） 選取您使用的 IKE 版本。允許的值：IKEv1, IKEv2

  有效值：`['IKEv1', 'IKEv2']`
+ StartTimeinEpoch

  類型：字串

  描述：（選用） 日誌分析的開始時間。您可以使用 StartTimeinEpoch/EndTimeinEpoch 或 LookBackPeriod 進行日誌分析

  允許模式： `^\d{10}|^$`
+ EndTimeinEpoch

  類型：字串

  描述：（選用） 日誌分析的結束時間。您可以使用 StartTimeinEpoch/EndTimeinEpoch 或 LookBackPeriod 進行日誌分析。如果同時指定 StartTimeinEpoch/EndTimeinEpoch 和 LookBackPeriod，則 LookBackPeriod 優先

  允許模式： `^\d{10}|^$`
+ LookBackPeriod

  類型：字串

  描述：（選用） 兩位數的時間，以小時為單位來回顧日誌分析。有效範圍：01 - 99。如果您也提供 StartTimeinEpoch 和 EndTime，則此值優先

  允許模式： `^(\d?[1-9]|[1-9]0)|^$`

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+ `logs:DescribeLogGroups`
+ `logs:GetQueryResults`
+ `logs:DescribeLogStreams`
+ `logs:StartQuery`
+ `ec2:DescribeVpnConnections`

 **指示** 

 **注意：**當記錄輸出格式為 JSON 時，此自動化適用於為 VPN 通道記錄設定的 CloudWatch 日誌群組。

請依照下列步驟設定自動化：

1. 導覽至 AWS Systems Manager 主控台中的 [AWSSupport-TroubleshootVPN](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootVPN/description)。

1. 針對輸入參數，輸入下列項目：
   + **AutomationAssumeRole （選用）：**

     (IAM) 角色的 Amazon Resource Name AWS Identity and Access Management (ARN)，允許 Systems Manager Automation 代表您執行動作。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 之使用者的許可。
   + **LogGroupName （必要）：**

     要驗證的 Amazon CloudWatch 日誌群組名稱。這必須是設定供 VPN 傳送日誌的 CloudWatch 日誌群組。
   + **VpnConnectionId （必要）：**

     追蹤其日誌群組的 AWS Site-to-Site VPN 連線 ID 是否有 VPN 錯誤。
   + **TunnelAIPAddress （必要）：**

     通道 與您的 AWS Site-to-Site VPN 連線相關聯的 IP 地址。
   + **TunnelBIPAddress （選用）：**

     與您的 AWS Site-to-Site VPN 連線相關聯的通道 B IP 地址。
   + **IKEVersion （必要）：**

     選取您使用的 IKEversion。允許的值 ：IKEv1, IKEv2。
   + **StartTimeinEpoch （選用）：**

     要查詢錯誤的時間範圍開頭。範圍包含 ，因此指定的開始時間會包含在查詢中。指定為 epoch 時間，自 1970 年 1 月 1 日起的秒數，00：00：00 UTC。
   + **EndTimeinEpoch （選用）：**

     查詢錯誤的時間範圍結束。範圍包含 ，因此指定的結束時間會包含在查詢中。指定為 epoch 時間，自 1970 年 1 月 1 日起的秒數，00：00：00 UTC。
   + **LookBackPeriod （必要）：**

     回顧查詢錯誤的時間，以小時為單位。

   **注意：**設定 StartTimeinEpoch、EndTimeinEpoch 或 LookBackPeriod 來修正日誌分析的時間範圍。提供以小時為單位的兩位數號碼，以檢查過去從自動化開始時間以來的錯誤。或者，如果錯誤是過去在特定時間範圍內，請包含 StartTimeinEpoch 和 EndTimeinEpoch，而不是 LookBackPeriod。  
![\[Input parameters form for AWS Site-to-Site VPN connection validation and log analysis.\]](http://docs.aws.amazon.com/zh_tw/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-vpn_input_parameters.png)

1. 選取**執行**。

1. 自動化會啟動。

1. 自動化 Runbook 會執行下列步驟：
   + **parameterValidation：**

     對自動化中包含的輸入參數執行一系列驗證。
   + **branchOnValidationOfLogGroup：**

     檢查 參數中提及的日誌群組是否有效。如果無效，它會停止進一步啟動自動化步驟。
   + **branchOnValidationOfLogStream：**

     檢查包含的 CloudWatch 日誌群組中是否存在日誌串流。如果無效，它會停止進一步啟動自動化步驟。
   + **branchOnValidationOfVpnConnectionId：**

     檢查 參數中包含的 VPN 連線 ID 是否有效。如果無效，它會停止進一步啟動自動化步驟。
   + **branchOnValidationOfVpnIp：**

     檢查參數中提及的通道 IP 地址是否有效。如果無效，則會停止進一步執行自動化步驟。
   + **traceError：**

     在包含的 CloudWatch 日誌群組中進行日誌洞見 API 呼叫，並搜尋與 IKEv1/IKEv2 相關的錯誤以及相關的建議解析。

1. 完成後，請檢閱輸出區段以取得執行的詳細結果。  
![\[Output section showing parameter validation results and error messages for VPN tunnels.\]](http://docs.aws.amazon.com/zh_tw/systems-manager-automation-runbooks/latest/userguide/images/awssupport-troubleshoot-vpn_outputs.png)

 **參考** 

Systems Manager Automation
+ [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWSPremiumSupport-DDoSResiliencyAssessment)
+ [執行自動化](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [設定自動化](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [支援自動化工作流程登陸頁面](https://aws.amazon.com/premiumsupport/technology/saw/)

AWS 服務文件
+ [Site-to-Site日誌的內容](https://docs.aws.amazon.com//vpn/latest/s2svpn/log-contents.html)