Individuare il tipo di hop successivo tramite la funzionalità Hop successivo di Network Watcher di Azure usando l'API REST di Azure

Hop successivo è una funzionalità di Network Watcher che consente di recuperare il tipo di hop successivo e l'indirizzo IP in base a una macchina virtuale specificata. La funzionalità è utile per determinare se il traffico in uscita da una macchina virtuale attraversa gateway, Internet o reti virtuali per arrivare alla propria destinazione.

Prima di iniziare

ARMclient viene usato per chiamare l'API REST con PowerShell. ARMClient è reperibile in Chocolatey in ARMClient on Chocolatey (ARMClient in Chocolatey)

Questo scenario presuppone il completamento dei passaggi descritti in Creare un servizio Network Watcher per creare un servizio Network Watcher.

Scenario

Lo scenario illustrato in questo articolo usa la funzionalità Hop successivo di Network Watcher che rileva il tipo di hop successivo e l'indirizzo IP di una risorsa. Per altre informazioni sulla funzionalità di individuazione dell'hop successivo, consultare la panoramica sulla funzionalità Hop successivo.

In questo scenario si apprenderà come:

  • Recuperare l'hop successivo per una macchina virtuale.

Accedere con ARMClient

Accedere ad armclient con le credenziali di Azure.

armclient login

Recuperare una macchina virtuale

Eseguire lo script seguente per restituire la macchina virtuale. Queste informazioni sono necessarie per eseguire l'hop successivo.

Il codice seguente richiede i valori per le variabili seguenti:

  • subscriptionId: l'ID sottoscrizione da usare.
  • resourceGroupName: il nome di un gruppo di risorse contenente le macchine virtuali.
$subscriptionId = '<subscription id>'
$resourceGroupName = '<resource group name>'

armclient get https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Compute/virtualMachines?api-version=2015-05-01-preview

L'ID della macchina virtuale dell'output seguente viene usato nell'esempio seguente:

...
,
      "type": "Microsoft.Compute/virtualMachines",
      "location": "westcentralus",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ContosoExampleRG/providers/Microsoft.Compute
/virtualMachines/ContosoVM",
      "name": "ContosoVM"
    }
  ]
}

Ottenere l'hop successivo

Dopo aver creato l'intestazione di autorizzazione, è possibile recuperare l'hop successivo da una macchina virtuale. Perché l'esempio di codice funzioni devono essere sostituiti i valori seguenti.

Importante

Per le chiamate dell'API REST di Network Watcher, il nome del gruppo di risorse nell'URI della richiesta è il gruppo di risorse che contiene Network Watcher, non le risorse su cui eseguono le azioni di diagnostica.

$sourceIP = "10.0.0.4"
$destinationIP = "8.8.8.8"
$resourceGroupName = <resource group name>
$requestBody = @"
{
    'targetResourceId': '${targetUri}',
    'sourceIpAddress': '${sourceIP}',
    'destinationIpAddress': '${destinationIP}',
    'targetNicResourceId' : '${targetNic}'
}
"@

armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/nextHop?api-version=2016-12-01" $requestBody
Nota

La funzionalità Hop successivo richiede che la risorsa VM sia allocata.

Risultati

Il seguente frammento di codice è un esempio dell'output ricevuto. I risultati contengono i valori seguenti:

  • nextHopType: questo è uno dei seguenti valori: Internet, VirtualAppliance, VirtualNetworkGateway, VnetLocal, HyperNetGateway o None.
  • nextHopIpAddress: l'indirizzo IP dell'hop successivo.
  • routeTableId: il valore è un URI per la tabella di route associata alla route oppure, se non ci sono route definite dall'utente, viene restituito il valore System Route.

Di seguito sono riportati i risultati in formato json.

{
  "nextHopType": "Internet",
  "routeTableId": "System Route"
}

Passaggi successivi

Dopo aver scoperto l'hop successivo per una macchina virtuale, è possibile visualizzare le informazioni sulla sicurezza delle risorse di rete visitando Security View overview (Panoramica della visualizzazione della sicurezza)