VPC Reachabillity Analyzerで通信可否の切り分けをしてみる

最近個人的に助けれたサービスだったのでネットワーク診断ツールの「Reachabillity Analyzer」を記事にしたいと思います。

Reachabillity Analyzerとは

VPC Reachability Analyzer は、Virtual Private Cloud (VPC) 内のリソース間の接続テストを実行できるようにする新機能です。Reachability Analyzer を使用すれば、誤った構成によって引き起こされた接続問題を迅速にトラブルシューティングし、構成がネットワーク接続の意図と一致していることを事前に確認できます。

Reachability Analyzer を使用すると、VPC ネットワーク内の特定の送信元と送信先の間で到達可能性を分析するだけで、接続問題を診断できます。同じ VPC 内の Elastic Network Interfaces (ENI) 間、またはピアリング接続を介して接続された 2 つの VPC 間で到達可能性分析を実行できます。また、ENI と、インターネットゲートウェイ、仮想プライベートゲートウェイ、Transit Gateway などのゲートウェイ間の到達可能性分析を実行することもできます。送信先に到達できない場合、Reachability Analyzer は、欠落しているセキュリティグループルールやルーティングテーブルエントリなどのブロック構成設定を識別します。この情報を使用すれば、構成と根本的なネットワークの問題を簡単に区別できます。送信先に到達可能になると、Reachability Analyzer は、構成されたルートに基づいて、送信元と送信先の間の仮想ネットワークパスの詳細なホップバイホップを提供します。到達可能性分析を実行して構成を検証し、本番ワークロードを実行する前に接続問題を切り分けることができます。また、到達可能性分析を継続的に保存して実行し、キャプチャされた接続意図が構成の変更によって影響を受けるかどうかを確認することもできます。

https://aws.amazon.com/jp/about-aws/whats-new/2020/12/amazon-vpc-announces-reachability-analyzer-to-simplify-connectivity-testing-and-troubleshooting/

ネットワーク診断ツールの一つで、ネットワークレベルでの疎通確認をOSではなく、AWSサービスで出来るようになりました。
この登場によりOSにログインすることなく通信経路の確認、接続門などが出来るのでお客様のOSをお借りできないなどのケースに非常に役に立ちます。

どんなケースに使えるか

普段は使うことはあまりないと思いますが、ネットワークACLなど利用している際にネットワークACLで止まっているのか、インスタンスのセキュリティグループで止まっているのか、そもそもルーティングがされていないのか、など通信に問題があった際にどの箇所で止まっているのかがReachabillity Analyzerを使うことでわかります。

ネットワークACLを使っていると、Provided DNSの経路が止められていて名前解決ができないことによるLambdaのエラーや各種サービス間の連携が出来ないなど、すぐに特定できない問題なども引き起こしてしまいます。
使わないに越したことはないですが、顧客要件などで使わざる得なかった場合に通信の問題が発生した際はぜひこのReachabillity Analyzerを使って切り分けをしてみてください。

Reachabillity Analyzerの使い方

使い方は簡単です。

どこからどこまでどのポートで通信確認を行うか、を入力するだけです。

VPCのメニューから「Reachabillity Analyzer」を選択します。

「パスの作成と分析」を選択します。

任意の名前と送信元、送信先を選びます。
インスタンス、Transit Gateway、VPN Gateway、ネットワークインターフェイス、VPCエンドポイントなどネットワークノードは一通り網羅されております。
DirectConnect経由でオンプレミスから、オンプレミスに、どちらも確認が出来ます。
確認したいポートも任意のポートが選べます。

分析の失敗した結果の一例ですが、以下のように到達不能と表示され、理由も表示してくれます。
以下の例だとVGWがアタッチされていないからです。

成功した場合は以下のように経路が出ます。
どのネットワークインターフェイスを使って、SG、NACL、ルーティングを使っているかなどもわかるので、想定していた経路と違っているなども調査することが可能です。

ネットワークACLで止まっているときなども以下のようにわかりやすく表示してくれるので、わざわざOSにログインしてtracrerouteやtelnetなどでポートが空いているか調べる必要がなくなります。
もしReachabillity Analyzerで問題なければOS側のファイアーウォールやその他セキュリティソフトなどで止まっているなどの切り分けが出来るので、通信ができない際に責任分界点などもはっきり分けれると思います。

Reachabillity Analyzerの料金は

料金体系は非常にシンプルで一回の調査で$0.1です。
安くはないのでむやみやたらに診断はしないほうがいいですね。

構築後の通信テストやエビデンスとしても使えそうなのでぜひ皆さんも活用してみてください!

created by Rinker
¥2,178 (2021/10/24 11:52:27時点 Amazon調べ-詳細)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です