Routing ruchu w sieci wirtualnej
Z tego artykułu dowiesz się, jak platforma Azure kieruje ruch między platformą Azure, środowiskiem lokalnym i zasobami internetowymi. Platforma Azure automatycznie tworzy tabelę tras dla każdej podsieci w sieci wirtualnej platformy Azure i dodaje do tabeli domyślne trasy systemu. Aby dowiedzieć się więcej na temat sieci wirtualnych i podsieci, zobacz Virtual network overview (Omówienie sieci wirtualnych). Niektóre trasy systemowe platformy Azure można zastąpić trasami niestandardowymi i dodać więcej tras niestandardowych 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ć tras systemowych i nie można usuwać tras systemowych, ale można zastąpić niektóre trasy systemowe trasami niestandardowymi. Platforma Azure tworzy domyślne trasy systemowe dla każdej podsieci i dodaje więcej opcjonalnych tras domyślnych do określonych podsieci lub każdej podsieci, gdy używasz określonych funkcji platformy Azure.
Wartość domyślna
Każda trasa zawiera prefiks adresu i typ następnego przeskoku. Gdy ruch opuszczający podsieć jest wysyłany do adresu IP w prefiksie adresu trasy, trasa zawierająca prefiks jest trasą używaną przez platformę Azure. Dowiedz się więcej o tym, jak platforma Azure wybiera trasę , gdy wiele tras zawiera te same prefiksy lub nakładające się prefiksy. Przy każdym utworzeniu sieci wirtualnej platforma Azure automatycznie tworzy następujące domyślne trasy systemowe dla każdej podsieci w sieci wirtualnej:
Źródło | Prefiksy adresów | Typ następnego przeskoku |
---|---|---|
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 | 172.16.0.0/12 | Brak |
Wartość domyślna | 192.168.0.0/16 | Brak |
Wartość domyślna | 100.64.0.0/10 | Brak |
Typy następnego przeskoku wymienione w powyższej tabeli określają sposób, w jaki platforma Azure kieruje ruch przeznaczony dla wymienionego prefiksu adresu. Poniżej przedstawiono wyjaśnienia typów następnego przeskoku:
Sieć wirtualna: kieruje ruchem między zakresami adresów w obrębie przestrzeni adresowej sieci wirtualnej. Platforma Azure tworzy trasę z prefiksem adresu odpowiadającym każdemu zakresowi adresów zdefiniowanemu w przestrzeni adresowej sieci wirtualnej. Jeśli przestrzeń adresowa sieci wirtualnej ma zdefiniowane wiele zakresów adresów, platforma Azure tworzy oddzielną trasę dla każdego zakresu adresów. Domyślnie platforma Azure kieruje ruch między podsieciami. Nie musisz definiować tabel tras ani bram dla platformy Azure w celu kierowania ruchu między podsieciami. Platforma Azure nie tworzy tras domyślnych dla zakresów adresów podsieci. Każdy zakres adresów podsieci mieści się w zakresie adresów przestrzeni adresowej sieci wirtualnej.
Internet: kieruje ruch określony przez prefiks adresu do Internetu. Domyślna trasa systemowa określa prefiks adresu 0.0.0.0/0. Jeśli nie zastąpisz tras domyślnych platformy Azure, platforma Azure kieruje ruch dla żadnego adresu, który nie jest określony przez zakres adresów w sieci wirtualnej do Internetu. Istnieje jeden wyjątek od tego routingu. Jeśli adres docelowy dotyczy usługi platformy Azure, platforma Azure kieruje ruch bezpośrednio do usługi za pośrednictwem sieci szkieletowej platformy Azure zamiast kierować ruch do Internetu. Ruch między usługami platformy Azure nie przechodzi przez Internet. Nie ma znaczenia, w którym regionie platformy Azure istnieje sieć wirtualna, lub w którym regionie platformy Azure jest wdrażane wystąpienie usługi platformy Azure. Domyślną trasę systemową platformy Azure dla prefiksu adresu 0.0.0.0/0 można zastąpić trasą niestandardową.
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/16: zarezerwowane do użytku prywatnego w dokumencie 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 więcej domyślnych tras systemowych dla różnych możliwości platformy Azure, ale tylko wtedy, gdy włączysz te możliwości. W zależności od możliwości platforma Azure dodaje opcjonalne trasy domyślne do określonych podsieci w sieci wirtualnej lub do wszystkich podsieci w sieci wirtualnej. W poniższej tabeli wymieniono inne trasy systemowe i typy następnego przeskoku, które platforma Azure może dodać po włączeniu różnych możliwości.
Źródło | Prefiksy adresów | Typ następnego przeskoku | Podsieć w sieci wirtualnej, której trasa jest dodawana |
---|---|---|---|
Wartość domyślna | Unikatowy dla sieci wirtualnej, na przykład: 10.1.0.0/16 | Komunikacja równorzędna sieci wirtualnej | wszystkie |
Brama sieci wirtualnej | Prefiksy anonsowane ze środowiska lokalnego za pośrednictwem protokołu BGP (Border Gateway Protocol) lub skonfigurowane w bramie sieci lokalnej | Brama sieci wirtualnej | wszystkie |
Wartość domyślna | Wiele | VirtualNetworkServiceEndpoint |
Tylko podsieć, dla której jest włączony punkt końcowy usługi |
Komunikacja równorzędna sieci wirtualnych: podczas tworzenia komunikacji równorzędnej sieci wirtualnych między dwiema sieciami wirtualnymi system dodaje trasę dla każdego zakresu adresów w przestrzeni adresowej każdej sieci wirtualnej zaangażowanej w komunikację równorzędną. Dowiedz się więcej o komunikacji równorzędnej sieci wirtualnej.
Brama sieci wirtualnej: co najmniej jedna trasa w ramach bramy sieci wirtualnej wymienionej jako typ następnego przeskoku jest dodawana po dodaniu bramy sieci wirtualnej do sieci wirtualnej. Źródło jest również bramą sieci wirtualnej, ponieważ brama dodaje trasy do podsieci. Jeśli brama sieci lokalnej wymienia trasy protokołu BGP z bramą sieci wirtualnej, system dodaje trasę dla każdej trasy. Te trasy są propagowane z lokalnej bramy sieci. Zalecamy podsumowanie tras lokalnych do największego możliwego zakresu adresów, aby propagować najmniejszą liczbę tras do bramy sieci wirtualnej platformy Azure. Istnieją ograniczenia liczby tras, które możesz propagować do bramy sieci wirtualnej platformy Azure. Aby uzyskać więcej informacji, zobacz Limity platformy Azure.
VirtualNetworkServiceEndpoint
: Publiczne adresy IP niektórych usług są dodawane do tabeli tras przez platformę Azure po włączeniu punktu końcowego usługi do usługi. Punkty końcowe usługi są włączone dla poszczególnych podsieci w sieci wirtualnej, dlatego trasa jest dodawana tylko do tabeli tras podsieci, dla której włączono punkt końcowy usługi. Publiczne adresy IP usług platformy Azure są okresowo zmieniane. Platforma Azure zarządza adresami w tabeli tras automatycznie po zmianie adresów. Dowiedz się więcej o punktach końcowych usługi sieci wirtualnej i usługach, dla których można tworzyć punkty końcowe usługi.Uwaga
Typy komunikacji równorzędnej sieci wirtualnych i
VirtualNetworkServiceEndpoint
następnego przeskoku są dodawane tylko do tabel tras podsieci w sieciach wirtualnych utworzonych za pośrednictwem modelu wdrażania usługi Azure Resource Manager. Typy następnego przeskoku nie są dodawane do tabel tras skojarzonych z podsieciami sieci wirtualnej utworzonymi za pomocą klasycznego modelu wdrażania. Dowiedz się więcej o modelach wdrażania platformy Azure.
Trasy niestandardowe
Trasy niestandardowe są tworzone przez utworzenie tras zdefiniowanych przez użytkownika lub wymianę tras protokołu BGP między bramą sieci lokalnej a bramą sieci wirtualnej platformy Azure.
Zdefiniowane przez użytkownika
Aby dostosować trasy ruchu, nie należy modyfikować tras domyślnych. Należy utworzyć trasy niestandardowe lub trasy zdefiniowane przez użytkownika (statyczne), które zastępują domyślne trasy systemowe platformy Azure. Na platformie Azure utworzysz tabelę tras, a następnie skojarzysz tabelę tras z co najmniej zerami podsieci sieci wirtualnej. Każda podsieć może mieć skojarzoną ze sobą żadną lub jedną tabelę tras. Aby dowiedzieć się więcej o maksymalnej liczbie tras, które można dodać do tabeli tras i maksymalnej liczbie tabel tras zdefiniowanych przez użytkownika, które można utworzyć dla subskrypcji platformy Azure, zobacz Limity platformy Azure.
Domyślnie tabela tras może zawierać maksymalnie 400 tras zdefiniowanych przez użytkownika. W przypadku konfiguracji routingu usługi Azure Virtual Network Manager ta liczba może być rozszerzana do 1000 tras zdefiniowanych przez użytkownika na tabelę tras. Ten zwiększony limit obsługuje bardziej zaawansowane konfiguracje routingu. Przykładem jest kierowanie ruchu z lokalnych centrów danych przez zaporę do każdej sieci wirtualnej szprych w topologii piasty i szprych, gdy masz większą liczbę sieci wirtualnych szprych.
Podczas tworzenia tabeli tras i kojarzenia jej z podsiecią trasy tabeli są łączone z trasami domyślnymi podsieci. Jeśli występują konflikty przypisań tras, trasy zdefiniowane przez użytkownika zastępują trasy domyślne.
Podczas tworzenia trasy zdefiniowanej przez użytkownika można określić następujące typy następnego przeskoku:
Urządzenie wirtualne: urządzenie wirtualne to maszyna wirtualna, na której zwykle działa aplikacja sieci, taka jak zapora. Aby dowiedzieć się więcej o różnych wstępnie skonfigurowanych wirtualnych urządzeniach sieciowych, które można wdrożyć w sieci wirtualnej, zobacz Azure Marketplace. Podczas tworzenia trasy z typem przeskoku urządzenia wirtualnego należy również określić adres IP następnego przeskoku. Adresem IP może być:
Prywatny adres IP interfejsu sieciowego dołączonego do maszyny wirtualnej. Każdy interfejs sieciowy dołączony do maszyny wirtualnej, która przesyła dalej ruch sieciowy do adresu innego niż własny, musi mieć w tym celu włączoną opcję Włącz przekazywanie IP platformy Azure. Ustawienie wyłącza sprawdzanie źródła i miejsca docelowego dla interfejsu sieciowego przez platformę Azure. Dowiedz się więcej o tym, jak włączyć przekazywanie IP dla interfejsu sieciowego. Włącz przekazywanie adresów IP jest ustawieniem platformy Azure.
Może być konieczne włączenie przekazywania adresów IP w systemie operacyjnym maszyny wirtualnej, aby urządzenie przesyłało dalej ruch między prywatnymi adresami IP przypisanymi do interfejsów sieciowych platformy Azure. Jeśli urządzenie musi kierować ruch do publicznego adresu IP, musi być serwerem proxy ruchu lub wykonać translacja adresów sieciowych (NAT) ze źródłowego prywatnego adresu IP na własny prywatny adres IP. Następnie platforma Azure wykonuje translator adresów sieciowych na publiczny adres IP przed wysłaniem ruchu do Internetu. Aby ustalić wymagane ustawienia maszyny wirtualnej, zobacz dokumentację swojego systemu operacyjnego lub aplikacji sieciowej. Aby lepiej zrozumieć połączenia wychodzące na platformie Azure, zobacz Understanding outbound connections (Opis połączeń wychodzących).
Uwaga
Wdróż urządzenie wirtualne w innej podsieci niż zasoby, które są kierowane przez urządzenie wirtualne. Wdrożenie urządzenia wirtualnego w tej samej podsieci, a następnie zastosowanie tabeli tras do podsieci, która kieruje ruch przez urządzenie wirtualne, może spowodować pętle routingu, w których ruch nigdy nie opuszcza podsieci.
Prywatny adres IP następnego przeskoku musi mieć bezpośrednią łączność bez konieczności kierowania przez bramę usługi Azure ExpressRoute lub za pośrednictwem usługi Azure Virtual WAN. Ustawienie następnego przeskoku na adres IP bez bezpośredniej łączności powoduje nieprawidłową konfigurację trasy zdefiniowanej przez użytkownika.
Prywatny adres IP wewnętrznego modułu równoważenia obciążenia platformy Azure. Moduł równoważenia obciążenia jest często używany jako część strategii wysokiej dostępności dla wirtualnych urządzeń sieciowych.
Trasę można zdefiniować z prefiksem adresu 0.0.0.0/0 i typem następnego przeskoku urządzenia wirtualnego. Ta konfiguracja umożliwia urządzeniu inspekcję ruchu i określenie, czy ruch ma być przekazywany, czy upuszczany. Jeśli zamierzasz utworzyć trasę zdefiniowaną przez użytkownika zawierającą prefiks adresu 0.0.0.0/0, najpierw odczytaj prefiks adresu 0.0.0.0/0.
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. Nie można określić bramy sieci wirtualnej utworzonej jako typu ExpressRoute w trasie zdefiniowanej przez użytkownika, ponieważ w przypadku usługi ExpressRoute należy użyć protokołu BGP dla tras niestandardowych. Nie można określić bram sieci wirtualnej, jeśli masz współistniejące połączenia wirtualnej sieci prywatnej (VPN) i usługi ExpressRoute. Możesz zdefiniować trasę, która kieruje ruch przeznaczony dla prefiksu adresu 0.0.0.0/0 do bramy sieci wirtualnej opartej na trasach.
W swojej lokalizacji możesz mieć urządzenie, które sprawdza ruch i określa, czy przekazać go dalej, czy też go porzucić. Jeśli zamierzasz utworzyć trasę zdefiniowaną przez użytkownika dla prefiksu adresu 0.0.0.0/0, najpierw odczytaj prefiks adresu 0.0.0.0/0. Zamiast konfigurować trasę zdefiniowaną przez użytkownika dla prefiksu adresu 0.0.0.0/0, możesz anonsować trasę z prefiksem 0.0.0.0/0 za pośrednictwem protokołu BGP, jeśli protokół BGP dla bramy sieci wirtualnej sieci VPN jest włączony.
Brak: określ, kiedy chcesz porzucić ruch do prefiksu adresu, zamiast przekazywać ten ruch do miejsca docelowego. Platforma Azure może wyświetlać wartość Brak dla niektórych opcjonalnych tras systemowych, jeśli nie skonfigurowano możliwości. Jeśli na przykład zobaczysz, że adres IP następnego przeskoku zawiera wartość Brak , a typ następnego przeskoku zawiera wartość Brama sieci wirtualnej lub Urządzenie wirtualne, może to być spowodowane tym, że urządzenie nie jest uruchomione lub nie jest w pełni skonfigurowane. Platforma Azure tworzy domyślne trasy systemowe dla zarezerwowanych prefiksów adresów mające pozycję Brak jako typ następnego przeskoku.
Sieć wirtualna: określ opcję Sieć wirtualna, jeśli chcesz zastąpić domyślny routing w sieci wirtualnej. Aby zapoznać się z przykładem, dlaczego można utworzyć trasę z typem przeskoku sieci wirtualnej, zobacz Przykład routingu.
Internet: określ opcję Internet , jeśli chcesz jawnie kierować ruch kierowany do prefiksu adresu do Internetu. Możesz też użyć go, jeśli chcesz, aby ruch przeznaczony dla usług platformy Azure z publicznymi adresami IP przechowywanymi w sieci szkieletowej platformy Azure.
Nie można określić komunikacji równorzędnej sieci wirtualnej ani VirtualNetworkServiceEndpoint
jako typu następnego przeskoku w trasach zdefiniowanych przez użytkownika. Platforma Azure tworzy trasy za pomocą komunikacji równorzędnej sieci wirtualnych lub VirtualNetworkServiceEndpoint
typów następnego przeskoku tylko podczas konfigurowania komunikacji równorzędnej sieci wirtualnej lub punktu końcowego usługi.
Tagi usługi dla tras zdefiniowanych przez użytkownika
Teraz można określić tag usługi jako prefiks adresu trasy zdefiniowanej przez użytkownika zamiast jawnego zakresu adresów IP. Tag usługi reprezentuje grupę prefiksów adresów IP z określonej usługi platformy Azure. Firma Microsoft zarządza prefiksami adresów uwzględnionych przez tag usługi i automatycznie aktualizuje tag usługi w miarę zmiany adresów. Ta obsługa minimalizuje złożoność częstych aktualizacji tras zdefiniowanych przez użytkownika i zmniejsza liczbę tras, które należy utworzyć. Obecnie można utworzyć 25 lub mniej tras z tagami usługi w każdej tabeli tras. W tej wersji obsługiwane jest również używanie tagów usługi w scenariuszach routingu dla kontenerów.
Dokładne dopasowanie
System zapewnia preferencję trasy z jawnym prefiksem, gdy istnieje dokładne dopasowanie prefiksu między trasą z jawnym prefiksem IP a trasą z tagiem usługi. Jeśli wiele tras z tagami usługi ma pasujące prefiksy IP, trasy są oceniane w następującej kolejności:
Tagi regionalne (na przykład
Storage.EastUS
lubAppService.AustraliaCentral
)Tagi najwyższego poziomu (na przykład
Storage
lubAppService
)AzureCloud
tagi regionalne (na przykładAzureCloud.canadacentral
lubAzureCloud.eastasia
)Tag
AzureCloud
Aby użyć tej funkcji, określ nazwę tagu usługi dla parametru prefiksu adresu w poleceniach tabeli tras. Na przykład w programie PowerShell można utworzyć nową trasę do kierowania ruchu wysyłanego do prefiksu ADRESU IP usługi Azure Storage do urządzenia wirtualnego przy użyciu tego polecenia:
$param = @{
Name = 'StorageRoute'
AddressPrefix = 'Storage'
NextHopType = 'VirtualAppliance'
NextHopIpAddress = '10.0.100.4'
}
New-AzRouteConfig @param
To samo polecenie dla interfejsu wiersza polecenia platformy Azure to:
az network route-table route create \
--resource-group MyResourceGroup \
--route-table-name MyRouteTable \
--name StorageRoute \
--address-prefix Storage \
--next-hop-type VirtualAppliance \
--next-hop-ip-address 10.0.100.4
Typy następnego przeskoku dla narzędzi platformy Azure
Nazwa wyświetlana i odwołuje się do typów następnego przeskoku różni się między witryną Azure Portal i narzędziami wiersza polecenia oraz modelami wdrażania przy użyciu usługi Resource Manager i klasycznymi wersjami wdrażania. W poniższej tabeli wymieniono nazwy używane do odwoływania się do każdego typu następnego przeskoku przy użyciu różnych narzędzi i modeli wdrażania.
Typ następnego przeskoku | Interfejs wiersza polecenia platformy Azure 2.0 i program PowerShell (Resource Manager) | Klasyczny interfejs wiersza polecenia platformy Azure i program PowerShell (wersja klasyczna) |
---|---|---|
Brama sieci wirtualnej | VirtualNetworkGateway |
VPNGateway |
Sieć wirtualna | VNetLocal |
VNETLocal (niedostępne w klasycznym interfejsie wiersza polecenia w trybie klasycznego modelu wdrażania) |
Internet | Internet | Internet (niedostępny w klasycznym interfejsie wiersza polecenia w trybie klasycznego modelu wdrażania) |
Urządzenie wirtualne | VirtualAppliance |
VirtualAppliance |
Brak | Brak | Wartość null (niedostępna w klasycznym interfejsie wiersza polecenia w trybie klasycznego modelu wdrażania) |
Komunikacja równorzędna sieci wirtualnej | Komunikacja równorzędna sieci wirtualnej | Nie dotyczy |
Punkt końcowy usługi dla sieci wirtualnej | VirtualNetworkServiceEndpoint |
Nie dotyczy |
Protokół BGP (Border Gateway Protocol)
Brama sieci lokalnej może wymieniać trasy z bramą sieci wirtualnej platformy Azure przy użyciu protokołu BGP. Użycie protokołu BGP z bramą sieci wirtualnej platformy Azure zależy od typu wybranego podczas tworzenia bramy:
- ExpressRoute: musisz użyć protokołu BGP, aby anonsować lokalne trasy do routera brzegowego firmy Microsoft. Nie można utworzyć tras zdefiniowanych przez użytkownika w celu wymuszenia ruchu do bramy sieci wirtualnej usługi ExpressRoute w przypadku wdrożenia bramy sieci wirtualnej wdrożonej jako typ usługi ExpressRoute. Można użyć tras zdefiniowanych przez użytkownika do wymuszania ruchu z trasy ekspresowej do, na przykład wirtualnego urządzenia sieciowego.
- Sieć VPN: opcjonalnie możesz użyć protokołu BGP. Aby uzyskać więcej informacji, zobacz protokół BGP z połączeniami sieci VPN typu lokacja-lokacja.
W przypadku wymiany tras z platformą Azure przy użyciu protokołu BGP oddzielna trasa jest dodawana do tabeli tras wszystkich podsieci w sieci wirtualnej dla każdego anonsowanego prefiksu. Trasa jest dodawana z bramą sieci wirtualnej wymienioną jako element źródłowy i typ następnego przeskoku.
Propagacja tras usługi ExpressRoute i usługi Azure VPN Gateway w podsieci można wyłączyć przy użyciu właściwości w tabeli tras. Po wyłączeniu propagacji tras system nie dodaje tras do tabeli tras wszystkich podsieci z wyłączoną propagacją tras bramy sieci wirtualnej. Ten proces dotyczy zarówno tras statycznych, jak i tras protokołu BGP. Łączność z połączeniami sieci VPN jest osiągana przy użyciu tras niestandardowych z typem następnego przeskoku bramy sieci wirtualnej. Aby uzyskać więcej informacji, zobacz Wyłączanie propagacji trasy bramy sieci wirtualnej.
Uwaga
Propagacja trasy nie powinna być wyłączona w systemie GatewaySubnet
. Brama nie będzie działać, jeśli to ustawienie jest wyłączone.
Jak platforma Azure wybiera trasę
Gdy ruch wychodzący jest wysyłany z podsieci, platforma Azure wybiera trasę na podstawie docelowego adresu IP przy użyciu najdłuższego algorytmu dopasowania prefiksu. Na przykład tabela tras zawiera dwie trasy. Jedna trasa określa prefiks adresu 10.0.0.0/24, a druga trasa określa prefiks adresu 10.0.0.0/16.
Platforma Azure kieruje ruch przeznaczony dla wersji 10.0.0.5 do typu następnego przeskoku określonego w trasie z prefiksem adresu 10.0.0.0/24. Ten proces występuje, ponieważ 10.0.0.0/24 jest dłuższym prefiksem niż 10.0.0.0/16, mimo że 10.0.0.5 mieści się w obu prefiksach adresów.
Platforma Azure kieruje ruch przeznaczony dla wersji 10.0.1.5 do typu następnego przeskoku określonego w trasie z prefiksem adresu 10.0.0.0/16. Ten proces występuje, ponieważ prefiks adresu 10.0.1.5 nie jest uwzględniony w prefiksie adresu 10.0.0.0/24, co sprawia, że trasa z prefiksem adresu 10.0.0.0/16 jest najdłużej pasującym prefiksem.
Jeśli wiele tras zawiera ten sam prefiks adresu, platforma Azure wybiera typ trasy na podstawie następującego priorytetu:
Trasa zdefiniowana przez użytkownika
Trasa protokołu BGP
Trasa systemowa
Uwaga
Trasy systemowe dla ruchu związanego z siecią wirtualną, komunikacją równorzędną sieci wirtualnych lub punktami końcowymi usługi sieci wirtualnej są preferowanymi trasami. Są one preferowane, nawet jeśli trasy protokołu BGP są bardziej szczegółowe. Trasy z punktem końcowym usługi sieci wirtualnej jako typ następnego przeskoku nie mogą być zastępowane, nawet jeśli używasz tabeli tras.
Na przykład tabela tras zawiera następujące trasy:
Źródło | Prefiksy adresów | Typ następnego przeskoku |
---|---|---|
Domyślne | 0.0.0.0/0 | Internet |
User | 0.0.0.0/0 | Brama sieci wirtualnej |
Gdy ruch jest przeznaczony dla adresu IP poza prefiksami adresów innych tras w tabeli tras, platforma Azure wybiera trasę ze źródłem użytkownika . Platforma Azure wybiera tę opcję, ponieważ trasy zdefiniowane przez użytkownika mają wyższy priorytet niż trasy domyślne systemu.
Aby uzyskać kompleksową tabelę routingu z wyjaśnieniami tras w tabeli, zobacz Przykład routingu.
prefiks adresu 0.0.0.0/0
Trasa z prefiksem adresu 0.0.0.0/0 zawiera instrukcje dotyczące platformy Azure. Platforma Azure używa tych instrukcji do kierowania ruchu przeznaczonego dla adresu IP, który nie mieści się w prefiksie adresu żadnej innej trasy w tabeli tras podsieci. Po utworzeniu podsieci platforma Azure tworzy domyślną trasę do prefiksu adresu 0.0.0.0/0 z typem następnego przeskoku Internet. Jeśli nie zastąpisz tej trasy, platforma Azure kieruje cały ruch kierowany do adresów IP, które nie są uwzględnione w prefiksie adresu żadnej innej trasy do Internetu.
Wyjątkiem jest to, że ruch do publicznych adresów IP usług platformy Azure pozostaje w sieci szkieletowej platformy Azure i nie jest kierowany do Internetu. Po zastąpieniu tej trasy trasą niestandardową ruch przeznaczony dla adresów, który nie znajduje się w prefiksach adresów żadnej innej trasy w tabeli tras, jest kierowany. Miejsce docelowe zależy od tego, czy określono wirtualne urządzenie sieciowe, czy bramę sieci wirtualnej w trasie niestandardowej.
Po zastąpieniu prefiksu adresu 0.0.0.0/0 ruch wychodzący z podsieci przepływa przez bramę sieci wirtualnej lub urządzenie wirtualne. W przypadku routingu domyślnego platformy Azure występują również następujące zmiany:
Platforma Azure wysyła cały ruch do typu następnego przeskoku określonego w trasie, uwzględniając ruch przeznaczony dla publicznych adresów IP usług platformy Azure.
Gdy typ następnego przeskoku trasy z prefiksem adresu 0.0.0.0/0 jest Internet, ruch z podsieci przeznaczonej do publicznych adresów IP usług platformy Azure nigdy nie opuszcza sieci szkieletowej platformy Azure, niezależnie od regionu świadczenia usługi platformy Azure, w którym istnieje sieć wirtualna lub zasób usługi platformy Azure.
Podczas tworzenia trasy zdefiniowanej przez użytkownika lub trasy BGP z typem następnego przeskoku bramy sieci wirtualnej lub urządzenia wirtualnego cały ruch jest wysyłany do typu następnego przeskoku określonego w trasie. Obejmuje to ruch wysyłany do publicznych adresów IP usług platformy Azure, dla których nie włączono punktów końcowych usługi.
Po włączeniu punktu końcowego usługi dla usługi platforma Azure tworzy trasę z prefiksami adresów dla usługi. Ruch do usługi nie kieruje do typu następnego przeskoku w trasie z prefiksem adresu 0.0.0.0/0. Prefiksy adresów dla usługi są dłuższe niż 0.0.0.0/0.
Nie można już bezpośrednio uzyskiwać dostępu do zasobów w podsieci z Internetu. Dostęp do zasobów w podsieci można uzyskać pośrednio z Internetu. Urządzenie określone przez typ następnego przeskoku dla trasy z prefiksem adresu 0.0.0.0/0 musi przetwarzać ruch przychodzący. Po przejściu przez urządzenie ruch dociera do zasobu w sieci wirtualnej. Jeśli trasa zawiera następujące wartości dla typu następnego przeskoku:
Urządzenie wirtualne: urządzenie musi:
- Być dostępny z Internetu.
- Przypisz do niego publiczny adres IP.
- Nie ma skojarzonej z nią reguły sieciowej grupy zabezpieczeń, która uniemożliwia komunikację z urządzeniem.
- Nie odmawiaj komunikacji.
- Możliwość tłumaczenia i przesyłania dalej adresu sieciowego lub przekazywania ruchu do zasobu docelowego w podsieci i zwracania ruchu z powrotem do Internetu.
Brama sieci wirtualnej: jeśli brama jest bramą sieci wirtualnej usługi ExpressRoute, lokalne urządzenie połączone z Internetem może tłumaczyć i przesyłać dalej ruch do zasobu docelowego w podsieci za pośrednictwem prywatnej komunikacji równorzędnej usługi ExpressRoute.
Jeśli sieć wirtualna jest połączona z bramą sieci VPN platformy Azure, nie skojarz tabeli tras z podsiecią bramy, która zawiera trasę z miejscem docelowym 0.0.0.0/0. Zaniedbanie tego może spowodować nieprawidłowe działanie bramy. Aby uzyskać więcej informacji, zobacz Dlaczego niektóre porty są otwarte w bramie sieci VPN?.
Aby uzyskać szczegółowe informacje o implementacji podczas korzystania z bram sieci wirtualnej między Internetem a platformą Azure, zobacz STREFA DMZ między platformą Azure i lokalnym centrum danych.
Przykład routingu
Aby zilustrować pojęcia przedstawione w tym artykule, opisano następujące sekcje:
- Scenariusz z wymaganiami.
- Trasy niestandardowe, które są niezbędne do spełnienia wymagań.
- Tabela tras, która istnieje dla jednej podsieci, która zawiera trasy domyślne i niestandardowe, które są niezbędne do spełnienia wymagań.
Uwaga
Ten przykład nie jest przeznaczony do implementacji zalecanych ani najlepszych rozwiązań. Jest on udostępniany tylko w celu zilustrowania pojęć w tym artykule.
Wymagania
Implementacja dwóch sieci wirtualnych w tym samym regionie platformy Azure i umożliwienie zasobom komunikacji między sieciami wirtualnymi.
Włącz sieć lokalną, aby bezpiecznie komunikować się z obiem sieciami wirtualnymi za pośrednictwem tunelu VPN przez Internet. Alternatywnie możesz użyć połączenia usługi ExpressRoute, ale w tym przykładzie jest używane połączenie sieci VPN.
Dla jednej podsieci w jednej sieci wirtualnej:
- Kierowanie całego ruchu wychodzącego z podsieci za pośrednictwem wirtualnego urządzenia sieciowego na potrzeby inspekcji i rejestrowania. Wyklucz ruch do usługi Azure Storage i w podsieci z tego routingu.
- Nie sprawdzaj ruchu między prywatnymi adresami IP w podsieci. Zezwalaj na przepływ ruchu bezpośrednio między wszystkimi zasobami.
- Porzucaj wszelki ruch wychodzący przeznaczony dla innej sieci wirtualnej.
- Włącz ruch wychodzący do usługi Azure Storage, aby przepływać bezpośrednio do magazynu bez wymuszania go za pośrednictwem wirtualnego urządzenia sieciowego.
Zezwalaj na cały ruch między wszystkimi innymi podsieciami i sieciami wirtualnymi.
Implementacja
Na poniższym diagramie przedstawiono implementację za pomocą modelu wdrażania usługi Resource Manager, który spełnia poprzednie wymagania.
Strzałki oznaczają przepływu ruchu.
Tabele tras
Poniżej przedstawiono tabele tras dla poprzedniego przykładu routingu.
Subnet1
Tabela tras dla podsieci Subnet1 na powyższym diagramie zawiera następujące trasy:
ID | Źródło | Stan | Prefiksy adresów | Typ następnego przeskoku | Adres IP następnego przeskoku | Nazwa trasy zdefiniowanej przez użytkownika |
---|---|---|---|---|---|---|
1 | Wartość domyślna | Nieprawidłowy | 10.0.0.0/16 | Sieć wirtualna | ||
2 | User | Aktywne | 10.0.0.0/16 | Urządzenie wirtualne | 10.0.100.4 | W ramach sieci VNet1 |
3 | User | Aktywne | 10.0.0.0/24 | Sieć wirtualna | W ramach podsieci Subnet1 | |
100 | Wartość domyślna | Nieprawidłowy | 10.1.0.0/16 | Komunikacja równorzędna sieci wirtualnej | ||
5 | Wartość domyślna | Nieprawidłowy | 10.2.0.0/16 | Komunikacja równorzędna sieci wirtualnej | ||
6 | User | Aktywne | 10.1.0.0/16 | Brak | ToVNet2-1-porzuć | |
7 | User | Aktywne | 10.2.0.0/16 | Brak | ToVNet2-2-porzuć | |
8 | Wartość domyślna | Nieprawidłowy | 10.10.0.0/16 | Brama sieci wirtualnej | [X.X.X.X] | |
9 | User | Aktywne | 10.10.0.0/16 | Urządzenie wirtualne | 10.0.100.4 | Do lokalnego |
10 | Domyślny | Aktywne | [X.X.X.X] | VirtualNetworkServiceEndpoint |
||
11 | Wartość domyślna | Nieprawidłowy | 0.0.0.0/0 | Internet | ||
12 | User | Aktywne | 0.0.0.0/0 | Urządzenie wirtualne | 10.0.100.4 | Domyślne NVA |
Oto wyjaśnienie każdego identyfikatora trasy:
ID1: Platforma Azure automatycznie dodała tę trasę dla wszystkich podsieci w obszarze Virtual-network-1 , ponieważ 10.0.0.0/16 jest jedynym zakresem adresów zdefiniowanym w przestrzeni adresowej sieci wirtualnej. Jeśli nie utworzysz trasy zdefiniowanej przez użytkownika w trasie ID2, ruch wysyłany do dowolnego adresu z zakresu od 10.0.0.1 do 10.0.255.254 jest kierowany w sieci wirtualnej. Ten proces występuje, ponieważ prefiks jest dłuższy niż 0.0.0.0/0 i nie mieści się w prefiksach adresów innych tras.
Platforma Azure automatycznie zmieniła stan z Aktywny na Nieprawidłowy, gdy dodano identyfikator ID2 , trasę zdefiniowaną przez użytkownika. Ma ten sam prefiks co trasa domyślna, a trasy zdefiniowane przez użytkownika zastępują trasy domyślne. Stan tej trasy jest nadal aktywny dla podsieci Subnet2 , ponieważ tabela tras zdefiniowana przez użytkownika, ID2, nie jest skojarzona z podsiecią Subnet2.
ID2: Platforma Azure dodała tę trasę, gdy trasa zdefiniowana przez użytkownika dla prefiksu adresu 10.0.0.0/16 została skojarzona z podsiecią Subnet1 w sieci wirtualnej Virtual-network-1 . Trasa zdefiniowana przez użytkownika określa wartość 10.0.100.4 jako adres IP urządzenia wirtualnego, ponieważ adres jest prywatnym adresem IP przypisanym do maszyny wirtualnej urządzenia wirtualnego. Tabela tras, w której istnieje ta trasa, nie jest skojarzona z podsiecią Subnet2, więc trasa nie jest wyświetlana w tabeli tras dla podsieci Subnet2.
Ta trasa zastępuje domyślną trasę dla prefiksu 10.0.0.0/16 (ID1), który automatycznie skierował ruch zaadresowany do 10.0.0.1 i 10.0.255.254 w ramach sieci wirtualnej za pośrednictwem typu następnego przeskoku sieci wirtualnej. Ta trasa istnieje, aby spełnić wymaganie 3, czyli wymusić cały ruch wychodzący przez urządzenie wirtualne.
ID3: Platforma Azure dodała tę trasę, gdy trasa zdefiniowana przez użytkownika dla prefiksu adresu 10.0.0.0/24 została skojarzona z podsiecią Subnet1 . Ruch przeznaczony dla adresów z zakresu od 10.0.0.1 do 10.0.0.254 pozostaje w podsieci. Ruch nie jest kierowany do urządzenia wirtualnego określonego w poprzedniej regule (ID2), ponieważ ma dłuższy prefiks niż trasa ID2.
Ta trasa nie była skojarzona z podsiecią Subnet2, więc trasa nie jest wyświetlana w tabeli tras dla podsieci Subnet2. Ta trasa skutecznie zastępuje trasę ID2 dla ruchu w ramach podsieci Subnet1. Ta trasa istnieje, aby spełnić wymaganie 3.
ID4: Platforma Azure automatycznie dodała trasy w identyfikatorach 4 i 5 dla wszystkich podsieci w ramach sieci Wirtualnej-network-1 , gdy sieć wirtualna była równorzędna z siecią wirtualną Virtual-network-2. Sieć wirtualna-2 ma dwa zakresy adresów w przestrzeni adresowej, 10.1.0.0/16 i 10.2.0.0/16, więc platforma Azure dodała trasę dla każdego zakresu. Jeśli nie utworzysz tras ZDEFINIOWANYch w identyfikatorach tras 6 i 7, ruch wysyłany do dowolnego adresu między 10.1.0.1-10.1.1.255.254 i 10.2.0.1-10.2.255.254 jest kierowany do równorzędnej sieci wirtualnej. Ten proces występuje, ponieważ prefiks jest dłuższy niż 0.0.0.0/0 i nie mieści się w prefiksach adresów innych tras.
Po dodaniu tras w identyfikatorach 6 i 7 platforma Azure automatycznie zmieniła stan z Aktywny na Nieprawidłowy. Ten proces występuje, ponieważ mają te same prefiksy co trasy w identyfikatorach 4 i 5, a trasy zdefiniowane przez użytkownika zastępują trasy domyślne. Stan tras w identyfikatorach 4 i 5 jest nadal aktywny dla podsieci Subnet2 , ponieważ tabela tras, w której trasy zdefiniowane przez użytkownika w identyfikatorach 6 i 7 nie są skojarzone z podsiecią Subnet2. Wirtualne sieci równorzędne zostały utworzone w celu spełnienia wymagania 1.
ID5: takie samo wyjaśnienie jak ID4.
ID6: Platforma Azure dodała tę trasę i trasę w identyfikatorze ID7, gdy trasy zdefiniowane przez użytkownika dla podsieci Subnet1 zostały skojarzone z podsiecią Subnet1 . Platforma Azure odrzuca ruch przeznaczony dla adresów z zakresu od 10.1.0.1 do 10.1.255.254 i 10.2.0.1-10.2.255.254, a nie kierowany do równorzędnej sieci wirtualnej, ponieważ trasy zdefiniowane przez użytkownika zastępują trasy domyślne. Trasy nie są skojarzone z podsiecią Subnet2, więc trasy nie są wyświetlane w tabeli tras dla podsieci Subnet2. Trasy zastępują trasy ID4 i ID5 dla ruchu opuszczającego podsieć Subnet1. Trasy ID6 i ID7 istnieją w celu spełnienia wymagania 3 mówiącego o porzuceniu ruchu kierowanego do innych sieci wirtualnych.
ID7: takie samo wyjaśnienie jak ID6.
ID8: Platforma Azure automatycznie dodała tę trasę dla wszystkich podsieci w ramach sieci wirtualnej Virtual-network-1 , gdy brama sieci wirtualnej typu VPN została utworzona w sieci wirtualnej. Platforma Azure dodała publiczny adres IP bramy sieci wirtualnej do tabeli tras. Ruch wysyłany do dowolnego adresu z zakresu od 10.10.0.1 do 10.10.255.254 jest kierowany do bramy sieci wirtualnej. Prefiks jest dłuższy niż 0.0.0.0/0 i nie mieści się w prefiksach adresów jakichkolwiek innych tras. Brama sieci wirtualnej została utworzona w celu spełnienia wymagania 2.
ID9: Platforma Azure dodała tę trasę, gdy do tabeli tras tras skojarzonych z podsiecią Subnet1 dodano prefiks adresu UDR dla adresu 10.10.0.0/16. Ta trasa zastępuje ID8. Trasa wysyła cały ruch przeznaczony dla sieci lokalnej do wirtualnego urządzenia sieciowego do inspekcji, a nie routingu ruchu bezpośrednio lokalnie. Ta trasa została utworzona w celu spełnienia wymagania 3.
ID10: Platforma Azure automatycznie dodała tę trasę do podsieci, gdy punkt końcowy usługi do usługi platformy Azure został włączony dla podsieci. Platforma Azure kieruje ruch z podsieci na publiczny adres IP usługi za pośrednictwem sieci infrastruktury platformy Azure. Prefiks jest dłuższy niż 0.0.0.0/0 i nie mieści się w prefiksach adresów jakichkolwiek innych tras. Utworzono punkt końcowy usługi, aby spełnić wymagania 3, aby umożliwić ruch kierowany do usługi Azure Storage bezpośrednio do usługi Azure Storage.
ID11: Platforma Azure automatycznie dodała tę trasę do tabeli tras wszystkich podsieci w obszarze Virtual-network-1 i Virtual-network-2. Prefiks adresu 0.0.0.0/0 jest najkrótszym prefiksem. Wszelki ruch wysyłany na adresy w ramach dłuższego prefiksu adresu jest kierowany na podstawie innych tras.
Domyślnie platforma Azure kieruje cały ruch przeznaczony dla adresów innych niż adresy określone w jednej z innych tras do Internetu. Platforma Azure automatycznie zmieniła stan z Active na Invalid dla podsieci Subnet1 , gdy trasa zdefiniowana przez użytkownika dla prefiksu adresu 0.0.0.0/0 (ID12) została skojarzona z podsiecią. Stan tej trasy jest nadal aktywny dla wszystkich innych podsieci w obu sieciach wirtualnych, ponieważ trasa nie jest skojarzona z żadnymi innymi podsieciami w innych sieciach wirtualnych.
ID12: Platforma Azure dodała tę trasę, gdy trasa zdefiniowana przez użytkownika dla prefiksu adresu 0.0.0.0/0 została skojarzona z podsiecią Subnet1 . Trasa zdefiniowana przez użytkownika określa wartość 10.0.100.4 jako adres IP urządzenia wirtualnego. Ta trasa nie jest skojarzona z podsiecią Subnet2, więc trasa nie jest wyświetlana w tabeli tras dla podsieci Subnet2. Cały ruch dla dowolnego adresu, który nie jest objęty prefiksami adresów wszelkich innych tras, jest wysyłany do urządzenia wirtualnego.
Dodanie tej trasy zmieniło stan trasy domyślnej dla prefiksu adresu 0.0.0.0/0 (ID11) z Aktywny na Nieprawidłowy dla podsieci Subnet1 , ponieważ trasa zdefiniowana przez użytkownika zastępuje trasę domyślną. Ta trasa istnieje, aby spełnić wymaganie 3.
Subnet2
Tabela tras dla podsieci Subnet2 na powyższym diagramie zawiera następujące trasy:
Źródło | Stan | Prefiksy adresów | Typ następnego przeskoku | Adres IP następnego przeskoku |
---|---|---|---|---|
Wartość domyślna | Aktywne | 10.0.0.0/16 | Sieć wirtualna | |
Wartość domyślna | Aktywne | 10.1.0.0/16 | Komunikacja równorzędna sieci wirtualnej | |
Wartość domyślna | Aktywne | 10.2.0.0/16 | Komunikacja równorzędna sieci wirtualnej | |
Wartość domyślna | Aktywne | 10.10.0.0/16 | Brama sieci wirtualnej | [X.X.X.X] |
Wartość domyślna | Aktywne | 0.0.0.0/0 | Internet | |
Wartość domyślna | Aktywne | 10.0.0.0/8 | Brak | |
Wartość domyślna | Aktywne | 100.64.0.0/10 | Brak | |
Wartość domyślna | Aktywne | 192.168.0.0/16 | Brak |
Tabela tras dla podsieci Subnet2 zawiera wszystkie trasy domyślne utworzone przez platformę Azure oraz opcjonalne trasy opcjonalne komunikacji równorzędnej sieci wirtualnej i bramy sieci wirtualnej. Platforma Azure dodała opcjonalne trasy do wszystkich podsieci w sieci wirtualnej, gdy brama i komunikacja równorzędna zostały dodane do sieci wirtualnej.
Platforma Azure usunęła trasy dla prefiksów adresów 10.0.0.0/8, 192.168.0.0/16 i 100.64.0.0/10 z tabeli tras Subnet1 , gdy trasa zdefiniowana przez użytkownika dla prefiksu adresu 0.0.0.0/0 została dodana do podsieci Subnet1.
Powiązana zawartość
- Utwórz tabelę trasy zdefiniowanej przez użytkownika z trasami i wirtualnym urządzeniem sieciowym.
- Konfigurowanie protokołu BGP dla usługi Azure VPN Gateway.
- Używanie protokołu BGP z usługą ExpressRoute.
- View all routes for a subnet (Wyświetlanie wszystkich tras dla podsieci). Tabela trasy zdefiniowanej przez użytkownika zawiera tylko trasy zdefiniowane przez użytkownika, a nie trasy domyślne i trasy protokołu BGP dla podsieci. Wyświetlanie wszystkich tras pokazuje domyślne, BGP i trasy zdefiniowane przez użytkownika dla podsieci, w której znajduje się interfejs sieciowy.
- Określanie typu następnego przeskoku między maszyną wirtualną i docelowym adresem IP. Możesz użyć funkcji następnego przeskoku usługi Azure Network Watcher, aby określić, czy ruch opuszcza podsieć i jest kierowany do miejsca, w którym ma to być.