Diagnostika problému se směrováním sítě virtuálních počítačů pomocí Azure CLI
V tomto článku se dozvíte, jak pomocí nástroje dalšího směrování Služby Azure Network Watcher řešit a diagnostikovat potíže se směrováním virtuálních počítačů, které brání správné komunikaci s jinými prostředky.
Požadavky
Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
Azure Cloud Shell nebo Azure CLI.
Kroky v tomto článku spouští příkazy Azure CLI interaktivně v Azure Cloud Shellu. Pokud chcete příkazy spustit v Cloud Shellu, vyberte Otevřít Cloud Shell v pravém horním rohu bloku kódu. Výběrem možnosti Kopírovat zkopírujte kód a vložte ho do Cloud Shellu a spusťte ho. Cloud Shell můžete spustit také z webu Azure Portal.
Ke spuštění příkazů můžete také nainstalovat Azure CLI místně . Tento článek vyžaduje použití Azure CLI verze 2.0 nebo novější. Spuštěním příkazu az --version vyhledejte nainstalovanou verzi. Pokud azure CLI spustíte místně, přihlaste se k Azure pomocí příkazu az login .
Vytvoření virtuálního počítače
Než vytvoříte virtuální počítač, musíte vytvořit skupinu prostředků, která bude virtuální počítač obsahovat. Vytvořte skupinu prostředků pomocí příkazu az group create. Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění eastus:
az group create --name myResourceGroup --location eastus
Vytvořte virtuální počítač pomocí příkazu az vm create. Pokud ve výchozím umístění klíčů ještě neexistují klíče SSH, příkaz je vytvoří. Chcete-li použít konkrétní sadu klíčů, použijte možnost --ssh-key-value
. Následující příklad vytvoří virtuální počítač myVm:
az vm create \
--resource-group myResourceGroup \
--name myVm \
--image Ubuntu2204 \
--generate-ssh-keys
Vytvoření virtuálního počítače trvá několik minut. Nepokračujte ve zbývajících krocích, dokud se virtuální počítač nevytvořil, a Azure CLI vrátí výstup.
Test síťové komunikace
Pokud chcete otestovat síťovou komunikaci se službou Network Watcher, musíte nejprve povolit sledovací proces sítě v oblasti, ve které je virtuální počítač, ve které chcete testovat, a pak pomocí funkce dalšího směrování služby Network Watcher otestovat komunikaci.
Povolení sledovacího procesu sítě
Pokud už máte v oblasti USA – východ povolený sledovací proces sítě, přeskočte na Další segment směrování. Pomocí příkazu az network watcher configure vytvořte sledovací proces sítě v oblasti USA – východ:
az network watcher configure \
--resource-group NetworkWatcherRG \
--locations eastus \
--enabled
Použití dalšího směrování
Azure automaticky vytváří trasy pro výchozí cíle. Můžete vytvořit vlastní trasy, které přepíšou ty výchozí. Někdy můžou vlastní trasy způsobit selhání komunikace. Pokud chcete otestovat směrování z virtuálního počítače, pomocí příkazu az network watcher show-next-hop určete další segment směrování, když je provoz určený pro konkrétní adresu.
Otestujte odchozí komunikaci z virtuálního počítače na jednu z IP adres pro www.bing.com:
az network watcher show-next-hop \
--dest-ip 13.107.21.200 \
--resource-group myResourceGroup \
--source-ip 10.0.0.4 \
--vm myVm \
--nic myVmVMNic \
--out table
Po několika sekundách vás výstup informuje, že nextHopType je Internet a že routeTableId je Systémová trasa. Tento výsledek vám umožní zjistit, že existuje platná trasa do cíle.
Otestujte odchozí komunikaci z virtuálního počítače na IP adresu 172.31.0.100:
az network watcher show-next-hop \
--dest-ip 172.31.0.100 \
--resource-group myResourceGroup \
--source-ip 10.0.0.4 \
--vm myVm \
--nic myVmVMNic \
--out table
Vrácený výstup vás informuje, že none je nextHopType a že routeTableId je také systémová trasa. Tento výsledek říká, že i když existuje trasa systému do cíle, neexistuje žádné další směrování, které by do cíle směrovalo provoz.
Zobrazení podrobností o trase
Pokud chcete dál analyzovat směrování, projděte si efektivní trasy pro síťové rozhraní pomocí příkazu az network nic show-effective-route-table :
az network nic show-effective-route-table \
--resource-group myResourceGroup \
--name myVmVMNic
Vrácený výstup obsahuje následující text:
{
"additionalProperties": {
"disableBgpRoutePropagation": false
},
"addressPrefix": [
"0.0.0.0/0"
],
"name": null,
"nextHopIpAddress": [],
"nextHopType": "Internet",
"source": "Default",
"state": "Active"
},
Při použití az network watcher show-next-hop
příkazu k otestování odchozí komunikace na adresu 13.107.21.200 při použití dalšího segmentu směrování se trasa s adresouPrefix 0.0.0.0.0/0** byla použita ke směrování provozu na adresu, protože žádná jiná trasa ve výstupu neobsahuje adresu. Standardně se všechny adresy, které se nezadaly v předponě adresy jiné trasy, směrují do internetu.
Při použití az network watcher show-next-hop
příkazu k otestování odchozí komunikace na verzi 172.31.0.100 vás však výsledek informoval, že neexistuje žádný typ dalšího segmentu směrování. Ve vráceném výstupu se také zobrazí následující text:
{
"additionalProperties": {
"disableBgpRoutePropagation": false
},
"addressPrefix": [
"172.16.0.0/12"
],
"name": null,
"nextHopIpAddress": [],
"nextHopType": "None",
"source": "Default",
"state": "Active"
},
Jak vidíte ve výstupu az network watcher nic show-effective-route-table
příkazu, i když existuje výchozí trasa na předponu 172.16.0.0/12, která obsahuje adresu 172.31.0.100, nextHopType je None. Azure vytváří výchozí trasu do 172.16.0.0/12, ale neurčuje typ dalšího směrování, dokud k tomu není důvod. Pokud jste například do adresního prostoru virtuální sítě přidali rozsah adres 172.16.0.0/12, Azure pro trasu změní typ nextHopType na virtuální síť . Kontrola by pak zobrazovala virtuální síť jako nextHopType.
Vyčištění prostředků
Pokud už je nepotřebujete, můžete k odebrání skupiny prostředků a všech prostředků, které obsahuje, použít příkaz az group delete:
az group delete --name myResourceGroup --yes
Další kroky
V tomto článku jste vytvořili virtuální počítač a diagnostikovali směrování sítě z virtuálního počítače. Dozvěděli jste se, že Azure vytváří několik výchozích tras, a otestovali jste směrování na dva různé cíle. Přečtěte si i další informace o směrování v Azure a o tom, jak vytvářet vlastní trasy.
U odchozích připojení virtuálních počítačů můžete také určit latenci a povolený a zakázaný síťový provoz mezi virtuálním počítačem a koncovým bodem pomocí funkce řešení potíží s připojením služby Network Watcher. Komunikaci mezi virtuálním počítačem a koncovým bodem, například IP adresou nebo adresou URL v průběhu času, můžete monitorovat pomocí funkce monitorování připojení služby Network Watcher. Další informace naleznete v tématu Monitorování síťového připojení.