AWS Client VPN 接続に関するパケットロス、レイテンシー、接続が途切れ途切れになる問題をトラブルシューティングしたいと考えています。
簡単な説明
Client VPN 接続でのパケットロス、レイテンシー、接続が途切れ途切れになる問題を診断するには、まずネットワークをテストして、次のように問題の原因を特定します:
- この問題はすべてのユーザーに影響していますか、それとも特定のインターネットサービスプロバイダー (ISP) または特定のリモートロケーションのユーザーにのみ影響していますか?
- 影響を受けているユーザーはどのように Client VPN に接続していますか? 例えば、固定インターネット接続、ローカル Wi-Fi ホットスポット、モバイルネットワーク経由で接続していますか?
- ユーザーはどのデバイスから接続していますか?
- Client VPN エンドポイントに関連して影響を受けているユーザーはどこにいますか?
- パケットロス、レイテンシー、接続が途切れ途切れになる問題が発生した場合、ユーザーはどのリソースにアクセスしていますか?
- Client VPN に接続されていない場合でも、パケットロス、レイテンシー、外部リソースへの接続が途切れ途切れになる問題は発生していますか?
解決策
ユーザーが Client VPN エンドポイントに接続する方法を確認する
モバイルネットワークまたは Wi-Fi ホットスポットのユーザー
信号が弱く、接続状態が悪い可能性があります。ユーザーが共有ロケーションのホットスポットにアクセスすると、帯域幅が制限される場合があります。
この問題を解決するには、ユーザーに Speedtest のウェブサイトなどのパフォーマンスツールで接続速度をテストしてもらいます。Client VPN エンドポイントと同じ AWS リージョンからテストするのがベストプラクティスです。また、Windows、macOS、または Linux ベースのシステムの場合は、ICMP を使用してデフォルトゲートウェイへの接続をテストします。
次のように Wi-Fi ホットスポット接続の安定性を確認します:
Ping <Default Gateway IP>
注: Default Gateway IP はデフォルトゲートウェイの IP アドレスに置き換えてください。
接続状態が悪い場合や帯域幅に制約がある場合は、より高速で安定した接続を使用するのがベストプラクティスです。
さまざまな地域のユーザー
Client VPN エンドポイントに関連するユーザーの位置を確認します。地理的に離れた場所にいるユーザーの場合、仮想プライベートクラウド (VPC) 内またはインターネット上のリソースへのレイテンシー、パケットロス、または接続が途切れ途切れになる問題が発生する可能性があります。
インターネットトラフィックを VPC 経由で転送する必要がない場合は、Client VPN エンドポイントでスプリットトンネルを有効にします。
Windows 向けの高度なトラブルシューティング
上記の方法で問題が解決しない場合は、ユーザーに次のトラブルシューティング手順を実施してもらいます。以下の方法は、リモートユーザーがローカルデバイスと Client VPN エンドポイント間のネットワーク接続の問題をトラブルシューティングするのに役立ちます。
Client VPN エンドポイントノードの IP アドレスを検索する
- コマンドプロンプト (cmd) を開きます。
- 次のようにエンドポイントの DNS URL に対して nslookup を実行します:
nslookup cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
このコマンドを実行しても解決しない場合は、次のサブドメインを追加します:
nslookup test.cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
MTR を使用する
- SourceForge のウェブサイトから WinMTR をダウンロードしてインストールします。
- [Host] に宛先 IP アドレスを入力し、[Start] を選択します。
- 約 1 分間テストを実行し、[Stop] を選択します。
- [Copy text to clipboard] を選択し、出力をテキストファイルに貼り付けます。
- テキストファイルで、[%] 列のパケットロスが宛先に伝播されていないかを検索します。
- MTR レポートのホップを確認します。レポートの一番下から始めてください。例えば、最後のホップまたは宛先でパケットロスがないか確認し、次に、その前のホップを確認します。
注:
- Client VPN が ICMP に応答しません。ただし、MTR を使用して、中間 ISP リンクでパケットロスがないことを確認することはできます。
- ホストから応答がないという内容のメッセージが表示されているホップは無視します。このメッセージは、これらのホップが ICMP プローブに応答していないことを示しています。
tracert を使用する
さらにテストを実行するには、tracert コマンドユーティリティツールを使用します。宛先の URL または IP アドレスに対して tracert を実行します。次に、ラウンドトリップタイム (RTT) が突然急上昇しているホップがないか調べます。RTT が急上昇している場合、負荷の高いノードがあることを示している可能性があります。負荷の高いノードは、トラフィックのレイテンシーやパケットドロップの原因となります。
tracert を使用したテストの例:
tracert test.cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
macOS と Linux 向けの高度なトラブルシューティング手法
Client VPN エンドポイントノードの IP アドレスを検索する
-
ターミナルを開きます。
-
次のようにエンドポイントの DNS URL に対して dig を実行します:
dig cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
このコマンドを実行しても解決しない場合は、次のようにサブドメインを追加します:
dig test.cvpn-endpoint-0102bc4c2eEXAMPLE.clientvpn.us-west-2.amazonaws.com
MTR を使用する
-
MTR をインストールします。
Red Hat ベースの Linux ディストリビューションに MTR をインストールするには、以下のコマンドを実行します:
sudo yum install mtr
Debian ベースの Linux ディストリビューションに MTR をインストールするには、以下のコマンドを実行します:
sudo apt-get mtr
macOS に MTR をインストールするには、Homebrew のウェブサイトで MacOS と Homebrew に関する情報を参照してください。Homebrew をインストールし、次のコマンドを実行します:
brew install mtr
2.TCP ベースの MTR を実行します:
mtr -n -T -P 443 -c 200 <Client VPN endpoint IP> --reportmtr -n -T -P 1194 -c 200 <Client VPN endpoint IP> --report
または
UDP ベースの MTR を実行します:
mtr -n -u -P 443 -c 200 <Client VPN endpoint IP> --reportmtr -n -u -P 1194 -c 200 <Client VPN endpoint IP> --report
注: Client VPN エンドポイントで設定されているポートに基づきテストを実行します。ネットワークでパケットロスが見つかった場合は、ベンダーのドキュメントを参照して、ネットワークデバイスをチェックして分析する方法を確認してください。または、ISP にお問い合わせください。