Dodawanie połączenia lokacja-lokacja do sieci wirtualnej z istniejącym połączeniem bramy sieci VPN (klasycznym)

W tym artykule przedstawiono sposób użycia programu PowerShell do dodawania połączeń typu lokacja-lokacja (S2S) do bramy sieci VPN, która ma istniejące połączenie przy użyciu klasycznego (starszego) modelu wdrażania. Ten typ połączenia jest czasami określany jako konfiguracja "wielu lokacji". Te kroki nie dotyczą współistniejących konfiguracji połączeń usługi ExpressRoute/lokacja-lokacja.

Kroki opisane w tym artykule dotyczą klasycznego (starszego) modelu wdrażania i nie dotyczą bieżącego modelu wdrażania usługi Resource Manager. Jeśli nie chcesz pracować w klasycznym modelu wdrażania, zalecamy użycie wersji usługi Resource Manager tego artykułu.

Uwaga

Ten artykuł został napisany dla klasycznego (starszego) modelu wdrażania. Zalecamy zamiast tego użycie najnowszego modelu wdrażania platformy Azure. Model wdrażania przy użyciu usługi Resource Manager jest najnowszym modelem wdrażania i oferuje więcej opcji i zgodności funkcji niż klasyczny model wdrażania. Aby zrozumieć różnicę między tymi dwoma modelami wdrażania, zobacz Omówienie modeli wdrażania i stanu zasobów.

Jeśli chcesz użyć innej wersji tego artykułu, użyj spisu treści w okienku po lewej stronie.

Informacje o nawiązywaniu połączenia

Można połączyć wiele lokacji lokalnych z jedną siecią wirtualną. Jest to szczególnie atrakcyjne w przypadku tworzenia rozwiązań w chmurze hybrydowej. Tworzenie połączenia obejmującego wiele lokacji z bramą sieci wirtualnej platformy Azure jest podobne do tworzenia innych połączeń typu lokacja-lokacja. W rzeczywistości można użyć istniejącej bramy sieci VPN platformy Azure, o ile brama jest dynamiczna (oparta na trasach).

Jeśli masz już bramę statyczną połączoną z siecią wirtualną, możesz zmienić typ bramy na dynamiczny bez konieczności ponownego kompilowania sieci wirtualnej w celu uwzględnienia wielu lokacji. Przed zmianą typu routingu upewnij się, że lokalna brama sieci VPN obsługuje konfiguracje sieci VPN oparte na trasach.

Diagram showing classic multi-site connection architecture.

Kwestie do rozważenia

Nie będzie można używać portalu do wprowadzania zmian w tej sieci wirtualnej. Musisz wprowadzić zmiany w pliku konfiguracji sieci zamiast korzystać z portalu. Jeśli wprowadzisz zmiany w portalu, zastąpią one ustawienia odwołania do wielu lokacji dla tej sieci wirtualnej.

Podczas wykonywania procedury obejmującej wiele lokacji należy czuć się komfortowo, korzystając z pliku konfiguracji sieci. Jeśli jednak masz wiele osób pracujących nad konfiguracją sieci, musisz upewnić się, że wszyscy wiedzą o tym ograniczeniu. Nie oznacza to, że w ogóle nie można używać portalu. Można go używać dla wszystkich innych elementów, z wyjątkiem wprowadzania zmian konfiguracji w tej konkretnej sieci wirtualnej.

Zanim rozpoczniesz

Przed rozpoczęciem konfiguracji sprawdź, czy masz następujące elementy:

  • Zgodny sprzęt sieci VPN dla każdej lokalizacji lokalnej. Sprawdź informacje o urządzeniach sieci VPN dla sieci wirtualnej Połączenie ivity, aby sprawdzić, czy urządzenie, którego chcesz użyć, jest czymś, co jest znane jako zgodne.
  • Zewnętrzny publiczny adres IP IPv4 dla każdego urządzenia sieci VPN. Adres IP nie może znajdować się za translatorem adresów sieciowych. Jest to wymagane.
  • Ktoś, kto jest biegły w konfigurowaniu sprzętu sieci VPN. Musisz mieć silną wiedzę na temat sposobu konfigurowania urządzenia sieci VPN lub pracy z osobą, która to robi.
  • Zakresy adresów IP, których chcesz użyć dla sieci wirtualnej (jeśli jeszcze jej nie utworzono).
  • Zakresy adresów IP dla każdej lokacji sieci lokalnej, z którymi będziesz się łączyć. Należy upewnić się, że zakresy adresów IP dla każdej lokacji sieci lokalnej, z którymi chcesz się połączyć, nie nakładają się na siebie. W przeciwnym razie portal lub interfejs API REST odrzuca przekazywaną konfigurację.
    Jeśli na przykład masz dwie lokacje sieci lokalnej, które zawierają zakres adresów IP 10.2.3.0/24 i masz pakiet z adresem docelowym 10.2.3.3, platforma Azure nie będzie wiedziała, do której lokacji chcesz wysłać pakiet, ponieważ zakresy adresów nakładają się. Aby zapobiec problemom z routingiem, platforma Azure nie zezwala na przekazywanie pliku konfiguracji, który ma nakładające się zakresy.

Praca z programem Azure PowerShell

Podczas pracy z klasycznym modelem wdrażania nie można użyć usługi Azure Cloud Shell. Zamiast tego należy zainstalować najnowszą wersję poleceń cmdlet programu PowerShell zarządzania usługami platformy Azure lokalnie na komputerze. Te polecenia cmdlet różnią się od poleceń cmdlet Moduł AzureRM lub Az. Aby zainstalować polecenia cmdlet sm, zobacz Instalowanie poleceń cmdlet zarządzania usługami. Aby uzyskać więcej informacji na temat programu Azure PowerShell, zobacz dokumentację programu Azure PowerShell.

1. Tworzenie sieci VPN typu lokacja-lokacja

Jeśli masz już sieć VPN typu lokacja-lokacja z bramą routingu dynamicznego, świetnie! Możesz przejść do sekcji Eksportowanie ustawień konfiguracji sieci wirtualnej. W przeciwnym razie wykonaj następujące czynności:

Jeśli masz już sieć wirtualną typu lokacja-lokacja, ale ma ona statyczną (opartą na zasadach) bramę routingu:

  1. Zmień typ bramy na routing dynamiczny. Sieć VPN z wieloma lokacjami wymaga dynamicznej bramy routingu (nazywanej również routingiem opartym na trasach). Aby zmienić typ bramy, musisz najpierw usunąć istniejącą bramę, a następnie utworzyć nową.
  2. Skonfiguruj nową bramę i utwórz tunel VPN. Aby uzyskać instrukcje, zobacz Określanie jednostki SKU i typu sieci VPN. Upewnij się, że określono typ routingu jako "Dynamiczny".

Jeśli nie masz sieci wirtualnej lokacja-lokacja:

  1. Utwórz sieć wirtualną typu lokacja-lokacja, korzystając z następujących instrukcji: Tworzenie sieci wirtualnej przy użyciu Połączenie sieci VPN typu lokacja-lokacja.
  2. Skonfiguruj bramę routingu dynamicznego, korzystając z poniższych instrukcji: Konfigurowanie bramy sieci VPN. Pamiętaj, aby wybrać routing dynamiczny dla typu bramy.

2. Eksportowanie pliku konfiguracji sieci

Otwórz konsolę programu PowerShell z podwyższonym poziomem uprawnień. Aby przełączyć się do zarządzania usługami, użyj następującego polecenia:

azure config mode asm

Połącz się ze swoim kontem. Użyj poniższego przykładu w celu łatwiejszego nawiązania połączenia:

Add-AzureAccount

Wyeksportuj plik konfiguracji sieci platformy Azure, uruchamiając następujące polecenie. W razie potrzeby możesz zmienić lokalizację pliku, aby wyeksportować go do innej lokalizacji.

Get-AzureVNetConfig -ExportToFile C:\AzureNet\NetworkConfig.xml

3. Otwórz plik konfiguracji sieci

Otwórz plik konfiguracji sieci pobrany w ostatnim kroku. Użyj dowolnego edytora xml. Plik powinien wyglądać podobnie do następującego:

<NetworkConfiguration xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/ServiceHosting/2011/07/NetworkConfiguration">
  <VirtualNetworkConfiguration>
    <LocalNetworkSites>
      <LocalNetworkSite name="Site1">
        <AddressSpace>
          <AddressPrefix>10.0.0.0/16</AddressPrefix>
          <AddressPrefix>10.1.0.0/16</AddressPrefix>
        </AddressSpace>
        <VPNGatewayAddress>131.2.3.4</VPNGatewayAddress>
      </LocalNetworkSite>
      <LocalNetworkSite name="Site2">
        <AddressSpace>
          <AddressPrefix>10.2.0.0/16</AddressPrefix>
          <AddressPrefix>10.3.0.0/16</AddressPrefix>
        </AddressSpace>
        <VPNGatewayAddress>131.4.5.6</VPNGatewayAddress>
      </LocalNetworkSite>
    </LocalNetworkSites>
    <VirtualNetworkSites>
      <VirtualNetworkSite name="VNet1" AffinityGroup="USWest">
        <AddressSpace>
          <AddressPrefix>10.20.0.0/16</AddressPrefix>
          <AddressPrefix>10.21.0.0/16</AddressPrefix>
        </AddressSpace>
        <Subnets>
          <Subnet name="FE">
            <AddressPrefix>10.20.0.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="BE">
            <AddressPrefix>10.20.1.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="GatewaySubnet">
            <AddressPrefix>10.20.2.0/29</AddressPrefix>
          </Subnet>
        </Subnets>
        <Gateway>
          <ConnectionsToLocalNetwork>
            <LocalNetworkSiteRef name="Site1">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
          </ConnectionsToLocalNetwork>
        </Gateway>
      </VirtualNetworkSite>
    </VirtualNetworkSites>
  </VirtualNetworkConfiguration>
</NetworkConfiguration>

4. Dodawanie wielu odwołań do witryny

Po dodaniu lub usunięciu informacji referencyjnych dotyczących witryny wprowadzisz zmiany konfiguracji w Połączenie ionsToLocalNetwork/LocalNetworkSiteRef. Dodanie nowej dokumentacji lokacji lokalnej wyzwala platformę Azure w celu utworzenia nowego tunelu. W poniższym przykładzie konfiguracja sieci dotyczy połączenia z jedną lokacją. Zapisz plik po zakończeniu wprowadzania zmian.

  <Gateway>
    <ConnectionsToLocalNetwork>
      <LocalNetworkSiteRef name="Site1"><Connection type="IPsec" /></LocalNetworkSiteRef>
    </ConnectionsToLocalNetwork>
  </Gateway>

Aby dodać dodatkowe odwołania do lokacji (utwórz konfigurację z wieloma lokacjami), wystarczy dodać dodatkowe wiersze "LocalNetworkSiteRef", jak pokazano w poniższym przykładzie:

  <Gateway>
    <ConnectionsToLocalNetwork>
      <LocalNetworkSiteRef name="Site1"><Connection type="IPsec" /></LocalNetworkSiteRef>
      <LocalNetworkSiteRef name="Site2"><Connection type="IPsec" /></LocalNetworkSiteRef>
    </ConnectionsToLocalNetwork>
  </Gateway>

5. Importowanie pliku konfiguracji sieci

Zaimportuj plik konfiguracji sieci. Po zaimportowaniu tego pliku ze zmianami zostaną dodane nowe tunele. Tunele używają utworzonej wcześniej bramy dynamicznej. Do zaimportowania pliku można użyć programu PowerShell.

6. Pobieranie kluczy

Po dodaniu nowych tuneli użyj polecenia cmdlet programu PowerShell "Get-AzureVNetGatewayKey", aby uzyskać klucze wstępne protokołu IPsec/IKE dla każdego tunelu.

Przykład:

Get-AzureVNetGatewayKey –VNetName "VNet1" –LocalNetworkSiteName "Site1"
Get-AzureVNetGatewayKey –VNetName "VNet1" –LocalNetworkSiteName "Site2"

Jeśli wolisz, możesz również użyć interfejsu API REST Uzyskiwanie klucza współużytkowanego bramy sieci wirtualnej, aby uzyskać klucze wstępnie udostępnione.

7. Weryfikowanie połączeń

Sprawdź stan tunelu obejmującego wiele lokacji. Po pobraniu kluczy dla każdego tunelu należy zweryfikować połączenia. Użyj polecenia "Get-AzureVnet Połączenie ion", aby uzyskać listę tuneli sieci wirtualnej, jak pokazano w poniższym przykładzie. VNet1 to nazwa sieci wirtualnej.

Get-AzureVnetConnection -VNetName VNET1

Przykładowy zwrot:

    ConnectivityState         : Connected
    EgressBytesTransferred    : 661530
    IngressBytesTransferred   : 519207
    LastConnectionEstablished : 5/2/2014 2:51:40 PM
    LastEventID               : 23401
    LastEventMessage          : The connectivity state for the local network site 'Site1' changed from Not Connected to Connected.
    LastEventTimeStamp        : 5/2/2014 2:51:40 PM
    LocalNetworkSiteName      : Site1
    OperationDescription      : Get-AzureVNetConnection
    OperationId               : 7f68a8e6-51e9-9db4-88c2-16b8067fed7f
    OperationStatus           : Succeeded

    ConnectivityState         : Connected
    EgressBytesTransferred    : 789398
    IngressBytesTransferred   : 143908
    LastConnectionEstablished : 5/2/2014 3:20:40 PM
    LastEventID               : 23401
    LastEventMessage          : The connectivity state for the local network site 'Site2' changed from Not Connected to Connected.
    LastEventTimeStamp        : 5/2/2014 2:51:40 PM
    LocalNetworkSiteName      : Site2
    OperationDescription      : Get-AzureVNetConnection
    OperationId               : 7893b329-51e9-9db4-88c2-16b8067fed7f
    OperationStatus           : Succeeded

Następne kroki

Aby dowiedzieć się więcej o bramach sieci VPN, zobacz About VPN Gateways (Informacje o bramach sieci VPN).