Sdílet prostřednictvím


Diagnostika problému se směrováním sítě virtuálních počítačů pomocí Azure CLI

V tomto článku se naučíte, jak pomocí nástroje Azure Network Watcher next hop řešit a diagnostikovat potíže se směrováním VM, který brání 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. Zvolte Kopírovat pro zkopírování kódu, a vložte ho do Cloud Shellu, 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.

Zapnout sledování sítě

Pokud už máte ve východní oblasti USA povolený sledovač sítě, přeskočte na Použijte další skok. Pomocí příkazu az network watcher configure vytvořte sledovač sítě ve východní oblasti USA:

az network watcher configure \
  --resource-group NetworkWatcherRG \
  --locations eastus \
  --enabled

Použít další skok

Azure automaticky vytváří trasy pro výchozí cíle. Můžete vytvořit vlastní trasy, které přebíjejí 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, určete pomocí příkazu az network watcher show-next-hop další skok, když je provoz směrován na 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 uvádí, že i když existuje platná systémová trasa do cíle, neexistuje žádný další "next hop", který by umožnil směrovat provoz do cíle.

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í příkazu az network watcher show-next-hop k otestování odchozí komunikace na adresu 13.107.21.200 v použijte další hop byla použita trasa s addressPrefix 0.0.0.0/0** ke směrování provozu na adresu, protože žádná jiná trasa ve výstupu tuto adresu neobsahuje. Standardně se všechny adresy, které nejsou specifikovány v prefixu adresy jiné trasy, směrují na internet.

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í.