Ćwiczenie — sprawdzanie komunikacji równorzędnej sieci wirtualnych między maszynami wirtualnymi platformy Azure przy użyciu protokołu SSH

Ukończone

W poprzedniej lekcji skonfigurowano połączenia komunikacji równorzędnej miedzy sieciami wirtualnymi w celu umożliwienia wzajemnej komunikacji między zasobami. W konfiguracji użyto topologii gwiazdy, przypominającej piastę i szprychy. Sieć MarketingVNet była piastą, a sieci SalesVNet i ResearchVNet były szprychami.

Diagram topologii piasty i szprych dla sieci wirtualnych.

Należy pamiętać, że połączenia komunikacji równorzędnej są nieprzechodnie. Pośrednie sieci wirtualne nie zezwalają na przepływ łączności za ich pośrednictwem do połączonych sieci wirtualnych. Sieć SalesVNet może się komunikować z siecią MarketingVNet. Sieć ResearchVNet może się komunikować z siecią MarketingVNet. Sieć MarketingVNet może się komunikować zarówno z siecią SalesVNet, jak i z siecią ResearchVNet. Jedyną komunikacją, która nie jest dozwolona, jest między siecią SalesVNet i siecią ResearchVNet. Chociaż obie sieci SalesVNet i ResearchVNet są połączone z siecią MarketingVNet, nie mogą komunikować się ze sobą, ponieważ nie są bezpośrednio skomunikowane równorzędnie ze sobą nawzajem.

Sprawdzimy teraz łączność między połączeniami komunikacji równorzędnej. Najpierw należy utworzyć połączenie z usługi Azure Cloud Shell do publicznego adresu IP docelowej maszyny wirtualnej. Następnie połączysz się z docelowej maszyny wirtualnej z docelową maszyną wirtualną przy użyciu prywatnego adresu IP docelowej maszyny wirtualnej.

Ważne

Aby przetestować połączenie komunikacji równorzędnej sieci wirtualnych, połącz się z prywatnym adresem IP przypisanym do każdej maszyny wirtualnej.

  1. Nawiąż połączenie z maszynami wirtualnymi przy użyciu protokołu SSH (Secure Shell) bezpośrednio z usługi Cloud Shell. Przy użyciu protokołu SSH, najpierw znajdziesz publiczne adresy IP, które są przypisane do testowych maszyn wirtualnych.

  2. Uruchom następujące polecenie w usłudze Cloud Shell, aby wyświetlić listę adresów IP używanych do nawiązywania połączenia z maszynami wirtualnymi:

    az vm list \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --query "[*].{Name:name, PrivateIP:privateIps, PublicIP:publicIps}" \
        --show-details \
        --output table
    
  3. Zapisz dane wyjściowe. Adresy IP potrzebne do ćwiczeń w tej lekcji.

Przed rozpoczęciem testów zastanów się nad tym, co wiesz w tym module. Jakich wyników oczekujesz? Które maszyny wirtualne mogą komunikować się ze sobą i które z nich nie są?

Testowanie połączeń z maszyny wirtualnej SalesVM

W pierwszym teście użyjesz protokołu SSH w usłudze Cloud Shell, aby nawiązać połączenie z publicznym adresem IP maszyny wirtualnej SalesVM. Następnie spróbujesz nawiązać połączenie z maszyny wirtualnej SalesVM z maszynami MarketingVM i ResearchVM.

  1. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z publicznym adresem IP maszyny wirtualnej SalesVM. W poleceniu zastąp <SalesVM public IP>publicznym adresem IP.

    ssh -o StrictHostKeyChecking=no azureuser@<SalesVM public IP>
    

    Diagram przedstawiający połączenie z publicznym adresem IP maszyny wirtualnej SalesVM.

  2. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej. Wiersz polecenia pokazuje teraz, że zalogowano się do maszyny wirtualnej SalesVM.

  3. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej MarketingVM. W poleceniu zastąp <MarketingVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<MarketingVM private IP>
    

    Diagram przedstawiający połączenie z maszyny wirtualnej SalesVM z prywatnym adresem IP maszyny wirtualnej MarketingVM.

    Ta próba połączenia powinna zakończyć się powodzeniem, ponieważ istnieje połączenie komunikacji równorzędnej między sieciami wirtualnymi SalesVNet i MarketingVNet.

  4. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej.

  5. Wprowadź exit, aby zamknąć tę sesję SSH i powrócić do wiersza polecenia maszyny wirtualnej SalesVM.

  6. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej ResearchVM. W poleceniu zastąp <ResearchVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<ResearchVM private IP>
    
  7. Ta próba połączenia powinna zakończyć się niepowodzeniem, ponieważ nie istnieje połączenie komunikacji równorzędnej między sieciami wirtualnymi SalesVNet i ResearchVNet. Przed upływem limitu czasu próby połączenia może upłynąć do 60 sekund. Aby wymusić próbę zatrzymania, użyj Ctrl+C.

    Diagram przedstawiający nieudaną próbę nawiązania połączenia z maszyny SalesVM z prywatnym adresem IP maszyny Wirtualnej ResearchVM.

  8. Wprowadź exit, aby zamknąć sesję SSH i wrócić do usługi Cloud Shell.

Testowanie połączeń z maszyny wirtualnej ResearchVM

W drugim teście użyjesz protokołu SSH w usłudze Cloud Shell, aby nawiązać połączenie z publicznym adresem IP maszyny Wirtualnej ResearchVM. Następnie próbujesz nawiązać połączenie z maszyny Wirtualnej ResearchVM z maszynami MarketingVM i SalesVM.

  1. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z publicznym adresem IP maszyny wirtualnej ResearchVM. W poleceniu zastąp <ResearchVM public IP>publicznym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<ResearchVM public IP>
    

    Diagram przedstawiający połączenie z publicznym adresem IP maszyny wirtualnej ResearchVM.

  2. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej. Wiersz polecenia pokazuje teraz, że zalogowano się do maszyny wirtualnej ResearchVM.

  3. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej MarketingVM. W poleceniu zastąp <MarketingVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<MarketingVM private IP>
    

    Diagram przedstawiający połączenie z prywatnym adresem IP maszyny wirtualnej MarketingVM.

    Ta próba połączenia powinna zakończyć się powodzeniem, ponieważ istnieje połączenie komunikacji równorzędnej między sieciami wirtualnymi ResearchVNet i MarketingVNet.

  4. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej.

  5. Wprowadź exit, aby zamknąć tę sesję SSH i wrócić do wiersza polecenia maszyny wirtualnej ResearchVM.

  6. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej SalesVM. W poleceniu zastąp <SalesVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<SalesVM private IP>
    
  7. Ta próba połączenia powinna zakończyć się niepowodzeniem, ponieważ nie istnieje połączenie komunikacji równorzędnej między sieciami wirtualnymi ResearchVNet i SalesVNet. Przed upływem limitu czasu próby połączenia może upłynąć do 60 sekund. Aby wymusić próbę zatrzymania, użyj Ctrl+C.

    Diagram przedstawiający próbę nawiązania połączenia maszyny Wirtualnej ResearchVM z prywatnym adresem IP maszyny wirtualnej SalesVM.

  8. Wprowadź exit, aby zamknąć sesję SSH i wrócić do usługi Cloud Shell.

Testowanie połączeń z maszyny wirtualnej MarketingVM

W ostatnim teście użyjesz protokołu SSH w usłudze Cloud Shell, aby nawiązać połączenie z publicznym adresem IP maszyny wirtualnej MarketingVM. Następnie próbujesz nawiązać połączenie z maszyny wirtualnej MarketingVM z maszynami ResearchVM i SalesVM.

  1. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z publicznym adresem IP maszyny wirtualnej MarketingVM. W poleceniu zastąp <MarketingVM public IP>publicznym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<MarketingVM public IP>
    

    Diagram przedstawiający połączenie z publicznym adresem IP maszyny wirtualnej MarketingVM.

  2. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej. Wiersz polecenia pokazuje teraz, że zalogowano się do maszyny wirtualnej MarketingVM.

  3. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej ResearchVM. W poleceniu zastąp <ResearchVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<ResearchVM private IP>
    

    Diagram przedstawiający usługę Azure Cloud Shell łączącą się z sieciami wirtualnymi MarketingVNet i ResearchVNet przy użyciu połączenia komunikacji równorzędnej.

    Ta próba połączenia powinna zakończyć się powodzeniem, ponieważ istnieje połączenie komunikacji równorzędnej między sieciami wirtualnymi MarketingVNet i ResearchVNet.

  4. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej.

  5. Wprowadź polecenie exit , aby zamknąć tę sesję SSH i wrócić do wiersza polecenia Maszyny wirtualnej MarketingVM .

  6. Uruchom następujące polecenie w usłudze Cloud Shell, używając protokołu SSH do połączenia z prywatnym adresem IP maszyny wirtualnej SalesVM. W poleceniu zastąp <SalesVM private IP>prywatnym adresem IP tej maszyny wirtualnej.

    ssh -o StrictHostKeyChecking=no azureuser@<SalesVM private IP>
    

    Ta próba połączenia powinna również zakończyć się pomyślnie z powodu połączenia komunikacji równorzędnej między sieciami wirtualnymi MarketingVNet i SalesVNet .

    Diagram przedstawiający usługę Azure Cloud Shell łączącą się z siecią MarketingVNet i maszynami wirtualnymi SalesVNet przy użyciu połączenia komunikacji równorzędnej.

  7. Zaloguj się za pomocą hasła, które zostało użyte do utworzenia maszyny wirtualnej.

  8. Wprowadź polecenie exit , aby zamknąć tę sesję SSH i wrócić do wiersza polecenia Maszyny wirtualnej MarketingVM .

  9. Wprowadź polecenie exit , aby zamknąć sesję SSH i wrócić do usługi Cloud Shell.

Ten prosty test przy użyciu protokołu SSH pokazuje łączność sieciową między równorzędnymi sieciami wirtualnymi. Demonstruje też brak łączności sieciowej dla połączeń przechodnich.

Jeśli na tych serwerach byłyby uruchomione usługi aplikacji, łączność między serwerami umożliwiałaby komunikację między usługami działającymi na maszynach wirtualnych. Ta łączność pozwoliłaby firmie udostępniać dane między działami w zależności od potrzeb.