Azure への高度でパフォーマンスの高いワークロードの増加に伴い、これらのワークロードを実行する複雑なネットワークの運用状態の可視性と制御を高める必要があります。 こうした複雑なネットワークは、ネットワーク セキュリティ グループ、ファイアウォール、ユーザー定義ルート、および Azure が提供するリソースを使用して実装されます。 構成が複雑であるため、接続に関する問題のトラブルシューティングは困難です。
Azure Network Watcher の接続トラブルシューティング機能は、ネットワーク接続の問題を診断してトラブルシューティングする時間を短縮するのに役立ちます。 返された結果から、接続の問題の根本原因と、それがプラットフォームまたはユーザー構成の問題によるものかどうかについての分析情報が得られます。
接続のトラブルシューティングでは、ネットワーク セキュリティ グループ、ユーザー定義ルート、ブロックされたポートに関連する問題を検出するために、すべての接続の主要なチェックを実行する包括的な方法を提供することで、平均解決時間 (MTTR) が削減されます。 迅速な解決のために、ステップ バイ ステップ ガイドまたは対応するドキュメントが提供される実用的な分析情報を含む、次の結果も提供されます。
- 異なる宛先の種類 (VM、URI、FQDN、または IP アドレス) を使用した接続テスト
- 到達可能性に影響する構成の問題
- ソースから宛先への可能なすべてのホップ バイ ホップのパス。
- ホップ バイ ホップの待機時間
- 待機時間 (ソースと宛先の間の最小、最大、および平均)
- ソースから宛先へのグラフィカル トポロジ ビュー
- 接続のトラブルシューティング チェック中に失敗したプローブの数。
サポートされる変換元と変換先の種類
接続のトラブルシューティングでは、次のいずれかの Azure リソースからの TCP または ICMP 接続を確認する機能が提供されます。
- 仮想マシン
- 仮想マシン スケール セット
- Azure Bastion インスタンス
- プライベート Application Gateway の展開に登録されているゲートウェイ以外の Application Gateway V2
重要
接続のトラブルシューティングの接続テストでは、テストを実行する仮想マシンに Network Watcher エージェント VM 拡張機能がインストールされている必要があります。 この拡張機能は、他の接続トラブルシューティング テストを実行したり、移行先の仮想マシンで実行したりするのには必要ありません。
- Windows 仮想マシンに拡張機能をインストールするには、Windows 用 Network Watcher エージェント VM 拡張機能に関するページを参照してください。
- Linux 仮想マシンに拡張機能をインストールするには、Linux 用 Network Watcher エージェント VM 拡張機能に関するページを参照してください。
- 既にインストールされている拡張機能を更新するには、Azure Network Watcher エージェント VM 拡張機能の最新バージョンへの更新に関するページを参照してください。
接続のトラブルシューティングでは、次のいずれかの宛先への接続をテストできます。
- 仮想マシン
- 完全修飾ドメイン名 (FQDN)
- Uniform Resource Identifier (URI)
- IP アドレス
接続で検出された問題のトラブルシューティング
接続のトラブルシューティングでは、接続に影響する可能性がある次の種類の問題を検出できます。
- 高い VM の CPU 使用率
- 高い VM のメモリ使用率
- トラフィックをブロックしている仮想マシン (ゲスト) のファイアウォール規則
- DNS 解決の失敗
- ルートが正しく構成されていない、または見つからない
- トラフィックをブロックしているネットワーク セキュリティ グループ (NSG) ルール
- 指定したソース ポートでソケットが開けない
- Azure ExpressRoute 回線のアドレス解決プロトコル エントリがありません
- 指定された宛先ポートでサーバーがリッスンしていない
[応答]
次の表には、接続のトラブルシューティングの実行後に返されるプロパティを示します。
プロパティ | 説明 |
---|---|
接続状況 | 接続チェックの状態。 結果は Reachable か Unreachable のいずれかです。 |
平均レイテンシー (ミリ秒) | 接続チェック中の平均待機時間 (ミリ秒)。 (チェックの状態が Reachable の場合にのみ表示されます)。 |
最小レイテンシー (ミリ秒) | 接続チェック中の最小待機時間 (ミリ秒)。 (チェックの状態が Reachable の場合にのみ表示されます)。 |
最大レイテンシー (ミリ秒) | 接続チェック中の最大待機時間 (ミリ秒)。 (チェックの状態が Reachable の場合にのみ表示されます)。 |
プローブ送信 | チェック中に送信されたプローブの数。 最大値は 100 です。 |
プローブ失敗 | チェック中に失敗したプローブの数。 最大値は 100 です。 |
ホップ | 送信元から送信先へのホップ バイ ホップのパス。 |
ホップ[]。種類 | リソースの種類。 値は、Source、VirtualAppliance、VnetLocal、Internet のいずれかです。 |
ホップ[]。身分証明書 | ホップの一意識別子。 |
ホップ[]。住所 | ホップの IP アドレス。 |
ホップ[].リソースID | ホップが Azure リソースの場合、そのホップのリソース ID。 インターネット リソースの場合、リソース ID は Internet です。 |
ホップ[]。ネクストホップイズ | 次に取得されるホップの一意識別子。 |
ホップ[]。問題 | そのホップのチェック中に発生した問題のコレクション。 問題がない場合、値は空になります。 |
ホップ[]。問題[]。元 | 現在のホップで、問題が発生した場所。 使用できる値: Inbound - 前のホップから現在のホップへのリンクに問題があります。 Outbound - 現在のホップから次のホップへのリンクに問題があります。 Local - 問題が現在のホップにある |
ホップ[]。問題[]。過酷 | 検出された問題の重大度。 値は、Error か Warning のいずれかです。 |
ホップ[]。問題[]。種類 | 検出された問題の種類。 使用できる値: CPU メモリ ゲストファイアウォール DnsResolutionの ネットワークセキュリティルール UserDefinedRoute の |
ホップ[]。問題[]。文脈 | 検出された問題に関する詳細。 |
ホップ[]。問題[]。コンテキスト[].key | 返されたキーと値のペアのキー。 |
ホップ[]。問題[]。コンテキスト[].value | 返されたキーと値のペアの値。 |
NextHopAnalysis.ネクストホップタイプ | ネクスト ホップの種類。 使用できる値: ハイパーネットゲートウェイ インターネット なし バーチャルアプライアンス VirtualNetworkGateway の VnetLocalの |
NextHopAnalysis.NextHopIpAddress (英語) | ネクスト ホップの IP アドレス。 |
返されたルートに関連付けられているルート テーブルのリソース識別子。 返されたルートが、ユーザーが作成したどのルートにも対応していない場合、このフィールドには文字列 System Route が設定されます。 | |
SourceSecurityRuleAnalysis.Results[]です。プロフィール | ネットワーク構成診断プロファイル。 |
SourceSecurityRuleAnalysis.Results[]です。プロファイル.ソース | トラフィックの送信元。 設定される可能性のある値: *、IP Address/CIDR、Service Tag。 |
SourceSecurityRuleAnalysis.Results[]です。プロファイル.宛先 | トラフィックの送信先。 設定される可能性のある値: *、IP Address/CIDR、Service Tag。 |
SourceSecurityRuleAnalysis.Results[]です。Profile.DestinationPort (英語) | トラフィックの送信先ポート。 設定される可能性のある値: *、0 - 65535 の範囲の単一ポート。 |
SourceSecurityRuleAnalysis.Results[]です。プロフィール.プロトコール | 検証対象のプロトコル。 設定される可能性のある値: *、TCP、UDP。 |
SourceSecurityRuleAnalysis.Results[]です。プロファイル.ディレクション | トラフィックの方向。 設定される可能性のある値: Outbound、Inbound。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult (ネットワークセキュリティグループ結果) | ネットワーク セキュリティ グループの結果。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] | ネットワーク セキュリティ グループ診断の結果の一覧。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.セキュリティルールアクセス結果 | ネットワーク トラフィックは許可または拒否されます。 設定される可能性のある値: Allow、Deny。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] です。適用先 | ネットワーク セキュリティ グループが適用される NIC またはサブネットのリソース ID。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] です。マッチルール | 一致したネットワーク セキュリティ規則。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] です。MatchedRule.Action | ネットワーク トラフィックは許可または拒否されます。 設定される可能性のある値: Allow、Deny。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] です。MatchedRule.RuleName (ルール名) | 一致したネットワーク セキュリティ規則の名前。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.EvaluatedSecurityGroups[] です。ネットワークセキュリティグループID | ネットワーク セキュリティ グループ ID。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] | ネットワーク セキュリティ規則の評価結果の一覧。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。宛先一致 | 値は、送信先が一致するかどうかを示します。 ブール値。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。宛先ポートマッチ | 値は、送信先ポートが一致するかどうかを示します。 ブール値。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。名前 | ネットワーク セキュリティ規則の名前。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。プロトコルマッチ | 値は、プロトコルが一致するかどうかを示します。 ブール値。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。ソースマッチ | 値は、送信元が一致するかどうかを示します。 ブール値。 |
SourceSecurityRuleAnalysis.Results[]です。NetworkSecurityGroupResult.RulesEvaluationResult[] です。ソースポートマッチ | 値は、送信元ポートが一致するかどうかを示します。 ブール値。 |
DestinationSecurityRuleAnalysis (英語) | SourceSecurityRuleAnalysis の形式と同じです。 |
SourcePortStatus (ソースポートステータス) | 送信元のポートに到達できるかどうかを決定します。 使用できる値: 不明 リーチャブル 不安定 接続なし タイムアウト |
DestinationPortStatus(宛先ポートステータス) | 送信先のポートに到達できるかどうかを決定します。 使用できる値: 不明 リーチャブル 不安定 接続なし タイムアウト |
次に示すのは、ホップで見つかった問題の例です。
"Issues": [
{
"Origin": "Outbound",
"Severity": "Error",
"Type": "NetworkSecurityRule",
"Context": [
{
"key": "RuleName",
"value": "UserRule_Port80"
}
]
}
]
障害の種類
接続のトラブルシューティングでは、接続に関する障害の種類が返されます。 次の表は、返される可能性のある障害の種類の一覧です。
型 | 説明 |
---|---|
CPU (中央処理装置) | CPU の使用率が高くなっています。 |
メモリ | メモリの使用率が高くなっています。 |
ゲストファイアウォール | 仮想マシンのファイアウォールの構成によりトラフィックがブロックされています。 TCP ping は特異なユース ケースであり、許可するルールがない場合、TCP ping はターゲット IP アドレス/FQDN に到達しませんが、ファイアウォール自体がクライアントの TCP ping 要求に応答します。 このイベントはログに記録されません。 ターゲット IP アドレス/FQDN へのアクセスを許可するネットワーク ルールがある場合は、ping 要求がターゲット サーバーに到達し、その応答がクライアントに送り返されます。 このイベントは、ネットワーク規則ログに記録されます。 |
DNSResolutionの | 送信先アドレスの DNS 解決が失敗しました。 |
ネットワークセキュリティルール | ネットワーク セキュリティ グループ規則によってトラフィックがブロックされています (セキュリティ規則が返されます)。 |
ユーザー定義ルート | ユーザー定義またはシステム ルートによりトラフィックがドロップしました。 |
次のステップ
接続のトラブルシューティングを使って接続のテストとトラブルシューティングを行う方法については、次のステップに進んでください。