Implementowanie routingu ruchu w sieci wirtualnej

Ukończone

Platforma Azure automatycznie tworzy tabelę tras dla każdej podsieci w sieci wirtualnej platformy Azure i dodaje do tabeli domyślne trasy systemu. Możesz zastąpić niektóre trasy systemowe platformy Azure trasami niestandardowymi i dodać dodatkowe trasy niestandardowe do tabel tras. Platforma Azure kieruje ruch wychodzący z podsieci na podstawie tras w tabeli tras podsieci.

Trasy systemowe

Platforma Azure automatycznie tworzy trasy systemowe i przypisuje trasy do każdej podsieci w sieci wirtualnej. Nie można tworzyć ani usuwać tras systemowych, ale można zastąpić niektóre trasy systemowe tras niestandardowymi. Platforma Azure tworzy domyślne trasy systemowe dla każdej podsieci i dodaje dodatkowe opcjonalne trasy domyślne do określonych podsieci lub do każdej podsieci, gdy korzystasz z określonych możliwości platformy Azure.

Trasy domyślne

Każda trasa zawiera prefiks adresu i typ następnego przeskoku. Gdy ruch opuszczający podsieć jest wysyłany na adres IP w ramach prefiksu adresu trasy, trasa zawierająca prefiks jest trasą używaną przez platformę Azure. Przy każdym utworzeniu sieci wirtualnej platforma Azure automatycznie tworzy następujące domyślne trasy systemowe dla każdej podsieci w sieci wirtualnej:

Source

Prefiksy adresów

Typ następnego skoku

Domyślne

Unikatowy dla sieci wirtualnej

Sieć wirtualna

Domyślne

0.0.0.0/0

Internet

Wartość domyślna

10.0.0.0/8

Brak

Wartość domyślna

192.168.0.0/16

Brak

Wartość domyślna

100.64.0.0/10

Brak

W kategoriach routingu przeskok to punkt drogowy na całej trasie. W związku z tym następny przeskok jest następnym punktem drogi, do którego ruch jest kierowany do jego podróży do jego ostatecznego miejsca docelowego. Typy następnego przeskoku wymienione w powyższej tabeli określają sposób, w jaki platforma Azure kieruje ruch przeznaczony dla wymienionego prefiksu adresu. Typy następnego przeskoku są zdefiniowane w następujący sposób:

  • Sieć wirtualna: kieruje ruch między zakresami adresów w przestrzeni adresowej sieci wirtualnej. Platforma Azure tworzy trasę z prefiksem adresu odpowiadającym każdemu zakresowi adresów zdefiniowanemu w przestrzeni adresowej sieci wirtualnej. Platforma Azure automatycznie kieruje ruchem między podsieciami za pomocą tras utworzonych dla każdego zakresu adresów.

  • Internet: kieruje określonym przez prefiks adresu ruchem do Internetu. Domyślna trasa systemowa określa prefiks adresu 0.0.0.0/0. Platforma Azure kieruje ruch dla żadnego adresu nieokreślonego przez zakres adresów w sieci wirtualnej do Internetu, chyba że adres docelowy jest przeznaczony dla usługi platformy Azure. Platforma Azure kieruje dowolny ruch przeznaczony dla swojej usługi bezpośrednio do usługi za pośrednictwem sieci szkieletowej, zamiast kierować ruch do Internetu. Można zastąpić domyślną trasę systemową platformy Azure dla prefiksu adresu 0.0.0.0/0 za pomocą trasy niestandardowej.

  • Brak: ruch kierowany do typu następnego przeskoku None jest porzucony, a nie kierowany poza podsieć. Platforma Azure automatycznie tworzy trasy domyślne dla następujących prefiksów adresów:

    • 10.0.0.0/8, 172.16.0.0/12 i 192.168.0.0.0/16: zarezerwowane do użytku prywatnego w RFC 1918.
    • 100.64.0.0/10: zarezerwowane w dokumencie RFC 6598.

Po przypisaniu dowolnego z poprzednich zakresów adresów w przestrzeni adresowej sieci wirtualnej platforma Azure automatycznie zmieni typ następnego przeskoku trasy z Brak na Sieć wirtualna. Po przypisaniu zakresu adresów do przestrzeni adresowej sieci wirtualnej, która obejmuje, ale nie jest taka sama jak, jeden z czterech zarezerwowanych prefiksów adresów, platforma Azure usuwa trasę dla tego prefiksu i dodaje trasę dla dodanego przez Ciebie prefiksu adresu, przy czym Sieć wirtualna jest typem następnego przeskoku.

Opcjonalne trasy domyślne

Platforma Azure dodaje domyślne trasy systemowe dla wszystkich funkcji platformy Azure, które włączysz. W zależności od możliwości platforma Azure dodaje opcjonalne trasy domyślne do określonych podsieci w sieci wirtualnej albo do wszystkich podsieci w sieci wirtualnej. Do dodatkowych tras systemowych i typów następnych przeskoków, które platforma Azure może dodać, gdy włączysz różne możliwości, należą:

Source

Prefiksy adresów

Typ następnego skoku

Podsieć w sieci wirtualnej, do którego jest dodawana trasa

Wartość domyślna

Unikatowy dla sieci wirtualnej, na przykład: 10.1.0.0/16

Komunikacja równorzędna sieci wirtualnych

wszystkie

Brama sieci wirtualnej

Prefiksy anonsowane lokalnie za pośrednictwem protokołu BGP lub skonfigurowane w bramie sieci lokalnej

Brama sieci wirtualnej

wszystkie

Wartość domyślna

Wiele

VirtualNetworkServiceEndpoint

Tylko podsieć, dla których jest włączony punkt końcowy usługi

  • Komunikacja równorzędna sieci wirtualnej: podczas tworzenia komunikacji równorzędnej sieci wirtualnej między dwiema sieciami wirtualnymi jest dodawana trasa dla każdego zakresu adresów w przestrzeni adresowej każdej sieci wirtualnej.

  • Brama sieci wirtualnej: po dodaniu bramy sieci wirtualnej do sieci wirtualnej platforma Azure dodaje co najmniej jedną trasę z bramą sieci wirtualnej jako typ następnego przeskoku. Źródło jest wyświetlane jako brama sieci wirtualnej, ponieważ brama dodaje trasy do podsieci.

    • Jeśli Twoja brama sieci lokalnej wymienia trasy protokołu BGP z bramą sieci wirtualnej platformy Azure, dla każdej trasy propagowanej z bramy sieci lokalnej dodawana jest trasa. Istnieją ograniczenia liczby tras, które można propagować do bramy sieci wirtualnej platformy Azure, dlatego należy podsumować trasy lokalne do największych możliwych zakresów adresów. Aby uzyskać więcej informacji na temat liczby tras, które można propagować, zobacz Limity sieci.

VirtualNetworkServiceEndpoint: platforma Azure dodaje publiczne adresy IP dla niektórych usług do tabeli tras po włączeniu punktu końcowego usługi do usługi. Punkty końcowe usługi są włączane dla poszczególnych podsieci w sieci wirtualnej, więc trasa jest dodawana tylko do tabeli tras podsieci, dla której jest włączony punkt końcowy usługi. Publiczne adresy IP usług platformy Azure zmieniają się okresowo, a platforma Azure zarządza aktualizacjami tabel routingu w razie potrzeby.

Typy następnego przeskoku Komunikacja równorzędna sieci wirtualnej i VirtualNetworkServiceEndpoint są dodawane tylko do tabel tras podsieci w sieciach wirtualnych utworzonych za pośrednictwem modelu wdrażania przy użyciu usługi Azure Resource Manager. Typy następnych przeskoków nie są dodawane do tabel tras, które są skojarzone z podsieciami sieci wirtualnej utworzonymi za pośrednictwem klasycznego modelu wdrażania.

Trasy niestandardowe

Aby dokładniej kontrolować sposób kierowania ruchu sieciowego, możesz przesłonić domyślne trasy tworzone przez platformę Azure przy użyciu własnych tras zdefiniowanych przez użytkownika (UDR). Ta technika może być przydatna, gdy chcesz upewnić się, że ruch między dwiema podsieciami przechodzi przez urządzenie zapory lub jeśli chcesz upewnić się, że żaden ruch z sieci wirtualnej nie może być kierowany do Internetu.

Trasy zdefiniowane przez użytkownika

Możesz utworzyć trasy niestandardowe lub zdefiniowane przez użytkownika (statyczne) na platformie Azure, aby zastąpić domyślne trasy systemowe platformy Azure lub dodać dodatkowe trasy do tabeli tras podsieci.

Na platformie Azure każda podsieć może mieć zero lub jedną skojarzną tabelę tras. Podczas tworzenia tabeli tras i kojarzenia jej z podsiecią trasy są łączone z lub przesłaniają domyślne trasy, które platforma Azure dodaje do podsieci.

Podczas tworzenia tras zdefiniowanych przez użytkownika możesz określić poniższe typy następnych przeskoków:

Urządzenie wirtualne: urządzenie wirtualne to maszyna wirtualna, na której zwykle działa aplikacja sieci, taka jak zapora. Podczas tworzenia trasy z typem przeskoku Urządzenie wirtualne należy określić także adres IP następnego przeskoku. Adresem IP może być:

  • Prywatny adres IP interfejsu sieciowego dołączonego do maszyny wirtualnej.
  • Prywatny adres IP wewnętrznego modułu równoważenia obciążenia platformy Azure.

Brama sieci wirtualnej: określ, kiedy ruch przeznaczony dla określonych prefiksów adresów ma być kierowany do bramy sieci wirtualnej. Brama sieci wirtualnej musi zostać utworzona z typem VPN.

Brak: określ, kiedy chcesz porzucić ruch do prefiksu adresu, zamiast przekazywać ten ruch do miejsca docelowego.

Sieć wirtualna: określ, kiedy chcesz zastąpić domyślny routing w sieci wirtualnej.

Internet: określ, kiedy chcesz jawnie skierować ruch przeznaczony do prefiksu adresu do Internetu lub czy chcesz, aby ruch przeznaczony do usług platformy Azure mających publiczne adresy IP pozostał w sieci szkieletowej platformy Azure.

Konfigurowanie tras zdefiniowanych przez użytkownika

Oto przykład, w którym masz sieć wirtualną zawierającą trzy podsieci.

  • Podsieci to Fronton, DMZ i Backend. W podsieci DMZ istnieje wirtualne urządzenie sieciowe (WUS). Urządzenia WUS to maszyny wirtualne, które pomagają w działaniu funkcji sieciowych, takich jak optymalizacja routingu i zapory.
  • Chcesz upewnić się, że cały ruch z podsieci frontonu przechodzi przez urządzenie WUS do podsieci zaplecza.

Diagram sieci wirtualnej z przypisaną tabelą routingu.

Tworzenie tabeli routingu

Tworzenie tabeli routingu jest proste. Należy podać nazwę, subskrypcję, grupę zasobów i lokalizację. Decydujesz się również na użycie propagacji trasy bramy sieci wirtualnej.

Zrzut ekranu przedstawiający blok Tworzenie tabeli tras w witrynie Azure Portal.

Trasy są automatycznie dodawane do tabeli tras dla wszystkich podsieci z włączoną propagacją bramy sieci wirtualnej. W przypadku korzystania z usługi ExpressRoute propagacja gwarantuje, że wszystkie podsieci uzyskają informacje o routingu.

Tworzenie trasy niestandardowej

W naszym przykładzie

  • Nowa trasa nosi nazwę ToPrivateSubnet.
  • Podsieć prywatna to 10.0.1.0/24.
  • Trasa używa urządzenia wirtualnego. Zwróć uwagę na inne opcje typu następnego przeskoku: brama sieci wirtualnej, sieć wirtualna, Internet i brak.
  • Urządzenie wirtualne znajduje się pod adresem 10.0.2.4.

Zrzut ekranu przedstawiający stronę Dodawanie trasy. Lista rozwijana Typ następnego przeskoku jest wyróżniona. Wybrane jest urządzenie wirtualne.

Podsumowując, ta trasa dotyczy wszystkich prefiksów adresów w wersji 10.0.1.0/24 (podsieć prywatna). Ruch kierowany do tych adresów zostanie wysłany do urządzenia wirtualnego z adresem 10.0.2.4.

Kojarzenie tabeli tras

Ostatnim krokiem w naszym przykładzie jest skojarzenie podsieci Publicznej z nową tabelą routingu. Każda podsieć może mieć skojarzoną ze sobą żadną lub jedną tabelę tras.

Zrzut ekranu przedstawiający tabelę tras skojarzona z siecią wirtualną.

Uwaga

Domyślnie użycie tras systemowych spowoduje przejście bezpośrednio do podsieci prywatnej. Jednak w przypadku trasy zdefiniowanej przez użytkownika można wymusić ruch przez urządzenie wirtualne.

Uwaga

W tym przykładzie urządzenie wirtualne nie powinno mieć publicznego adresu IP i należy włączyć przekazywanie adresów IP.

Zabezpieczanie sieci wirtualnej przy użyciu wymuszonego tunelowania

Wymuszane tunelowanie umożliwia przekierowywanie lub „wymuszanie” przekazywania całego ruchu internetowego z powrotem do lokalizacji lokalnej za pośrednictwem tunelu VPN między lokacjami do celów przeprowadzania inspekcji. Jest to krytyczne wymaganie dotyczące zabezpieczeń dla większości zasad IT przedsiębiorstwa. Jeśli nie skonfigurujesz wymuszonego tunelowania, ruch związany z Internetem z maszyn wirtualnych na platformie Azure zawsze przechodzi z infrastruktury sieciowej platformy Azure bezpośrednio do Internetu, bez możliwości inspekcji lub inspekcji ruchu. Nieautoryzowany dostęp do Internetu może potencjalnie prowadzić do ujawnienia informacji lub innych rodzajów naruszeń zabezpieczeń. Wymuszone tunelowanie można skonfigurować przy użyciu programu Azure PowerShell. Nie można go skonfigurować przy użyciu witryny Azure Portal.

W poniższym przykładzie podsieć frontonu nie jest tunelowana wymusić. Obciążenia w podsieci frontonu mogą nadal akceptować żądania klientów i odpowiadać na nie bezpośrednio z Internetu. Podsieci mid-tier i Backend są wymuszone tunelowane. Wszystkie połączenia wychodzące z tych dwóch podsieci do Internetu zostaną wymuszone lub przekierowane z powrotem do lokacji lokalnej za pośrednictwem jednego z tuneli sieci VPN typu lokacja-lokacja (S2S).

Podsieci zaplecza i średniej warstwy Wymuszone tunelowanie za pośrednictwem podsieci frontonu P N P 25 V P N kierowane bezpośrednio do Internetu.

Konfigurowanie wymuszonego tunelowania

Wymuszone tunelowanie na platformie Azure jest konfigurowane przy użyciu niestandardowych tras zdefiniowanych przez użytkownika sieci wirtualnej.

  • Każda podsieć sieci wirtualnej ma wbudowaną tabelę routingu systemu. Tabela routingu systemu ma następujące trzy grupy tras:

    • Trasy lokalnej sieci wirtualnej: kieruj bezpośrednio do docelowych maszyn wirtualnych w tej samej sieci wirtualnej.
    • Trasy lokalne: kierowanie do bramy sieci VPN platformy Azure.
    • Trasa domyślna: kierowanie bezpośrednio do Internetu. Pakiety przeznaczone do prywatnych adresów IP, które nie są objęte poprzednimi dwoma trasami, są porzucane.
  • Aby skonfigurować wymuszone tunelowanie, należy wykonać następujące czynności:

    • Utwórz tabelę routingu.
    • Dodaj trasę domyślną zdefiniowaną przez użytkownika do bramy sieci VPN.
    • Skojarz tabelę routingu z odpowiednimi podsieciami sieci wirtualnej.
  • Wymuszone tunelowanie musi być skojarzone z siecią wirtualną, która ma bramę sieci VPN opartą na trasach.

    • Należy ustawić domyślne połączenie lokacji między lokacjami lokalnymi połączonymi z siecią wirtualną.
    • Lokalne urządzenie sieci VPN musi być skonfigurowane przy użyciu selektorów ruchu 0.0.0.0/0.

Korzystanie z wymuszonego tunelowania pozwala ograniczyć i sprawdzić dostęp do Internetu z maszyn wirtualnych i usług w chmurze na platformie Azure, jednocześnie umożliwiając architekturę wielowarstwowej usługi dostęp do Internetu, którego wymaga.

Konfigurowanie usługi Azure Route Server

Usługa Azure Route Server upraszcza routing dynamiczny między wirtualnym urządzeniem sieciowym a siecią wirtualną. Umożliwia ona wymianę informacji routingu bezpośrednio za pośrednictwem protokołu routingu BGP (Border Gateway Protocol) między dowolnym urządzeniem WUS obsługującym protokół routingu BGP i sieciĄ zdefiniowaną przez oprogramowanie platformy Azure (SDN) w sieci wirtualnej platformy Azure bez konieczności ręcznego konfigurowania lub obsługi tabel tras. Azure Route Server to w pełni zarządzana usługa i jest skonfigurowana z wysoką dostępnością.

Usługa Azure Route Server upraszcza konfigurację, zarządzanie i wdrażanie urządzenia WUS w sieci wirtualnej.

  • Nie trzeba już ręcznie aktualizować tabeli routingu w urządzeniu WUS za każdym razem, gdy adresy sieci wirtualnej są aktualizowane.

  • Nie trzeba już ręcznie aktualizować tras zdefiniowanych przez użytkownika za każdym razem, gdy urządzenie WUS ogłasza nowe trasy lub wycofa stare trasy.

  • Za pomocą usługi Azure Route Server można połączyć równorzędnie wiele wystąpień urządzenia WUS. Można skonfigurować atrybuty protokołu BGP w urządzeniu WUS i, w zależności od projektu (np. aktywne-aktywne pod kątem wydajności lub aktywne-pasywne w celu zapewnienia odporności), poinformuj usługę Azure Route Server, które wystąpienie urządzenia WUS jest aktywne lub które jest pasywne.

  • Interfejs między urządzeniem WUS i usługą Azure Route Server jest oparty na wspólnym protokole standardowym. Jeśli urządzenie WUS obsługuje protokół BGP, możesz połączyć go za pomocą usługi Azure Route Server.

  • Usługę Azure Route Server można wdrożyć w dowolnej nowej lub istniejącej sieci wirtualnej.

  • Dowiedz się, jak wdrożyć usługę Azure Route Server

Diagnozowanie problemu z routingiem

Wyobraź sobie, że próbujesz nawiązać połączenie z określoną maszyną wirtualną w sieci wirtualnej platformy Azure, która stale kończy się niepowodzeniem. Problem z routingiem można zdiagnozować, wyświetlając trasy, które są skuteczne dla interfejsu sieciowego na maszynie wirtualnej. Obowiązujące trasy dla wszystkich interfejsów sieciowych w podsieci to kombinacja tworzonych tras, tras domyślnych platformy Azure i wszelkich tras propagowanych z sieci lokalnej za pośrednictwem bramy sieci VPN platformy Azure za pośrednictwem protokołu BGP (Border Gateway).

Obowiązujące trasy dla każdego interfejsu sieciowego można wyświetlić przy użyciu witryny Azure Portal, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure. W poniższych krokach przedstawiono przykłady każdej techniki. W każdym przypadku dane wyjściowe są zwracane tylko wtedy, gdy maszyna wirtualna jest w stanie uruchomienia. Jeśli istnieje wiele interfejsów sieciowych dołączonych do maszyny wirtualnej, możesz przejrzeć obowiązujące trasy dla każdego interfejsu sieciowego. Ponieważ każdy interfejs sieciowy może znajdować się w innej podsieci, każdy interfejs sieciowy może mieć różne efektywne trasy.

Wyświetlanie obowiązujących tras w witrynie Azure Portal

  1. Zaloguj się do witryny Azure Portal przy użyciu konta platformy Azure, które ma niezbędne uprawnienia.

  2. W polu wyszukiwania wprowadź nazwę maszyny wirtualnej, którą chcesz zbadać.

  3. Wybierz maszynę wirtualną z wyników wyszukiwania.

  4. W obszarze Ustawienia wybierz pozycję Sieć i przejdź do zasobu interfejsu sieciowego, wybierając jego nazwę.

    Azure Portal — wybierz określoną kartę sieciową.

  5. W obszarze Pomoc techniczna i rozwiązywanie problemów wybierz pozycję Obowiązujące trasy. Na poniższej ilustracji przedstawiono obowiązujące trasy dla interfejsu sieciowego o nazwie myVMNic1 :

    Azure Portal — obowiązujące trasy dla określonej karty sieciowej.

Wyświetlanie obowiązujących tras przy użyciu programu Azure PowerShell

Obowiązujące trasy dla interfejsu sieciowego można wyświetlić za pomocą polecenia Get-AzEffectiveRouteTable. Poniższy przykład pobiera obowiązujące trasy dla interfejsu sieciowego o nazwie myVMNic1, czyli w grupie zasobów o nazwie myResourceGroup:

Get-AzEffectiveRouteTable `

-NetworkInterfaceName myVMNic1 `

-ResourceGroupName myResourceGroup `

Rozwiązywanie problemu z routingiem

Kroki, które można wykonać w celu rozwiązania problemu z routingiem, mogą obejmować:

  1. Dodaj trasę niestandardową, aby zastąpić trasę domyślną. Dowiedz się, jak dodać trasę niestandardową.
  2. Zmień lub usuń trasę niestandardową, która powoduje kierowanie ruchu do niepożądanej lokalizacji. Dowiedz się, jak zmienić lub usunąć trasę niestandardową.
  3. Upewnij się, że tabela tras jest skojarzona z poprawną podsiecią (która zawiera interfejs sieciowy). Dowiedz się, jak skojarzyć tabelę tras z podsiecią.
  4. Upewnij się, że wdrożone urządzenia, takie jak brama sieci VPN platformy Azure lub wdrożone urządzenia wirtualne sieci, działają zgodnie z oczekiwaniami.

Wybierz najlepszą odpowiedź na każde z poniższych pytań. Następnie wybierz pozycję Sprawdź odpowiedzi.

Sprawdź swoją wiedzę

1.

Jaki typ tras umożliwia przesłanianie tras skonfigurowanych przez platformę Azure?

2.

W sieci wirtualnej występują pewne problemy z routingiem. Co inżynier zrobiłby, aby rozpocząć diagnozowanie problemu?