Implementar roteamento de tráfego de rede virtual
O Azure cria automaticamente uma tabela de rotas para cada sub-rede dentro de uma rede virtual do Azure e adiciona as rotas predefinidas do sistema à tabela. Você pode substituir algumas das rotas do sistema do Azure por rotas personalizadas e adicionar mais rotas personalizadas às tabelas de rotas. O Azure encaminha o tráfego de saída de uma sub-rede com base nas rotas definidas na tabela de rotas dessa sub-rede.
Rotas de sistema
O Azure cria automaticamente as rotas do sistema e atribui-as a cada sub-rede numa rede virtual. Não é possível criar ou remover rotas do sistema, mas é possível substituir algumas rotas do sistema por rotas personalizadas. O Azure cria rotas de sistema padrão para cada sub-rede e adiciona outras rotas padrão opcionais a sub-redes específicas, ou a cada sub-rede, quando você usa recursos específicos do Azure.
Rotas predefinidas
Cada rota contém um prefixo de endereço e o tipo de salto seguinte. Quando o tráfego que sai de uma sub-rede é enviado para um endereço IP dentro do prefixo do endereço de uma rota, a rota que contém o prefixo é aquela que o Azure vai utilizar. Sempre que é criada uma rede virtual, o Azure cria automaticamente as rotas do sistema predefinidas seguintes para cada sub-rede na rede virtual:
Source
Prefixos de endereço
Tipo de salto seguinte
Predefinido
Exclusivos da rede virtual
Rede virtual
Predefinido
0.0.0.0/0
Internet
Predefinido
10.0.0.0/8
Nenhuma
Predefinido
192.168.0.0/16
Nenhuma
Predefinido
100.64.0.0/10
Nenhuma
Em termos de roteamento, um salto é um ponto de passagem na rota geral. Portanto, o próximo salto é o próximo ponto de passagem para o qual o tráfego é direcionado em sua jornada até seu destino final. Os tipos de salto seguintes listados na tabela anterior representam a forma como o Azure encaminha o tráfego destinado ao prefixo de endereço listado. Os próximos tipos de salto são definidos da seguinte forma:
Rede virtual: roteia o tráfego entre intervalos de endereços dentro do espaço de endereçamento de uma rede virtual. O Azure cria uma rota com um prefixo de endereço que corresponde a cada intervalo de endereços definido dentro do espaço de endereços de uma rede virtual. O Azure utiliza as rotas criadas para cada intervalo de endereços para encaminhar automaticamente o tráfego entre as sub-redes.
Internet: encaminha o tráfego especificado pelo prefixo de endereço para a Internet. A rota predefinida do sistema especifica o prefixo de endereço 0.0.0.0/0. O Azure encaminha o tráfego de qualquer endereço não especificado por um intervalo de endereços dentro de uma rede virtual para a Internet, a menos que o endereço de destino seja para um serviço do Azure. O Azure encaminha qualquer tráfego destinado ao seu serviço diretamente para o serviço através da rede de backbone, em vez de rotear o tráfego para a Internet. Pode substituir a rota do sistema predefinida do Azure para o prefixo de endereço 0.0.0.0/0 por uma rota personalizada.
Nenhum: o tráfego roteado para o tipo Nenhum próximo salto é descartado, em vez de roteado para fora da sub-rede. O Azure cria automaticamente rotas predefinidas para os seguintes prefixos de endereço:
- 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16: Reservado para uso privado no RFC 1918.
- 100.64.0.0/10: reservado em RFC 6598.
Rotas predefinidas opcionais
O Azure adiciona rotas de sistema padrão para todos os recursos do Azure habilitados. Consoante a capacidade, o Azure adiciona as rotas predefinidas opcionais a sub-redes específicas ou a todas as sub-redes dentro da rede virtual. As rotas do sistema e os tipos de próximo salto que o Azure pode adicionar são:
Source
Prefixos de endereço
Tipo de salto seguinte
Sub-rede dentro da rede virtual à qual a rota é adicionada
Predefinido
Exclusivos da rede virtual, por exemplo, 10.1.0.0/16
VNet peering
Todos
Gateway de rede virtual
Prefixos anunciados no local através do BGP ou configurados no gateway de rede local
Gateway de rede virtual
Todos
Predefinido
Várias
Ponto Final de Serviço de Rede Virtual
Somente a sub-rede para a qual um ponto de extremidade de serviço está habilitado
Emparelhamento de rede virtual (VNet): quando você cria um emparelhamento de rede virtual entre duas redes virtuais, uma rota é adicionada para cada intervalo de endereços dentro do espaço de endereço de cada rede virtual.
Gateway de rede virtual: quando você adiciona um gateway de rede virtual a uma rede virtual, o Azure adiciona uma ou mais rotas com o gateway de rede virtual como o próximo tipo de salto. A origem é listada como gateway de rede virtual porque o gateway adiciona as rotas à sub-rede.
- Há limites para o número de rotas que você pode propagar para um gateway de rede virtual do Azure, portanto, você deve resumir as rotas locais para os maiores intervalos de endereços possíveis. Para obter mais informações sobre o número de rotas, você pode propagar, consulte Limites de rede.
VirtualNetworkServiceEndpoint: o Azure adiciona os endereços IP públicos de determinados serviços à tabela de rotas quando você habilita um ponto de extremidade de serviço para o serviço. Os pontos finais de serviço são ativados para sub-redes individuais dentro de uma rede virtual, pelo que a rota só é adicionada à tabela de rotas de uma sub-rede para a qual o ponto final esteja ativado. Os endereços IP públicos dos serviços do Azure mudam periodicamente e o Azure gerencia as atualizações para as tabelas de roteamento quando necessário.
Os tipos de salto seguinte VNet peering e VirtualNetworkServiceEndpoint só são adicionados a tabelas de rotas de sub-redes que estejam dentro das redes virtuais criadas através do modelo de implementação Azure Resource Manager. Os tipos de salto seguinte não são adicionados a tabelas de rotas associadas a sub-redes de rede virtual criadas por meio do modelo de implantação clássico.
Rotas personalizadas
Para controlar a maneira como o tráfego de rede é roteado com mais precisão, você pode substituir as rotas padrão que o Azure cria usando suas próprias rotas definidas pelo usuário (UDR). Essa técnica pode ser útil quando você deseja garantir que o tráfego entre duas sub-redes passe por um dispositivo de firewall.
Rotas definidas pelo utilizador
Você pode criar rotas personalizadas ou definidas pelo usuário (estáticas) no Azure para substituir as rotas padrão do sistema do Azure ou para adicionar outras rotas à tabela de rotas de uma sub-rede.
No Azure, cada sub-rede pode ter zero ou uma tabela de rotas associada. Quando você cria uma tabela de rotas e a associa a uma sub-rede, as rotas dentro dela são combinadas ou substituem as rotas padrão que o Azure adiciona a uma sub-rede.
Ao criar uma rota definida pelo utilizador, pode especificar os tipos de próximo salto abaixo:
Aplicação virtual: uma aplicação virtual é uma máquina virtual que, normalmente, executa uma aplicação de rede, como uma firewall. Quando cria uma rota com o tipo de salto seguinte aplicação virtual, também tem de especificar um endereço IP de próximo salto. O endereço IP pode ser:
- O endereço IP privado de uma interface de rede ligada a uma máquina virtual.
- O endereço IP privado de um Balanceador de carga interno do Azure.
Gateway de rede virtual: especifique se quiser que o tráfego destinado a prefixos de endereços específicos seja encaminhado para um gateweay de rede virtual. O gateway de rede virtual tem de ser criado com o tipo VPN.
Nenhum: especifique se quiser ignorar o tráfego para um prefixo de endereço, em vez de o reencaminhar para um destino.
Rede virtual: especifique se pretender substituir o encaminhamento predefinido dentro de uma rede virtual.
Internet: especifique quando deseja rotear explicitamente o tráfego destinado a um prefixo de endereço para a Internet.
Configurar rotas definidas pelo usuário
Aqui está um exemplo em que você tem uma rede virtual que inclui três sub-redes.
- As sub-redes são Frontend, DMZ e Backend. Na sub-rede DMZ, há um dispositivo virtual de rede (NVA). NVAs são VMs que ajudam com funções de rede, como roteamento e otimização de firewall.
- Você deseja garantir que todo o tráfego da sub-rede Frontend passe pelo NVA até a sub-rede Backend.
Criar uma tabela de roteamento
Criar uma tabela de roteamento é simples. Você fornece Nome, Assinatura, Grupo de Recursos e Local. Você também decide usar a propagação de rota do gateway de rede virtual.
As rotas são adicionadas automaticamente à tabela de rotas para todas as sub-redes com a propagação do gateway de rede virtual habilitada. Quando você usa a Rota Expressa, a propagação garante que todas as sub-redes obtenham as informações de roteamento.
Criar uma rota personalizada
Para o nosso exemplo,
- A nova rota é chamada ToPrivateSubnet.
- A sub-rede privada está em 10.0.1.0/24.
- A rota usa um dispositivo virtual. Observe as outras opções para o tipo de salto seguinte: gateway de rede virtual, rede virtual, internet e nenhuma.
- O dispositivo virtual está localizado em 10.0.2.4.
Em resumo, essa rota se aplica a qualquer prefixo de endereço em 10.0.1.0/24 (sub-rede privada). O tráfego direcionado para esses endereços é enviado para o dispositivo virtual com um endereço 10.0.2.4.
Associar a tabela de rotas
A última etapa em nosso exemplo é associar a sub-rede Pública à nova tabela de roteamento. Cada sub-rede pode ter zero ou uma tabela de rotas associada a si.
Nota
Por padrão, usando rotas do sistema, o tráfego iria diretamente para a sub-rede privada. No entanto, com uma rota definida pelo usuário, você pode forçar o tráfego através do dispositivo virtual.
Nota
Neste exemplo, o dispositivo virtual não deve ter um endereço IP público e o encaminhamento IP deve estar habilitado.
Proteja uma VNet usando tunelamento forçado
O túnel forçado permite redirecionar ou “forçar” todo o tráfego associado à Internet novamente para a localização no local através de um túnel de VPN site a site para inspeção e auditoria. Se você não configurar o túnel forçado, o tráfego vinculado à Internet de suas VMs no Azure sempre passará da infraestrutura de rede do Azure diretamente para a Internet, sem a opção de permitir que você inspecione ou audite o tráfego. O acesso não autorizado à Internet pode potencialmente levar à divulgação de informações ou a outros tipos de violações de segurança. O túnel forçado pode ser configurado usando o Azure PowerShell. Ele não pode ser configurado usando o portal do Azure.
No exemplo a seguir, a sub-rede Frontend não está usando túnel de força. As cargas de trabalho na sub-rede Frontend podem continuar a aceitar e responder às solicitações dos clientes diretamente da Internet. As sub-redes Mid-tier e Backend são encapsuladas forçadas. Quaisquer conexões de saída dessas duas sub-redes para a Internet são forçadas ou redirecionadas de volta para um site local por meio de um dos túneis VPN Site-to-site (S2S).
Configurar túnel forçado
O túnel forçado no Azure é configurado usando rotas personalizadas de rede virtual definidas pelo usuário.
Cada sub-rede de rede virtual tem uma tabela de roteamento do sistema integrada. A tabela de roteamento do sistema tem os seguintes três grupos de rotas:
- Rotas de rede virtual local: roteie diretamente para as VMs de destino na mesma rede virtual.
- Rotas locais: roteie para o gateway de VPN do Azure.
- Rota padrão: roteie diretamente para a Internet. Os pacotes destinados aos endereços IP privados não cobertos pelas duas rotas anteriores são descartados.
Para configurar o túnel forçado, você deve:
- Crie uma tabela de roteamento.
- Adicione uma rota padrão definida pelo usuário ao Gateway de VPN.
- Associe a tabela de roteamento à sub-rede VNet apropriada.
O túnel forçado deve ser associado a uma rede virtual que tenha um gateway VPN baseado em rota.
- Você deve definir uma conexão de site padrão entre os sites locais entre locais conectados à rede virtual.
- O dispositivo VPN no local deve ser configurado utilizando 0.0.0.0/0 como seletores de tráfego.
Usar o túnel forçado permite restringir e inspecionar o acesso à Internet de suas VMs e serviços de nuvem no Azure.
Configurar o Servidor de Rotas do Azure
O Azure Route Server simplifica o roteamento dinâmico entre seu dispositivo virtual de rede (NVA) e sua rede virtual. O Azure Route Server é um serviço totalmente gerenciado e está configurado com alta disponibilidade.
O Azure Route Server simplifica a configuração, o gerenciamento e a implantação do seu NVA em sua rede virtual.
Você não precisa mais atualizar manualmente a tabela de roteamento em seu NVA sempre que seus endereços de rede virtual são atualizados.
Você não precisa mais atualizar as rotas definidas pelo usuário manualmente sempre que seu NVA anunciar novas rotas ou retirar as antigas.
Você pode emparelhar várias instâncias do seu NVA com o Azure Route Server.
A interface entre o NVA e o Azure Route Server é baseada em um protocolo padrão comum. Contanto que seu NVA ofereça suporte a BGP, você pode emparelhá-lo com o Azure Route Server.
Você pode implantar o Azure Route Server em qualquer uma de suas redes virtuais novas ou existentes.
Saiba como implantar o Azure Route Server
Diagnosticar um problema de encaminhamento
Imagine que suas tentativas de se conectar a uma máquina virtual (VM) específica em sua rede virtual do Azure falham persistentemente. Você pode diagnosticar um problema de roteamento exibindo as rotas que são eficazes para uma interface de rede em uma VM.
Você pode exibir as rotas efetivas para cada interface de rede usando o portal do Azure, o Azure PowerShell ou a CLI do Azure. As etapas a seguir mostram exemplos de cada técnica. Em cada caso, a saída só é retornada se a VM estiver no estado de execução. Se houver várias interfaces de rede conectadas à VM, você poderá revisar as rotas efetivas para cada interface de rede. Como cada interface de rede pode estar em uma sub-rede diferente, cada interface de rede pode ter diferentes rotas efetivas.
Exibir rotas efetivas no portal do Azure
Faça logon no portal do Azure com uma conta do Azure que tenha as permissões necessárias.
Na caixa de pesquisa, digite o nome da VM que você deseja investigar.
Selecione a VM nos resultados da pesquisa.
Em Configurações, selecione Rede e navegue até o recurso de interface de rede selecionando seu nome.
Em Suporte + solução de problemas, selecione Rotas efetivas. As rotas efetivas para uma interface de rede chamada myVMNic1 são mostradas na imagem a seguir:
Exibir rotas efetivas usando o Azure PowerShell
Você pode exibir as rotas efetivas para uma interface de rede com o comando Get-AzEffectiveRouteTable. O exemplo a seguir obtém as rotas efetivas para uma interface de rede chamada myVMNic1 que está em um grupo de recursos chamado myResourceGroup:
Get-AzEffectiveRouteTable `
-NetworkInterfaceName myVMNic1 `
-ResourceGroupName myResourceGroup `
Resolver o problema de roteamento
As etapas que você pode tomar para resolver o problema de roteamento podem incluir:
- Adicione uma rota personalizada para substituir uma rota padrão. Saiba como adicionar uma rota personalizada.
- Altere ou remova uma rota personalizada que faz com que o tráfego seja roteado para um local indesejado. Saiba como alterar ou excluir uma rota personalizada.
- Verifique se a tabela de rotas está associada à sub-rede correta (aquela que contém a interface de rede). Saiba como associar uma tabela de rotas a uma sub-rede.
- Certifique-se de que dispositivos como o gateway de VPN do Azure ou dispositivos virtuais de rede estão operando conforme o esperado.
Escolha a melhor resposta para cada pergunta.