Compartilhar via


Configurar o encapsulamento forçado usando o Site Padrão para conexões site a site

As etapas deste artigo ajudam você a configurar o encapsulamento forçado para conexões IPsec site a site (S2S) especificando um Site Padrão. Para ver informações sobre os métodos de configuração para encapsulamento forçado, incluindo a configuração de encapsulamento forçado via BGP, confira Sobre o encapsulamento forçado para o Gateway de VPN.

Por padrão, o tráfego vinculado à Internet de suas VMs vai diretamente para a Internet. Se quiser forçar todo o tráfego vinculado à Internet por meio do Gateway de VPN para um site local para inspeção e auditoria, você pode fazer isso configurando o túnel forçado. Depois de configurar o túnel forçado, se desejar, você pode rotear o tráfego vinculado à Internet diretamente para a Internet em sub-redes especificadas utilizando rotas personalizadas definidas pelo usuário (UDRs).

Diagram shows split tunneling.

As etapas a seguir ajudam você a configurar um cenário de encapsulamento forçado, especificando um Site Padrão. Opcionalmente, utilizando o UDR personalizado, você pode então rotear o tráfego especificando que o tráfego vinculado à Internet da sub-rede do Front-end vai diretamente para a Internet, em vez de ir para o site local.

  • A VNet que você criou tem três sub-redes: Front-end, Mid-tier e Back-end com quatro conexões entre locais: DefaultSiteHQ e três ramificações.
  • Você especifica o Site Padrão para o gateway de VPN usando o PowerShell, o que força todo o tráfego da internet de volta para o local. O Site Padrão não pode ser configurado usando o portal do Azure.
  • A sub-rede Front-end recebe uma UDR para enviar o tráfego da Internet diretamente para a Internet, ignorando o Gateway de VPN. Outros tráfegos são roteados normalmente.
  • As Sub-redes Mid-tier e Back-end continuam a ter o tráfego da internet de túnel forçado a ser encapsulado de volta para o site local por meio do gateway de VPN porque um Site Padrão foi especificado.

Criar uma VNet e sub-redes

Primeiro, crie o ambiente de teste. Você pode utilizar o Azure Cloud Shell ou executar o PowerShell localmente. Para obter mais informações, confira Como instalar e configurar o Azure PowerShell.

Observação

Você pode ver avisos dizendo que "O tipo de objeto de saída deste cmdlet será modificado em uma versão futura". Esse comportamento é esperado e você pode ignorar esses avisos com segurança.

  1. Crie um grupo de recursos usando New-AzResourceGroup.

    New-AzResourceGroup -Name "TestRG1" -Location "EastUS"
    
  2. Crie a rede virtual utilizando New-AzVirtualNetwork.

    $vnet = New-AzVirtualNetwork `
    -ResourceGroupName "TestRG1" `
    -Location "EastUS" `
    -Name "VNet1" `
    -AddressPrefix 10.1.0.0/16
    
  3. Crie as sub-redes utilizando New-AzVirtualNetworkSubnetConfig. Crie as sub-redes Front-end, Mid-tier e Back-end e uma sub-rede de gateway (que deve ser denominada como GatewaySubnet).

    $subnetConfigFrontend = Add-AzVirtualNetworkSubnetConfig `
      -Name Frontend `
      -AddressPrefix 10.1.0.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigMid-tier = Add-AzVirtualNetworkSubnetConfig `
      -Name Mid-tier `
      -AddressPrefix 10.1.1.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigBackend = Add-AzVirtualNetworkSubnetConfig `
      -Name Backend `
      -AddressPrefix 10.1.2.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigGW = Add-AzVirtualNetworkSubnetConfig `
      -Name GatewaySubnet `
      -AddressPrefix 10.1.200.0/27 `
      -VirtualNetwork $vnet
    
  4. Escreva as configurações de sub-rede na rede virtual com Set-AzVirtualNetwork, que cria as sub-redes na rede virtual:

    $vnet | Set-AzVirtualNetwork
    

Criar gateways de rede local

Nesta seção, crie os gateways de rede local para os sites utilizando New-AzLocalNetworkGateway. Há uma pequena pausa entre cada comando à medida que cada gateway de rede local é criado. Neste exemplo, os valores -GatewayIpAddress são espaços reservados. Para fazer uma conexão, você precisa substituir posteriormente esses valores pelos endereços IP públicos dos respectivos dispositivos de VPN no local.

$lng1 = New-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "TestRG1" -Location "EastUS" -GatewayIpAddress "111.111.111.111" -AddressPrefix "192.168.1.0/24"
$lng2 = New-AzLocalNetworkGateway -Name "Branch1" -ResourceGroupName "TestRG1" -Location "EastUS" -GatewayIpAddress "111.111.111.112" -AddressPrefix "192.168.2.0/24"
$lng3 = New-AzLocalNetworkGateway -Name "Branch2" -ResourceGroupName "TestRG1" -Location "EastUS" -GatewayIpAddress "111.111.111.113" -AddressPrefix "192.168.3.0/24"
$lng4 = New-AzLocalNetworkGateway -Name "Branch3" -ResourceGroupName "TestRG1" -Location "EastUS" -GatewayIpAddress "111.111.111.114" -AddressPrefix "192.168.4.0/24"

Criar um gateway de VPN

Nesta seção, você solicita um endereço IP público e cria um Gateway de VPN que está associado ao objeto de endereço IP público. O endereço IP público é utilizado quando você conecta um dispositivo de VPN local ou externo ao gateway de VPN para conexões entre locais.

  1. Solicite um endereço IP público para seu Gateway de VPN utilizando New-AzPublicIpAddress.

    $gwpip = New-AzPublicIpAddress -Name "GatewayIP" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard
    
  2. Crie a configuração do endereço IP do gateway utilizando New-AzVirtualNetworkGatewayIpConfig. Essa configuração é referenciada quando você cria o Gateway de VPN.

    $vnet = Get-AzVirtualNetwork -Name "VNet1" -ResourceGroupName "TestRG1"
    $gwsubnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
    $gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $gwsubnet.Id -PublicIpAddressId $gwpip.Id
    
  3. Crie o gateway de rede virtual com o tipo de gateway de "VPN" utilizando New-AzVirtualNetworkGateway. A criação de um gateway pode levar 45 minutos ou mais, dependendo da SKU do gateway que você selecionar.

    Neste exemplo, utilizamos a SKU VpnGw2, Geração 2. Se você vir erros ValidateSet relacionados ao valor do GatewaySKU, verifique se você instalou a versão mais recente dos cmdlets do PowerShell. A versão mais recente contém os novos valores validados para as SKUs dos Gateways mais recentes.

    New-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1" -Location "EastUS" -IpConfigurations $gwipconfig -GatewayType "Vpn" -VpnType "RouteBased" -GatewaySku VpnGw2 -VpnGatewayGeneration "Generation2"
    

Configurar o encapsulamento forçado – Site Padrão

Configurar o encapsulamento forçado atribuindo um Site Padrão ao gateway de rede virtual. Se você não especificar um Site Padrão, o tráfego da Internet não será forçado a passar pelo gateway de VPN e, em vez disso, pasarrá diretamente para a internet por todas as sub-redes (por padrão).

Para atribuir um Site Padrão para o gateway, você utilizará o parâmetro -GatewayDefaultSite. Certifique-se de tê-lo atribuído corretamente.

  1. Primeiro, declare as variáveis que especificam as informações do gateway de rede virtual e o gateway de rede local para o Site Padrão, nesse caso, DefaultSiteHQ.

    $LocalGateway = Get-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "TestRG1"
    $VirtualGateway = Get-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    
  2. Em seguida, defina o Site Padrão do gateway de rede virtual usando Set-AzVirtualNetworkGatewayDefaultSite.

    Set-AzVirtualNetworkGatewayDefaultSite -GatewayDefaultSite $LocalGateway -VirtualNetworkGateway $VirtualGateway
    

Nesse ponto, todo o tráfego da Internet está agora configurado para ser direcionado para túneis forçados para o DefaultSiteHQ. O dispositivo VPN local deve ser configurado usando 0.0.0.0/0 como seletores de tráfego.

  • Se quiser apenas configurar o túnel forçado e não rotear o tráfego da Internet diretamente para a Internet em sub-redes específicas, você pode pular para a seção Estabelecer Conexões deste artigo para criar suas conexões.
  • Se você quiser que sub-redes específicas enviem o tráfego vinculado à Internet diretamente para a Internet, continue com as próximas seções para configurar as UDRs personalizadas e atribuir rotas.

Roteie o tráfego associado à Internet para sub-redes específicas

Como opção, se você quiser que o tráfego associado à Internet seja enviado diretamente à internet em relação a sub-redes específicas (em vez de à sua rede local), use as etapas a seguir. Essas etapas se aplicam ao encapsulamento forçado que foi configurado especificando um Site Padrão ou que foi configurado via BGP.

Criar tabelas de rotas e rotas

Para especificar que o tráfego com destino à Internet deve ir diretamente para a Internet, crie a tabela de rotas e a rota necessárias. Mais tarde, você atribuirá a tabela de rotas à sub-rede Front-end.

  1. Você criará as tabelas de rotas utilizando New-AzRouteTable.

    $routeTable1 = New-AzRouteTable `
    -Name 'RouteTable1' `
    -ResourceGroupName "TestRG1" `
    -location "EastUS"
    
  2. Crie rotas utilizando os seguintes cmdlets: GetAzRouteTable, Add-AzRouteConfig e Set-AzRouteConfig. Crie a rota para o tipo de próximo salto "Internet" em RouteTable1. Essa rota será atribuída posteriormente à sub-rede Front-end.

    Get-AzRouteTable `
       -ResourceGroupName "TestRG1" `
       -Name "RouteTable1" `
       | Add-AzRouteConfig `
       -Name "ToInternet" `
       -AddressPrefix 0.0.0.0/0 `
       -NextHopType "Internet" `
       | Set-AzRouteTable
    

Atribuir rotas

Nesta seção, você atribuirá a tabela de rotas e as rotas à sub-rede Front-end utilizando os seguintes comandos do PowerShell: GetAzRouteTable, Set-AzRouteConfig e Set-AzVirtualNetwork.

  1. Atribua a sub-rede Front-end à RouteTable1 com a rota "ToInternet" especificando 0.0.0.0/0 com o próximo salto para a Internet.

    $vnet = Get-AzVirtualNetwork -Name "VNet1" -ResourceGroupName "TestRG1"
    $routeTable1 = Get-AzRouteTable `
       -ResourceGroupName "TestRG1" `
       -Name "RouteTable1" 
    Set-AzVirtualNetworkSubnetConfig `
       -VirtualNetwork $vnet `
       -Name 'Frontend' `
       -AddressPrefix 10.1.0.0/24 `
       -RouteTable $routeTable1 | `
    Set-AzVirtualNetwork
    

Estabeleça conexões de VPN S2S

Utilize New-AzVirtualNetworkGatewayConnection para estabelecer as conexões site a site.

  1. Declare as variáveis.

    $gateway = Get-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1"
    $lng1 = Get-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "TestRG1" 
    $lng2 = Get-AzLocalNetworkGateway -Name "Branch1" -ResourceGroupName "TestRG1" 
    $lng3 = Get-AzLocalNetworkGateway -Name "Branch2" -ResourceGroupName "TestRG1" 
    $lng4 = Get-AzLocalNetworkGateway -Name "Branch3" -ResourceGroupName "TestRG1"
    
  2. Cria as conexões.

    New-AzVirtualNetworkGatewayConnection -Name "Connection1" -ResourceGroupName "TestRG1" -Location "EastUS" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng1 -ConnectionType IPsec -SharedKey "preSharedKey"
    New-AzVirtualNetworkGatewayConnection -Name "Connection2" -ResourceGroupName "TestRG1" -Location "EastUS" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng2 -ConnectionType IPsec -SharedKey "preSharedKey"
    New-AzVirtualNetworkGatewayConnection -Name "Connection3" -ResourceGroupName "TestRG1" -Location "EastUS" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng3 -ConnectionType IPsec -SharedKey "preSharedKey"
    New-AzVirtualNetworkGatewayConnection -Name "Connection4" -ResourceGroupName "TestRG1" -Location "EastUS" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng4 -ConnectionType IPsec -SharedKey "preSharedKey"
    
  3. Para exibir uma conexão, utilize o seguinte exemplo. Modifique os valores necessários para especificar a conexão que você deseja exibir.

    Get-AzVirtualNetworkGatewayConnection -Name "Connection1" -ResourceGroupName "TestRG1"
    

Próximas etapas

Para obter mais informações sobre o Gateway de VPN, consulte as Perguntas frequentes sobre o Gateway de VPN.