Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel erfahren Sie, wie Sie Routingprobleme diagnostizieren, indem Sie die effektiven Routen für eine Netzwerkschnittstelle auf einem virtuellen Computer (VM) anzeigen. Azure erstellt automatisch Standardrouten für jedes virtuelle Netzwerksubnetz. Sie können diese Standardrouten überschreiben, indem Sie benutzerdefinierte Routen in einer Routentabelle definieren und die Tabelle einem Subnetz zuordnen. Die effektiven Routen für eine Netzwerkschnittstelle sind eine Kombination aus den Standardrouten von Azure, benutzerdefinierten Routen, die Sie definieren, und alle Routen, die von Ihrem lokalen Netzwerk über ein Azure VPN-Gateway mithilfe des Border Gateway Protocol (BGP) verteilt werden. Wenn Sie noch nicht mit virtuellen Netzwerken, Netzwerkschnittstellen oder Routing arbeiten, lesen Sie die Übersicht über virtuelle Netzwerke, die Netzwerkschnittstelle und das Routing.
Szenario
Sie versuchen, eine Verbindung mit einer VM herzustellen, aber ohne Erfolg. Um zu bestimmen, warum Sie keine Verbindung mit dem virtuellen Computer herstellen können, können Sie die effektiven Routen für eine Netzwerkschnittstelle mit Azure-Portal, PowerShell oder Azure CLI anzeigen.
Die folgenden Schritte setzen voraus, dass Sie über einen virtuellen Computer verfügen, dessen effektive Routen Sie anzeigen können. Wenn Sie nicht über eine VM verfügen, stellen Sie zuerst eine Linux- oder Windows-VM zum Ausführen der Aufgaben in diesem Artikel bereit. Die Beispiele in diesem Artikel beziehen sich auf einen virtuellen Computer mit dem Namen "vm-1 " mit einer Netzwerkschnittstelle namens "vm-1445". Die VM und die Netzwerkschnittstelle befinden sich in einer Ressourcengruppe mit dem Namen "test-rg" und befinden sich in der Region "Ost-USA ". Ändern Sie die Werte in den Schritten entsprechend für den virtuellen Computer, für den Sie das Problem diagnostizieren.
Diagnostizieren über das Azure-Portal
Melden Sie sich beim Azure-Portal mit einem Azure-Konto an, das über die erforderlichen Berechtigungen verfügt.
Geben Sie oben im Azure-Portal in das Suchfeld den Namen eines virtuellen Computers ein, der sich im Ausführungsstatus befindet. Wenn der Name der VM in den Suchergebnissen angezeigt wird, wählen Sie sie aus.
Erweitern Sie den Abschnitt "Netzwerk ", und wählen Sie "Netzwerkeinstellungen" aus.
Um die Schnittstelle auszuwählen, wählen Sie dessen Namen aus.
Erweitern Sie in der Netzwerkschnittstelle die Hilfe. Wählen Sie "Effektive Routen" aus.
Wählen Sie die gewünschte Netzwerkschnittstelle aus, um die effektiven Routen anzuzeigen. Jede Schnittstelle gehört möglicherweise zu einem anderen Subnetz, was zu eindeutigen Routen führt. Das Beispiel in der Abbildung zeigt Standardrouten, die von Azure für jedes Subnetz erstellt wurden. Ihre Liste enthält die Standardrouten und kann auch zusätzliche Routen enthalten. Die Routen können von Features wie virtuellem Netzwerkpeering oder Verbindungen zu lokalen Netzwerken über ein Azure-VPN-Gateway stammen. Ausführliche Informationen zu den Routen finden Sie unter Routing für virtuelle Netzwerke. Wenn viele Routen vorhanden sind, verwenden Sie die Option "Herunterladen ", um sie als .csv Datei zu speichern, um die Überprüfung zu erleichtern.
Effektive Routen können nicht nur, wie in den vorherigen Schritten, über die VM angezeigt werden, sondern auch folgendermaßen:
Jeweilige Netzwerkschnittstelle: Erfahren Sie, wie eine Netzwerkschnittstelle angezeigt wird.
Individuelle Routingtabelle: Erfahren Sie, wie eine Routingtabelle angezeigt wird.
Diagnose mit PowerShell
Hinweis
Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.
Sie können die nachfolgenden Befehle in Azure Cloud Shell oder über PowerShell auf Ihrem Computer ausführen. Azure Cloud Shell ist eine kostenlose interaktive Shell. Sie verfügt über allgemeine vorinstallierte Tools und ist für die Verwendung mit Ihrem Konto konfiguriert. Wenn Sie PowerShell auf Ihrem Computer ausführen, müssen Sie das Azure PowerShell-Modul Version 1.0.0 oder höher ausführen. Führen Sie Get-Module -ListAvailable Az
auf Ihrem Computer aus, um nach der installierten Version zu suchen. Wenn Sie ein Upgrade ausführen müssen, finden Sie unter Installieren des Azure PowerShell-Moduls Informationen dazu. Wenn Sie PowerShell lokal ausführen, müssen Sie auch Connect-AzAccount
ausführen, um sich bei Azure mit einem Konto anzumelden, das über die erforderlichen Berechtigungen verfügt.
Rufen Sie die effektiven Routen für eine Netzwerkschnittstelle mit Get-AzEffectiveRouteTable auf. Im folgenden Beispiel werden die effektiven Routen für eine Netzwerkschnittstelle namens "vm-1445 " in einer Ressourcengruppe namens "test-rg" angezeigt:
$Params = @{
NetworkInterfaceName = "vm-1445"
ResourceGroupName = "test-rg"
}
Get-AzEffectiveRouteTable @Params | Format-Table
Um die in der Ausgabe zurückgegebenen Informationen zu verstehen, lesen Sie Routing von Datenverkehr für virtuelle Netzwerke. Die Ausgabe wird nur zurückgegeben, wenn sich der virtuelle Computer im laufenden Zustand befindet. Wenn dem virtuellen Computer mehrere Netzwerkschnittstellen angefügt sind, können Sie die effektiven Routen für jede Netzwerkschnittstelle anzeigen. Da sich jede Netzwerkschnittstelle in einem anderen Subnetz befinden kann, kann jede Netzwerkschnittstelle über unterschiedliche effektive Routen verfügen. Wenn Sie immer noch ein Kommunikationsproblem haben, finden Sie weitere Diagnosen und Überlegungen.
Wenn Sie den VM-Namen, aber nicht den Netzwerkschnittstellennamen kennen, verwenden Sie die folgenden Befehle, um die ID aller Netzwerkschnittstellen zurückzugeben, die an die VM angefügt sind:
$Params = @{
Name = "vm-1"
ResourceGroupName = "test-rg"
}
$VM = Get-AzVM @Params
$VM.NetworkProfile
Eine Ausgabe ähnlich wie im folgenden Beispiel wird angezeigt:
NetworkInterfaces
-----------------
{/subscriptions/<ID>/resourceGroups/test-rg/providers/Microsoft.Network/networkInterfaces/vm-1445
In der vorherigen Ausgabe lautet der Netzwerkschnittstellenname vm-1445.
Diagnose über die Azure CLI
Sie können die nachfolgenden Befehle in Azure Cloud Shell oder über die Befehlszeilenschnittstelle auf Ihrem Computer ausführen. Für diesen Artikel ist die Azure CLI-Version 2.0.32 oder höher erforderlich. Führen Sie az --version
aus, um die installierte Version zu ermitteln. Wenn Sie installieren oder ein Upgrade durchführen müssen, finden Sie unter Azure CLI installieren weitere Informationen. Wenn Sie die Azure CLI lokal ausführen, müssen Sie auch az login
ausführen, um sich bei Azure mit einem Konto anzumelden, das über die erforderlichen Berechtigungen verfügt.
Rufen Sie mit az network nic show-effective-route-table die effektiven Routen für eine Netzwerkschnittstelle ab. Der folgende Befehl ruft die effektiven Routen für eine Netzwerkschnittstelle namens vm-1445 ab, die sich in einer Ressourcengruppe namens "test-rg" befindet:
az network nic show-effective-route-table \
--name vm-1445 \
--resource-group test-rg
Um die in der Ausgabe zurückgegebenen Informationen zu verstehen, lesen Sie Routing von Datenverkehr für virtuelle Netzwerke. Die Ausgabe wird nur zurückgegeben, wenn sich der virtuelle Computer im laufenden Zustand befindet. Wenn dem virtuellen Computer mehrere Netzwerkschnittstellen angefügt sind, können Sie die effektiven Routen für jede Netzwerkschnittstelle anzeigen. Da sich jede Netzwerkschnittstelle in einem anderen Subnetz befinden kann, kann jede Netzwerkschnittstelle über unterschiedliche effektive Routen verfügen. Wenn Sie immer noch ein Kommunikationsproblem haben, finden Sie weitere Diagnosen und Überlegungen.
Wenn Sie den VM-Namen, aber nicht den Netzwerkschnittstellennamen kennen, verwenden Sie die folgenden Befehle, um die ID aller Netzwerkschnittstellen zurückzugeben, die an die VM angefügt sind:
az vm show \
--name vm-1 \
--resource-group test-rg
Beheben eines Problems
Das Beheben von Routingproblemen besteht in der Regel aus den folgenden Verfahren:
Hinzufügen einer benutzerdefinierten Route zum Überschreiben einer der Standardrouten von Azure. Erfahren Sie, wie Sie eine benutzerdefinierte Route hinzufügen.
Eine benutzerdefinierte Route wurde geändert oder entfernt, die dazu führen kann, dass das Routing an einen unerwünschten Speicherort erfolgt. Erfahren Sie, wie Sie eine benutzerdefinierte Route ändern oder löschen.
Stellen Sie sicher, dass die Routingtabelle, die alle definierten benutzerdefinierten Routen enthält, dem Subnetz zugeordnet ist, in dem sich die Netzwerkschnittstelle befindet. Erfahren Sie, wie Sie eine Routingtabelle einem Subnetz zuordnen.
Stellen Sie sicher, dass Geräte wie das Azure VPN-Gateway oder die bereitgestellten virtuellen Netzwerkgeräte funktionsfähig sind. Verwenden Sie die VPN-Diagnose von Network Watcher, um Probleme mit einem Azure-VPN-Gateway zu bestimmen.
Wenn Sie weiterhin Kommunikationsprobleme haben, lesen Sie Überlegungen und weitere Diagnosen.
Überlegungen
Beachten Sie bei der Behandlung von Kommunikationsproblemen die folgenden Punkte:
Routing verwendet die längste Präfix-Übereinstimmung (LPM), um die beste Route von Systemrouten, BGP und benutzerdefinierten Routen zu ermitteln. Wenn mehrere Routen dieselbe LPM-Übereinstimmung aufweisen, wählt Azure eine basierend auf der Prioritätsreihenfolge in der Routingübersicht aus. Effektive Routen zeigen nur die mit LPM übereinstimmenden Routen an, sodass es einfacher ist, Routen zu identifizieren und zu beheben, die sich auf die VM-Kommunikation auswirken.
Wenn benutzerdefinierte Routen Datenverkehr an eine virtuelle Netzwerk-Appliance (NVA) mit Virtual Appliance als nächster Hop-Typ weiterleiten, stellen Sie sicher, dass die IP-Weiterleitung der NVA aktiviert ist; andernfalls werden Pakete verworfen. Erfahren Sie, wie Sie die IP-Weiterleitung für eine Netzwerkschnittstelle aktivieren und das Betriebssystem oder die Anwendung des NVA so konfigurieren, dass Datenverkehr weitergeleitet wird.
Wenn eine Route zu 0.0.0.0/0 erstellt wird, wird der gesamte ausgehende Internetdatenverkehr an den nächsten von Ihnen angegebenen Hop weitergeleitet, z. B. an ein NVA- oder VPN-Gateway. Das Erstellen einer solchen Route wird häufig als Tunnelerzwingung bezeichnet. Remoteverbindungen mit den RDP- oder SSH-Protokollen aus dem Internet mit Ihrem virtuellen Computer funktionieren möglicherweise nicht mit dieser Route, je nachdem, wie der nächste Hop den Datenverkehr verarbeitet. Erzwungenes Tunneln kann aktiviert werden:
- Bei Verwendung eines Site-to-Site-VPN beim Erstellen einer Route mit dem nächsten Hoptyp VPN Gateway. Weitere Informationen zum Konfigurieren der erzwungenen Tunnelung.
- Wenn 0.0.0.0/0 (Standardroute) über BGP über ein virtuelles Netzwerkgateway angekündigt wird, bei Verwendung eines Site-to-Site-VPN oder einer ExpressRoute-Leitung. Weitere Informationen zur Verwendung von BGP mit Site-to-Site-VPN oder ExpressRoute finden Sie hier.
Damit der Peering-Datenverkehr des virtuellen Netzwerks ordnungsgemäß funktioniert, muss eine Systemroute mit einem Next-Hop-Typ VNET-Peering für den Präfixbereich des per Peering verknüpften virtuellen Netzwerks vorhanden sein. Wenn eine solche Route nicht vorhanden und der Peeringlink des virtuellen Netzwerks Verbunden ist:
Warten Sie einige Sekunden, und versuchen Sie es erneut. Wenn es sich um einen neu eingerichteten Peeringlink handelt, dauert das Weitergeben von Routen an alle Netzwerkschnittstellen in einem Subnetz gelegentlich etwas länger. Weitere Informationen zum Peering in virtuellen Netzwerken finden Sie unter Peering in virtuellen Netzwerken und Erstellen, Ändern oder Löschen eines Peerings virtueller Netzwerke.
Netzwerksicherheitsgruppenregeln können sich auf die Kommunikation auswirken. Weitere Informationen finden Sie unter Diagnostizieren von Problemen mit dem Filter für Netzwerkdatenverkehr eines virtuellen Computers.
Wenn dem virtuellen Computer mehrere Netzwerkschnittstellen angefügt sind, wird nur der primären Netzwerkschnittstelle im Betriebssystem des virtuellen Computers eine Standardroute (0.0.0.0/0) oder ein Gateway zugewiesen, obwohl Azure jeder Azure-Netzwerkschnittstelle Standardrouten zuweist. Erfahren Sie, wie Sie eine Standardroute für sekundäre Netzwerkschnittstellen erstellen, die einer Windows- oder Linux-VM angefügt sind. Erfahren Sie mehr über primäre und sekundäre Netzwerkschnittstellen.
Weitere Diagnosen
Um einen Schnelltest zur Bestimmung des nächsten Hoptyps für den an einen bestimmten Standort gerichteten Datenverkehr durchzuführen, nutzen Sie die Funktion Nächster Hop von Azure Network Watcher. „Nächster Hop“ gibt Ihnen Aufschluss über den nächsten Hoptyp für Datenverkehr, der an einen bestimmten Standort gerichtet ist.
Wenn keine Routen vorhanden sind, die dazu führen, dass eine VM-Netzwerkkommunikation fehlschlägt, kann das Problem auf Firewallsoftware zurückzuführen sein, die im Betriebssystem des virtuellen Computers ausgeführt wird.
Wenn Sie das Tunneln von Datenverkehr zu einem lokalen Gerät über ein VPN-Gateway oder NVA erzwingen , können Sie je nach Konfiguration des Routings für die Geräte möglicherweise keine Verbindung mit einem virtuellen Computer aus dem Internet herstellen. Vergewissern Sie sich, dass das für das Gerät konfigurierte Routing Datenverkehr entweder an eine öffentliche oder private IP-Adresse für den virtuellen Computer weiterleitet.
Verwenden Sie die Funktion Problembehandlung für Verbindung von Network Watcher, um Probleme mit der ausgehenden Kommunikation zu ermitteln, deren Ursache in Routing oder Filtern liegt bzw. betriebssystemintern ist.
Nächste Schritte
Erfahren Sie mehr über alle Aufgaben, Eigenschaften und Einstellungen für eine Routingtabelle und Routen.
Erfahren Sie mehr über alle nächsten Hoptypen, Systemrouten und die Art und Weise, wie Azure eine Route auswählt.