Azure Network Watcher のしくみ
サブスクリプション内の Azure リージョンに仮想ネットワークを作成すると、Network Watcher が自動的に使用できるようになります。 検索バーに「Network Watcher」と入力すると、Azure portal で Network Watcher に直接アクセスできます。
ネットワークウォッチャー トポロジーツール
Azure Network Watcher のトポロジ機能を使用すると、仮想ネットワーク内の次のすべてのリソースを表示できます。 仮想ネットワーク内のリソースに関連付けられているリソースと、リソース間の関係も含まれます。
- サブネット
- ネットワーク インターフェイス
- ネットワーク セキュリティ グループ
- ロードバランサー
- ロード バランサーの正常性プローブ
- パブリック IP アドレス
- 仮想ネットワークピアリング
- 仮想ネットワーク ゲートウェイ
- VPN ゲートウェイ接続
- 仮想マシン
- Virtual Machine Scale Sets
トポロジで返されるすべてのリソースには、次のプロパティがあります。
- Name: リソースの名前。
- Id: リソースの URI。
- 場所: リソースが存在する Azure リージョン。
- 関連付け: 参照先オブジェクトへの関連付けの一覧。 各アソシエーションには、次のプロパティがあります。
- AssociationType: 子オブジェクトと親オブジェクトの間のリレーションシップを参照します。 有効値は
Contains
またはAssociated
です。 - 名前: 参照先のリソースの名前。
- ResourceId: 関連付けで参照されるリソースの URI。
- AssociationType: 子オブジェクトと親オブジェクトの間のリレーションシップを参照します。 有効値は
接続モニターツール
接続モニターでは、Azure Network Watcher での統合されたエンド ツー エンドの接続監視が提供されます。 接続モニターでは、ハイブリッドと Azure の両方のクラウド デプロイがサポートされています。 接続モニター ツールを使用して、リソース間の待機時間を測定できます。 接続モニターは、ネットワーク構成の変更や NSG 規則の変更など、接続に影響する変更を検出できます。 接続モニターを構成して、一定の間隔で VM をプローブし、障害や変更を探すことができます。 接続モニターでは、問題を診断し、問題が発生した理由と、問題を解決するために実行できる手順について説明します。
監視に接続モニターを使用するには、監視するホストに監視エージェントをインストールする必要があります。 接続モニターは、軽量の実行可能ファイルを使用して、ホストが Azure 仮想ネットワークに配置されているか、オンプレミス ネットワークに配置されているかに関係なく、接続チェックを実行します。 Azure VM では、Network Watcher エージェント VM (Network Watcher 拡張機能とも呼ばれます) をインストールできます。 オンプレミスコンピューターの場合は、Log Analytics エージェントをインストールすることで、この機能を有効にすることができます。
IP フロー検証
IP フロー検証ツールでは、5 タプルのパケット パラメーター ベースの検証メカニズムを使用して、受信または送信のパケットが VM から許可または拒否されているかどうかを検出します。 ツール内で、ローカルおよびリモート ポート、プロトコル (TCP または UDP)、ローカル IP、リモート IP、VM、VM のネットワーク アダプターを指定できます。
次のホップ
IaaS VM からのトラフィックは、ネットワーク インターフェイス (NIC) に関連付けられている有効なルートに基づいて宛先に送信されます。 次ホップは、特定の VM と NIC からパケットの次ホップの種類と IP アドレスを取得します。 次ホップを知ることは、トラフィックが目的の宛先に送信されているかどうか、またはトラフィックがどこにも送信されていないかどうかを判断するのに役立ちます。 トラフィックがオンプレミスの場所または仮想アプライアンスに送信されるルートの不適切な構成は、接続の問題につながる可能性があります。 ネクスト ホップからは、ネクスト ホップに関連付けられているルート テーブルも返されます。 ルートがユーザー定義ルートとして定義されている場合は、そのルートが返されます。 それ以外の場合、次ホップは System Route
を返します。
有効なセキュリティ規則
ネットワーク セキュリティ グループ (NSG) は、送信元と宛先の IP アドレスとポート番号に基づいてパケットをフィルター処理します。 Azure 仮想ネットワーク上の IaaS リソースには、複数の NSG を適用できます。 リソースのすべての NSG に適用されるすべてのルールを考慮することで、有効なセキュリティ規則ツールを使用すると、一部のトラフィックが拒否または許可される理由を判断できます。
パケット キャプチャ
パケット キャプチャは、Network Watcher を通じてリモートで開始される仮想マシン拡張機能です。 この機能により、オペレーティング システム ツールまたはサードパーティのユーティリティを使用して、特定の仮想マシンでパケット キャプチャを手動で実行する負担が軽減されます。 パケット キャプチャは、ポータル、PowerShell、Azure CLI、または REST API を使用してトリガーできます。 Network Watcher を使用すると、キャプチャ セッションのフィルターを構成して、監視するトラフィックを確実にキャプチャできます。 フィルターは、5 組 (プロトコル、ローカル IP アドレス、リモート IP アドレス、ローカル ポート、リモート ポート) の情報に基づいています。 キャプチャされたデータは、ローカル ディスクまたはストレージ BLOB に格納されます。
接続のトラブルシューティング
接続のトラブルシューティング ツールは、ソース VM と宛先 VM の間の TCP 接続を確認します。 FQDN、URI、または IP アドレスを使用して、宛先 VM を指定できます。 接続が成功すると、次のような通信に関する情報が表示されます。
- ミリ秒単位の待機時間。
- 送信されたプローブ パケットの数。
- 宛先への完全なルート内のホップの数。
接続に失敗した場合、ツールにはエラーに関する詳細が表示されます。 次のエラーの種類が表示される場合があります。
- CPU: CPU 使用率が高いため、接続に失敗しました。
- メモリ: メモリ使用率が高いため、接続に失敗しました。
- GuestFirewall: Azure の外部にあるファイアウォールが接続をブロックしました。
- DNSResolution: 宛先 IP アドレスを解決できませんでした。
- NetworkSecurityRule: NSG によって接続がブロックされました。
- UserDefinedRoute: ルーティング テーブルに正しくないユーザー ルートがあります。
VPN のトラブルシューティング
Network Watcher には、ゲートウェイと接続のトラブルシューティング機能が用意されています。 この機能は、ポータル、PowerShell、Azure CLI、または REST API を使用して呼び出すことができます。 Network Watcher が呼び出されると、ゲートウェイまたは接続の正常性が診断され、適切な結果が返されます。 要求は実行時間の長いトランザクションです。 返される暫定的な結果は、リソースの正常性の全体像を示します。
次の一覧では、VPN トラブルシューティング API を呼び出すことによって返される値について説明します。
- startTime: トラブルシューティングが開始された時刻。
- endTime: トラブルシューティングが終了した時刻。
- code: この値は、単一の診断エラーが発生した場合に
UnHealthy
されます。 - results: 接続または仮想ネットワーク ゲートウェイで返された結果のコレクション。
- id: エラーの種類。
- summary: エラーの概要。
- detailed: エラーの詳細な説明。
- recommendedActions: 実行する推奨アクションのコレクション。
- actionText: 実行するアクションを説明するテキスト。
- actionUri: 実行するアクションを説明するドキュメントの URI。
- actionUriText: アクション テキストの簡単な説明。