ネットワーク・パス・アナライザ
ネットワーク・パス・アナライザ・ツールについて学習します。
Network Path Analyzerの概要
ネットワーク・パス・アナライザ(NPA)は統合された直感的な機能で、接続性に影響する仮想ネットワーク構成の問題を識別するために使用できます。NPAは、ネットワーク構成を収集および分析して、ソースと宛先間のパスの動作または障害を判別します。実際のトラフィックは送信されず、かわりに到達可能性の確認のために構成が調査および使用されます。
NPAは、ルーティングおよびセキュリティの構成を慎重に調査し、定義されたトラフィックが横断する潜在的なネットワーク・パスと、パス内の仮想ネットワーキング・エンティティに関する情報を識別します。パス情報に加えて、これらのチェックの出力では、ルーティング・ルールおよびネットワーク・セキュリティ機能(セキュリティ・リスト、NSG、Zero Trust Packet Routingなど)がトラフィックをどのように許可または拒否するかが含まれます。ソースと宛先は、OCI内、OCIとオンプレミス間、またはOCIとインターネット間に設定できます。NPAは、すべての標準OCIネットワーキング要素と、それらに関連付けられた構成を分析します。
NPAを使用すると、次が可能です:
- 接続の問題を引き起こしているルーティングおよびセキュリティの構成の誤りをトラブルシューティングします
- 論理ネットワーク・パスがインテントと一致していることを検証します
- トラフィックの送信を開始する前に、仮想ネットワーク接続設定が想定どおりに機能することを確認します
これらの目的のいずれかを達成するには、動作する必要があると思われるテストを作成し、そのテストを実行します。このテスト定義を保存して、後で再度実行することもできます。保存済テストは、選択できるように「NPA」ページに表示されます。
次のソースおよび宛先シナリオがサポートされています:
- OCIからOCI
- OCIからオンプレミス
- オンプレミスからOCI
- インターネットからOCI
- OCIからインターネット
テストは、次のパラメータに対して定義できます:
| ソース・オプション | 宛先オプション | プロトコル | ポート情報 | 双方向フラグ |
|---|---|---|---|---|
|
|
現在のセキュリティ・リストでサポートされている任意のIPプロトコル。 |
提供されるプロトコル・タイプに応じて:
|
TCPおよびUDPに対してデフォルトで有効になっている双方向チェック・フラグ。このフラグをオフにして、単方向接続およびパス(ソースから宛先)をチェックすることも可能です。このフラグは、TCP/UDP以外のプロトコルでは無効です。 |
分析は完全な構成スナップショットを使用して行われますが、結果として表示されるネットワーク・パスは、ユーザーが表示する権限を持っているエンティティに制限されます。パス内のオブジェクトを表示するために必要な権限がない場合、テスト出力にはそれらのオブジェクトやその他の詳細は表示されません。
NPAでは、オープン・ソースのネットワーク構成分析ライブラリであるBatfishが使用されます。NPAは、Batfishを使用して到達可能性分析を実行し、構成エラーを識別します。BatfishライブラリはIntentionetが管理しています。
エンドポイントにZero Trust Packet Routing (ZPR)セキュリティ属性がある場合、エンドポイントへのトラフィックはZPRポリシーとすべてのNSGおよびセキュリティ・リスト・ルールを満たす必要があります。たとえば、すでにNSGを使用していて、エンドポイントにセキュリティ属性を追加した場合、エンドポイントへのすべてのトラフィックがブロックされます。それ以降は、ZPRポリシーでエンドポイントへのトラフィックを明示的に許可する必要があります。
NPAは、Zero Trust Packet Routingのセキュリティ属性およびZPRポリシーに関する問題の識別に役立ちます。Zero Trust Packet Routingの前提条件および構成の詳細は、リンクされているドキュメントを参照してください。
必要な権限
ネットワーク・パス・アナライザを使用するために、常にテナンシ・レベルの次の権限ポリシーを設定することをお薦めします。これらの権限はコンパートメント・レベルを設定すると、パス分析結果の正確性は低下する可能性があります)。
- ユーザー権限
- 次の権限を構成して、<group-name>ユーザー・グループのユーザーにNPAを使用する権限を付与します。ここで、<group-name>はネットワーキング・リソースの管理者グループの名前です。
allow group <group-name> to manage vn-path-analyzer-test in tenancy - サービス権限次の権限を構成して、NPAサービスがパス分析のためにテナンシ内のリソースおよびサービスにアクセスできるようにします。
allow any-user to inspect compartments in tenancy where all { request.principal.type = 'vnpa-service' } allow any-user to read instances in tenancy where all { request.principal.type = 'vnpa-service' } allow any-user to read virtual-network-family in tenancy where all { request.principal.type = 'vnpa-service' } allow any-user to read load-balancers in tenancy where all { request.principal.type = 'vnpa-service' } allow any-user to read network-security-group in tenancy where all { request.principal.type = 'vnpa-service' } allow any-user to read zpr-family in tenancy where all { request.principal.type = 'vnpa-service' }
このツールを使用する権限を付与すると、ネットワーク構成およびネットワーク・セキュリティ設定に関する情報がツールのユーザーに過剰に公開される可能性があります。悪意のあるユーザーは、到達可能性ステータスの監視を使用して、ネットワーク・サービスの存在と、関連するルーティングおよびセキュリティ情報を推測できます。ツールへのアクセスは、信頼できるユーザーと管理者にのみ許可します。
NPA権限の詳細は、ネットワーク・モニタリング・サービスの詳細のpath-analyzer-testの項を参照してください。
既知の注意事項および制限事項
次のNPAユースケースはサポートされていません:
- 同じサブネット内にあり、プライベートIPが異なる複数のソースおよび宛先は誤った結果を生成します。
- サブネットのルート表にプライベートIPとして定義されたネクスト・ホップがある場合、ステータスが「ルートなし」と誤って表示されることがあります。
- LPGがテナンシ間でピアリングされている場合、パス分析のレスポンスは「不明」です。
- RPC接続がテナンシまたはリージョンをまたがる場合、パス分析のレスポンスは「不明」です。
- NPAはIPv6をサポートしていません。IPv6アドレスは、ソースまたは宛先として使用できません。IPv6ルーティングおよびセキュリティ設定は無視され、結果には影響しません。
- NPAはルーティング・ループを検出しないため、ルーティング・ループが存在する場合は、結果が不確定になるか、障害を示す可能性があります。
- VCN内ルーティングおよびインターネット・ゲートウェイ・ルーティングは、NPAではまだサポートされていないため、パス分析の結果が正しくない可能性があります。
- パス分析をリクエストしているテナンシ内のコンパートメントの数が100を超える場合、NPAは機能しません。これらのテナントでは、NPAを使用するにはサポート・リクエストを追加する必要があります。
- ルーティング、セキュリティ・リストまたはネットワーク・セキュリティ・グループ関連の問題のために宛先に到達できない場合、NPAはZPRポリシーを評価できません。このような場合、NPAには「ZPR couldn't be evaluation」通知が表示されます。
- PSAエンドポイントをソース・エンドポイントとして設定することはサポートされていません。PSAエンドポイントは、パス分析の宛先エンドポイントのみにできます。
特別なユースケース
一部のエンティティがパス分析のパス内にあり、それらがソースでも宛先でもない場合、次の動作が表示されます。これらのユースケースには、示されているソリューションを使用できます(それが使用可能である場合)。
| パス内のノード | NPAの結果 | ソリューション |
|---|---|---|
|
ネットワーク仮想アプライアンス(NVA) |
不明 |
2つのパス分析チェック(ソースからNVAに1つ、NVAから宛先に1つ)を作成します。 |
|
SNATが構成された非透過モードでデプロイされたNLB |
ルートなし |
2つのパス分析チェック(ソースからNLBに1つ、NLBから宛先に1つ)を作成します。 |
|
透過モードのネットワーク・ロード・バランサ |
不明 |
2つのパス分析チェック(ソースからNLBに1つ、NLBから宛先に1つ)を作成します。 |
|
ロード・バランサ |
ルートなし |
2つのパス分析チェック(ソースからLBに1つ、LBから宛先に1つ)を作成します。 |
|
FWaaS |
不明 |
2つのパス分析チェック(ソースからFWaaSに1つ、FWaaSから宛先に1つ)を作成します。 |
| RPCを使用したクロスリージョン |
不明 |
2つのパス分析チェック(リージョンごとに1つ)を作成します。 |
| LPGを使用したクロステナンシ |
不明 |
2つのパス分析チェック(テナンシごとに1つ)を作成します。 |
| DRG v1 |
不明 |
DRG v2にアップグレードします。 |
次の図は、パス分析を2つに分割する必要があるユースケースの1つを示しています。
ネットワーク・パス分析作業リクエスト
作業リクエストを使用して、ネットワーク・パス分析テストなどの長時間実行される操作をモニターします。このような操作を実行すると、サービスは作業リクエストを生成します。作業リクエストは、操作の進行状況の各ステップの追跡に使用できるアクティビティ・ログです。各作業リクエストには、プログラムで操作して自動化に使用できるOCID (Oracle Cloud Identifier)があります。作業リクエストは12時間保持されます。
Network Path Analyzerのタスク
ネットワーク・パス・アナライザ・ツールを使用して、次のタスクを実行できます。