Integrar seu aplicativo a uma rede virtual do Azure

Este artigo descreve o recurso de integração de VNet do Serviço de Aplicativo do Azure e como configurá-lo com os aplicativos no Serviço de Aplicativo. Com as VNETs (Redes Virtuais do Azure) você pode colocar muitos dos seus recursos do Azure em uma rede não roteável para a Internet. O recurso de Integração de VNet do Serviço de Aplicativo permite que os seus aplicativos acessem recursos em ou por meio de uma rede virtual. A Integração de VNet não permite que os aplicativos sejam acessados de modo privado.

O Serviço de Aplicativo tem duas variações:

  • Os tipos de preço de computação dedicados, que incluem Básico, Standard, Premium, Premium v2 e Premium v3.
  • O Ambiente do Serviço de Aplicativo, que é implantado diretamente em sua rede virtual com infraestrutura de suporte dedicada e está usando os tipos de preço Isolado e Isolado v2.

O recurso de integração de VNet é usado em tipos de preço de computação dedicada do Serviço de Aplicativo do Azure. Se o aplicativo está em um Ambiente do Serviço de Aplicativo, ele já está em uma rede virtual e não exige o uso do recurso de Integração de VNet para acessar recursos na mesma rede virtual. Para obter mais informações sobre todos os recursos de rede, confira Recursos de rede do Serviço de Aplicativo.

A Integração de rede virtual concede ao seu aplicativo acesso a recursos da sua rede virtual, mas não permite acesso privado de entrada ao seu aplicativo por meio da rede virtual. Acesso ao site privado significa tornar seu aplicativo acessível somente de uma rede privada, como de dentro de uma rede virtual do Azure. A integração de rede virtual é usada apenas para fazer chamadas de saída do aplicativo para a rede virtual. O recurso de integração de rede virtual se comporta de maneira diferente quando é usado com redes virtuais na mesma região e com redes virtuais em outras regiões. O recurso Integração VNet tem duas variações:

  • Integração de rede virtual regional: quando se conecta a redes virtuais na mesma região, você precisa ter uma sub-rede dedicada na rede virtual com a qual está se integrando.
  • Integração de rede virtual exigida pelo gateway: quando se conecta diretamente à rede virtual em outras regiões ou a uma rede virtual clássica na mesma região, você precisa de um gateway de Rede Virtual do Azure criado na rede virtual de destino.

O recurso da Integração VNet:

  • Exige um tipo de preço de Serviço de Aplicativo Standard, Premium, Premium v2, Premium v3 ou Premium Elástico.
  • Dá suporte a TCP e UDP.
  • Funciona com aplicativos do Serviço de Aplicativo e aplicativos de funções.

Há algumas coisas às quais a integração de rede virtual não dá suporte, incluindo:

  • A montagem de uma unidade.
  • Integração do Windows Server Active Directory.
  • NetBIOS.

A integração de rede virtual necessária para o gateway fornece acesso a recursos somente na rede virtual de destino ou em redes conectadas à rede virtual de destino com emparelhamento ou VPNs. A integração de rede virtual exigida pelo gateway não habilita o acesso aos recursos disponíveis nas conexões do Azure ExpressRoute nem trabalha com pontos de extremidade de serviço.

Independentemente da versão usada, a integração de rede virtual concede ao seu aplicativo acesso a recursos da sua rede virtual, mas não permite acesso privado de entrada ao seu aplicativo por meio da rede virtual. Acesso ao site privado significa tornar seu aplicativo acessível somente de uma rede privada, como de dentro de uma rede virtual do Azure. A integração de rede virtual é usada apenas para fazer chamadas de saída do aplicativo para a rede virtual.

Saiba como habilitar a integração de rede virtual.

Integração de rede virtual regional

A integração de rede virtual regional dá suporte à conexão a uma rede virtual na mesma região e não requer um gateway. O uso da integração de rede virtual regional permite que seu aplicativo acesse:

  • Recursos na rede virtual com a qual você está integrado.
  • Recursos em redes virtuais emparelhadas com a rede virtual à qual seu aplicativo está integrado, incluindo conexões de emparelhamento global.
  • Recursos nas conexões do Azure ExpressRoute.
  • Serviços protegidos por ponto de extremidade de serviço.
  • Serviços habilitados para ponto de extremidade privado.

Usando a integração de rede virtual regional, você pode usar os seguintes recursos de rede do Azure:

  • NSGs (grupos de segurança de rede) : você pode bloquear o tráfego de saída com um NSG que é colocado em sua sub-rede de integração. As regras de entrada não se aplicam porque você não pode usar a integração de rede virtual para fornecer acesso de entrada ao seu aplicativo.
  • UDRs (tabelas de rotas) : você pode inserir uma tabela de rotas na sub-rede de integração para enviar o tráfego de saída para onde desejar.

Como funciona a integração da rede virtual regional

Os aplicativos do Serviço de Aplicativo são hospedados em funções de trabalho. A integração de rede virtual regional funciona por meio da montagem de interfaces virtuais nas funções de trabalho com endereços na sub-rede delegada. Como o endereço de origem está em sua rede virtual, ela pode acessar a maioria das coisas em ou por meio de sua rede virtual, como uma VM em sua rede virtual faria. A implementação de rede é diferente da execução de uma VM na rede virtual. É por isso que alguns recursos de rede ainda não estão disponíveis para esse recurso.

Diagram that shows how regional virtual network integration works.

Quando a integração de rede virtual regional está habilitada, seu aplicativo faz chamadas de saída por meio de sua rede virtual. Os endereços de saída listados no portal de propriedades do aplicativo são os endereços ainda usados pelo seu aplicativo. No entanto, se a chamada de saída for para uma máquina virtual ou ponto de extremidade privado na rede virtual de integração ou emparelhada, o endereço de saída será um endereço da sub-rede de integração. O IP privado atribuído a uma instância é exposto por meio da variável de ambiente, WEBSITE_PRIVATE_IP.

Quando todo o roteamento de tráfego está habilitado, todo o tráfego de saída é enviado para sua rede virtual. Se todo o roteamento de tráfego não estiver habilitado, somente o tráfego privado (RFC1918) e os pontos de extremidade de serviço configurados na sub-rede de integração serão enviados à rede virtual e o tráfego de saída para a Internet passará pelos mesmos canais de sempre.

O recurso dá suporte a apenas uma interface virtual por trabalho. Uma interface virtual por trabalho significa uma integração de rede virtual regional por Plano do Serviço de Aplicativo. Todos os aplicativos no mesmo Plano do Serviço de Aplicativo podem usar a mesma integração de rede virtual. Se você precisar de um aplicativo para se conectar a outra rede virtual, precisará criar outro plano do Serviço de Aplicativo. A interface virtual usada não é um recurso ao qual os clientes têm acesso direto.

Devido à natureza de como essa tecnologia opera, o tráfego usado com a integração de rede virtual não é exibido no Observador de Rede do Azure nem nos logs de fluxo do NSG.

Requisitos de sub-rede

A integração de rede virtual depende de uma sub-rede dedicada. Quando você cria uma sub-rede, a sub-rede do Azure perde cinco IPs desde o início. Um endereço da sub-rede de integração é usado para cada instância do plano. Se você dimensionar seu aplicativo para quatro instâncias, quatro endereços serão usados.

Quando você aumenta ou reduz verticalmente, o espaço de endereço necessário é dobrado por um curto período de tempo. Essa alteração afeta as instâncias reais disponíveis, com suporte, para um determinado tamanho de sub-rede. A tabela a seguir mostra os endereços máximos disponíveis por bloco CIDR e o efeito que isso tem na escala horizontal.

Tamanho do bloco CIDR Máximo de endereços disponíveis Escala horizontal máxima (instâncias)*
/ 28 11 5
/ 27 27 13
/ 26 59 29

* Pressupõe que você precisará aumentar ou reduzir verticalmente em qualquer tamanho ou SKU em algum momento.

Como o tamanho da sub-rede não pode ser alterado após a atribuição, use uma sub-rede que seja grande o suficiente para acomodar qualquer escala que seu aplicativo possa alcançar. Para evitar problemas com a capacidade de sub-rede, use um /26 com 64 endereços.

Quando você quiser que os aplicativos no plano acessem uma rede virtual que já esteja conectada com aplicativos em outro plano, selecione uma sub-rede diferente daquela que estiver sendo usada pela integração de rede virtual preexistente.

Rotas

Há dois tipos de roteamento a serem considerados ao configurar a integração de rede virtual regional. O roteamento de aplicativo define qual tráfego é encaminhado do aplicativo para a rede virtual. O roteamento de rede é a capacidade de controlar como o tráfego é encaminhado de/para a rede virtual.

Roteamento de aplicativo

Ao configurar o roteamento de aplicativos, é possível rotear todo o tráfego ou apenas o tráfego privado (também conhecido como tráfego RFC1918) para sua rede virtual. Configure esse comportamento por meio da configuração Rotear Tudo. Quando a configuração Rotear Tudo está desabilitada, o aplicativo encaminha apenas o tráfego privado à rede virtual. Se você quer rotear todo o tráfego de saída para a rede virtual, verifique se a configuração Rotear Tudo está habilitada.

Observação

  • Quando a configuração Rotear Tudo está habilitada, todo o tráfego está sujeito aos NSGs e às UDRs aplicados à sub-rede de integração. Quando o roteamento de todo o tráfego está habilitado, o tráfego de saída ainda é enviado dos endereços listados nas propriedades do aplicativo, a menos que você forneça rotas que direcionem o tráfego para outro lugar.
  • Windows contêineres não são suportados para roteamento de referências do Serviço de Aplicativo Key Vault imagens de contêiner personalizadas pela integração da rede virtual.
  • A integração de rede virtual regional não pode usar a porta 25.

Saiba como configurar o roteamento de aplicativos.

Recomendamos que você use a definição de configuração Rotear Tudo para habilitar o roteamento de todo o tráfego. O uso da definição de configuração permitirá que você audite o comportamento com uma política interna. A Configuração de Aplicativo WEBSITE_VNET_ROUTE_ALL existente ainda pode ser usada e você pode habilitar todo o roteamento de tráfego com qualquer uma das configurações.

Roteamento de rede

Você pode usar tabelas de rotas para rotear o tráfego de saída do seu aplicativo para onde quiser. As tabelas de rotas afetam o tráfego de destino. Quando a configuração Rotear Tudo está desabilitada em roteamento de aplicativos, somente o tráfego privado (RFC1918) é afetado pelas tabelas de rotas. Os destinos comuns podem incluir dispositivos de firewall ou gateways. As rotas definidas em sua sub-rede de integração não afetarão as respostas a solicitações de aplicativo de entrada.

Quando você quiser rotear todo o tráfego de saída local, poderá usar uma tabela de rotas para enviar todo o tráfego de saída para o gateway do Azure ExpressRoute. Se você rotear o tráfego para um gateway, defina rotas na rede externa para enviar respostas.

As rotas de BGP (Border Gateway Protocol) também afetam o tráfego do aplicativo. Se você tiver rotas de BGP de, por exemplo, um gateway de ExpressRoute, o tráfego de saída do aplicativo será afetado. Semelhante às rotas definidas pelo usuário, as rotas BGP afetam o tráfego de acordo com a configuração no escopo de roteamento.

Grupos de segurança de rede

Um aplicativo que usa a integração de rede virtual regional pode usar um grupo de segurança de rede para bloquear o tráfego de saída para recursos na rede virtual ou na Internet. Para bloquear o tráfego para endereços públicos, habilite a configuração Rotear Tudo para a rede virtual. Quando Rotear Tudo não está habilitada, os NSGs são aplicados somente ao tráfego RFC1918.

Um NSG aplicado à sub-rede de integração entra em vigor independentemente das tabelas de rotas aplicadas à sub-rede de integração.

As regras de entrada em um NSG não se aplicam ao seu aplicativo porque a integração de rede virtual afeta apenas o tráfego de saída de seu aplicativo. Para controlar o tráfego de entrada para seu aplicativo, use a funcionalidade de Restrições de acesso.

Pontos de extremidade de serviço

A integração de rede virtual regional permite que você alcance os serviços do Azure que são protegidos com pontos de extremidade de serviço. Para acessar um serviço protegido por ponto de extremidade de serviço, siga estas etapas:

  1. Configure a integração de rede virtual regional com seu aplicativo Web para se conectar a uma sub-rede específica para integração.
  2. Vá para o serviço de destino e configure os pontos de extremidade de serviço em relação à sub-rede de integração.

Pontos de extremidade privados

Se você quiser fazer chamadas para pontos de extremidade privados, verifique se as pesquisas de DNS são resolvidas para o ponto de extremidade privado. Você pode impor esse comportamento de uma das seguintes maneiras:

  • Integrar com as zonas privadas do DNS do Azure. Quando a rede virtual não tem um servidor DNS personalizado, a integração é feita automaticamente quando as zonas são vinculadas à rede virtual.
  • Gerenciar o ponto de extremidade privado no servidor DNS usado pelo seu aplicativo. Para gerenciar a configuração, você precisa saber o endereço IP do ponto de extremidade privado. Em seguida, aponte o ponto de extremidade que você está tentando alcançar para esse endereço usando um registro A.
  • Configure seu próprio servidor DNS para encaminhar para as zonas privadas do DNS do Azure.

Zonas privadas do DNS do Azure

Depois que seu aplicativo se integra à sua rede virtual, ele usa o mesmo servidor DNS com o qual a sua rede virtual está configurada. Se nenhum DNS personalizado for especificado, ele usará o DNS padrão do Azure e as zonas privadas vinculadas à rede virtual.

Limitações

Há algumas limitações para o uso da integração de rede virtual regional:

  • O recurso está disponível em todas as unidades de escala do Serviço de Aplicativo em Premium v2 e Premium v3. Também está disponível em Standard, mas somente em unidades de escala do Serviço de Aplicativo mais recentes. Se você estiver em uma unidade de escala mais antiga, só poderá usar a funcionalidade em um plano do Serviço de Aplicativo Premium v2. Se você quiser ter certeza de que pode usar a funcionalidade em um plano do Serviço de Aplicativo Standard, crie seu aplicativo em um plano do Serviço de Aplicativo Premium v3. Esses planos têm suporte apenas em nossas unidades de escala mais recentes. Se desejar, você poderá reduzir verticalmente depois que o plano for criado.
  • A funcionalidade não pode ser usada por aplicativos de plano isolado que estejam em um Ambiente do Serviço de Aplicativo.
  • Você não pode acessar recursos em conexões de emparelhamento com Redes Virtuais Clássicas.
  • O recurso exige uma sub-rede não usada que seja um bloco /28 IPv4 ou maior em uma rede virtual do Azure Resource Manager.
  • O aplicativo e a rede virtual precisam estar na mesma região.
  • A rede virtual de integração não pode ter espaços de endereço IPv6 definidos.
  • Não é possível ter políticas de ponto de extremidade de serviço habilitadas na sub-rede de integração.
  • A sub-rede de integração pode ser usada por apenas um plano do Serviço de Aplicativo.
  • Você não pode excluir uma rede virtual com um aplicativo integrado. Remova a integração antes de excluir a rede virtual.
  • Você só pode ter uma integração de rede virtual regional por plano do Serviço de Aplicativo. Vários aplicativos no mesmo plano do Serviço de Aplicativo podem usar a mesma rede virtual.
  • Você não pode alterar a assinatura de um aplicativo ou plano enquanto há um aplicativo usando a integração de rede virtual regional.

Integração de rede virtual exigida por gateway

A Integração rede virtual exigida pelo gateway dá suporte à conexão com uma rede virtual em outra região ou com uma rede virtual clássica. Integração de rede virtual exigida por gateway:

  • Permite que um aplicativo se conecte a apenas uma rede virtual por vez.
  • Permite a integração de até cinco redes virtuais em um Plano do Serviço de Aplicativo.
  • Permite que a mesma rede virtual seja usada por vários aplicativos em um Plano do Serviço de Aplicativo sem afetar o número total que pode ser usado por um Plano do Serviço de Aplicativo. Se você tiver seis aplicativos usando a mesma rede virtual no mesmo plano do Serviço de Aplicativo, isso contará como uma rede virtual sendo usada.
  • O SLA no gateway pode afetar o SLA geral.
  • Permite que os seus aplicativos usem o DNS com o qual a rede virtual está configurada.
  • Exige um gateway baseado em rota da Rede Virtual configurado com uma VPN ponto a site SSTP antes que possa ser conectado a um aplicativo.

Você não pode usar a integração de rede virtual exigida por gateway:

  • Com uma rede virtual conectada com o ExpressRoute.
  • De um aplicativo do Linux.
  • De um contêiner do Windows.
  • Para acessar os recursos protegidos pelo ponto de extremidade de serviço.
  • Com um gateway de coexistência que dê suporte ao ExpressRoute e a VPNs ponto a site ou site a site.

Configurar um gateway na rede virtual do Azure

Para criar um gateway:

  1. Crie o gateway de VPN e a sub-rede. Selecione um tipo VPN baseado em rota.

  2. Defina os endereços de ponto a site. Se o gateway não estiver no SKU básico, então o IKEV2 precisará ser desabilitado na configuração ponto a site e o SSTP deverá ser selecionado. O espaço de endereço de ponto a site precisa estar nos blocos de endereços RFC 1918 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16.

Se você criar o gateway para uso com a integração de rede virtual exigida por gateway, não será necessário carregar um certificado. A criação do gateway pode levar 30 minutos. Você não poderá integrar seu aplicativo à rede virtual até que o gateway seja criado.

Como a integração de rede virtual exigida por gateway funciona

O recurso de integração de rede virtual exigida por gateway se baseia na tecnologia de VPN ponto a site. As VPNs ponto a site limitam o acesso à rede à máquina virtual que hospeda o aplicativo. Os aplicativos são restritos apenas ao envio de tráfego para a Internet por meio de conexões híbridas ou da integração de rede virtual. Quando seu aplicativo é configurado com o portal para usar a integração de rede virtual exigida por gateway, uma negociação complexa é gerenciada em seu nome para criar e atribuir certificados no gateway e no lado do aplicativo. O resultado é que os trabalhos usados para hospedar os aplicativos podem se conectar diretamente ao gateway de rede virtual na rede virtual selecionada.

Diagram that shows how gateway-required virtual network integration works.

Acessar recursos locais

Aplicativos podem acessar recursos locais ao integrarem-se com redes virtuais que têm conexões site a site. Se você usar a integração de rede virtual exigida por gateway, atualize as rotas de gateway de VPN locais com os blocos de endereços ponto a site. Quando o VPN site a site é configurado pela primeira vez, os scripts usados para configurá-lo devem configurar as rotas adequadamente. Se adicionar os endereços ponto a site depois de criar uma VPN site a site, você precisará atualizar as rotas manualmente. Os detalhes sobre como fazer isso variam de acordo com o gateway e não são descritos aqui. Não é possível ter o BGP configurado com uma conexão VPN site a site.

Nenhuma configuração extra é necessária para que o recurso de integração de rede virtual regional acesse a rede virtual até os recursos locais. Você apenas precisa conectar sua rede virtual aos recursos locais usando o ExpressRoute ou uma VPN site a site.

Observação

O recurso de integração de rede virtual exigida por gateway não integra um aplicativo com uma rede virtual que tem um gateway do ExpressRoute. Mesmo se o Gateway do ExpressRoute estiver configurado no modo de coexistência, a Integração com a rede virtual não funcionará. Caso precise acessar recursos por meio de uma conexão do ExpressRoute, use o recurso de integração de rede virtual regional ou um Ambiente do Serviço de Aplicativo, que é executado na sua rede virtual.

Emparelhamento

Se você usar o emparelhamento com a integração de rede virtual regional, não precisará fazer mais nenhuma configuração.

Se você usar a integração de rede virtual exigida por gateway com o emparelhamento, precisará configurar mais alguns itens. Para configurar o emparelhamento para funcionar com o aplicativo:

  1. Adicione que uma conexão de emparelhamento na rede virtual à qual o aplicativo se conecta. Ao adicionar a conexão de emparelhamento, habilite Permitir acesso à rede virtual e selecione Permitir tráfego encaminhado e Permitir trânsito de gateway.
  2. Adicione uma conexão de emparelhamento na rede virtual que está sendo conectada à rede virtual à qual você está conectado. Ao adicionar a conexão de emparelhamento à rede virtual de destino, habilite Permitir acesso à rede virtual e selecione Permitir tráfego encaminhado e Permitir gateways remotos.
  3. Acesse a interface do usuário Plano do Serviço de AplicativoRedeIntegração de rede virtual no portal. Selecione a rede virtual à qual seu aplicativo se conecta. Na seção de roteamento, adicione o intervalo de endereços da rede virtual que está emparelhada com a rede virtual à qual o aplicativo está conectado.

Gerenciar a integração de rede virtual

A conexão e a desconexão com uma rede virtual estão no nível do aplicativo. As operações que podem afetar a integração de rede virtual entre vários aplicativos estão no nível do Plano do Serviço de Aplicativo. No portal do aplicativo >>>>, veja os detalhes da sua rede virtual. Veja informações semelhantes no nível do Plano do Serviço de Aplicativo no portal Plano do Serviço de AplicativoRedeIntegração de rede virtual.

A única operação que você pode executar na exibição de aplicativo da instância da integração de rede virtual é desconectar seu aplicativo da rede virtual à qual ele está atualmente conectado. Para desconectar o aplicativo de uma rede virtual, selecione Desconectar. Seu aplicativo é reiniciado quando você se desconecta de uma rede virtual. Desconectar-se não altera a rede virtual. A sub-rede ou o gateway não é removido. Caso deseje excluir sua rede virtual, primeiro desconecte seu aplicativo da rede virtual e exclua os recursos dele, como os gateways.

A interface do usuário da integração de rede virtual do Plano do Serviço de Aplicativo mostra todas as integrações de rede virtual usadas pelos aplicativos no Plano do Serviço de Aplicativo. Para ver detalhes sobre cada rede virtual, selecione aquela em que você está interessado. Há duas ações que você pode executar aqui para a integração de rede virtual exigida pelo gateway:

  • Rede de sincronização: a operação de sincronização de rede é usada somente para o recurso de integração de rede virtual exigida por gateway. Executar uma operação de rede de sincronização garante que seus certificados e informações de rede estejam em sincronia. Se você adicionar ou alterar o DNS de sua rede virtual, execute uma operação de sincronização de rede. Essa operação reinicia todos os aplicativos que usam essa rede virtual. Essa operação não funcionará se você estiver usando um aplicativo e uma rede virtual pertencentes a assinaturas diferentes.
  • Adicionar rotas: a adição de rotas orientará o tráfego de saída em sua rede virtual.

O IP privado atribuído à instância é exposto por meio da variável de ambiente, WEBSITE_PRIVATE_IP. A interface do usuário do console do Kudu também mostra a lista de variáveis de ambiente disponíveis para o aplicativo Web. Esse IP é atribuído por meio do intervalo de endereços da sub-rede integrada. Para a integração de rede virtual regional, o valor WEBSITE_PRIVATE_IP é um IP do intervalo de endereços da sub-rede delegada. Para a integração de rede virtual exigida por gateway, o valor é um IP do intervalo de endereços do pool de endereços ponto a site configurado no gateway de rede virtual. Esse IP será usado pelo aplicativo Web para se conectar aos recursos por meio da rede virtual do Azure.

Observação

O valor de WEBSITE_PRIVATE_IP será alterado. No entanto, ele será um IP dentro do intervalo de endereços da sub-rede de integração ou do intervalo de endereços de ponto a site, portanto, você precisará permitir o acesso de todo o intervalo de endereços.

Roteamento da integração de rede virtual exigida por gateway

As rotas definidas em sua rede virtual são usadas para direcionar o tráfego do aplicativo para a sua rede virtual. Para enviar mais tráfego de saída para a rede virtual, adicione esses blocos de endereço aqui. Essa funcionalidade só funciona com a integração de rede virtual exigida por gateway. As tabelas de rotas não afetam o tráfego do aplicativo quando você usa a integração de rede virtual exigida por gateway do mesmo modo que ocorre com a integração de rede virtual regional.

Certificados de integração de rede virtual exigida por gateway

Quando a integração de rede virtual exigida por gateway está habilitada, há uma troca de certificados necessária para garantir a segurança da conexão. Juntamente com os certificados, há a configuração do DNS, as rotas e outros itens semelhantes que descrevem a rede.

Se os certificados ou as informações de rede forem alterados, selecione Sincronizar Rede. Ao selecionar Sincronizar Rede, você causa uma breve interrupção na conectividade entre o aplicativo e a rede virtual. Embora seu aplicativo não seja reiniciado, a perda de conectividade pode fazer com que seu site não funcione corretamente.

Detalhes de preço

O recurso de integração de rede virtual regional não tem nenhum custo extra para uso além dos custos do tipo de preço do Plano do Serviço de Aplicativo.

Três custos estão relacionados ao uso do recurso de integração de rede virtual exigida por gateway:

  • Encargos do tipo de preço do plano do Serviço de Aplicativo: os aplicativos precisam estar em um plano do Serviço de Aplicativo Standard, Premium v2 ou Premium v3. Para obter mais informações sobre esses custos, confira Preços do Serviço de Aplicativo.
  • Custos de transferência de dados: há uma cobrança pela saída de dados, mesmo se a rede virtual estiver no mesmo datacenter. Esses custos são descritos em Detalhes de preços da transferência de dados.
  • Custos do gateway de VPN: há um custo para o gateway de rede virtual necessário para a VPN ponto a site. Para obter mais informações, confira Preços do gateway de VPN.

Solução de problemas

Observação

Não há suporte para a integração de rede virtual em cenários do Docker Compose no Serviço de Aplicativo. Restrições de acesso serão ignoradas se houver um ponto de extremidade privado presente.

Embora o recurso seja fácil de configurar, isso não significa que sua experiência estará livre de problemas. Se tiver problemas para acessar o ponto de extremidade desejado, existem alguns utilitários que você pode usar para testar a conectividade do console do aplicativo. Há dois consoles que você pode usar. Um deles é o console do Kudu e o outro é o console no portal do Azure. Para acessar o console do Kudu do aplicativo, vá para FerramentasKudu. Você também pode acessar o console do Kudo em [sitename].scm.azurewebsites.net. Depois que o site for carregado, vá para a guia Console de depuração. Para acessar o console do portal do Azure hospedado do seu aplicativo, vá para o Consolede ferramentas.

Ferramentas

Em aplicativos nativos do Windows, as ferramentas ping, nslookup e tracert não funcionam por meio do console devido a restrições de segurança (funcionam em contêineres personalizados do Windows). Para compensar essa ausência, duas ferramentas separadas foram adicionadas. Para testar a funcionalidade do DNS, adicionamos uma ferramenta chamada nameresolver.exe. A sintaxe do é:

nameresolver.exe hostname [optional: DNS Server]

Você pode usar a nameresolver para verificar os nomes de host de que seu aplicativo depende. Desta forma, você pode testar se há algo configurado incorretamente com o seu DNS ou talvez não tenha acesso ao seu servidor DNS. Você pode ver o servidor DNS que seu aplicativo usa no console, observando as variáveis de ambiente WEBSITE_DNS_SERVER e WEBSITE_DNS_ALT_SERVER.

Observação

A ferramenta nameresolver.exe atualmente não funciona em contêineres personalizados do Windows.

Você pode usar a próxima ferramenta para testar a conectividade TCP para uma combinação de host e porta. Essa ferramenta é chamada tcpping e a sintaxe é:

tcpping.exe hostname [optional: port]

O utilitário tcpping informa se você pode acessar um host específico e uma porta. Ele pode mostrar sucesso apenas se houver um aplicativo escutando na combinação de host e porta, e houver acesso à rede de seu aplicativo para o host e porta especificados.

Depurar o acesso a recursos hospedados na rede virtual

Há várias coisas que podem impedir que seu aplicativo alcance um host e uma porta específicos. Na maioria das vezes, é uma destas coisas:

  • Há um firewall no caminho. Se você tiver um firewall no caminho, atingiu o tempo limite do TCP. O tempo limite de TCP é 21 segundos neste caso. Use a ferramenta tcpping para testar a conectividade. Os tempos limite de TCP podem ser causados por muitas coisas além dos firewalls, mas comece por aí.
  • O DNS não está acessível. O tempo limite do DNS é de 3 segundos por servidor DNS. Se você tiver dois servidores DNS, o tempo limite será de seis segundos. Use nameresolver para ver se o DNS está funcionando. Você não pode usar o nslookup, porque ele não usa o DNS com o qual sua rede virtual está configurada. Se estiver inacessível, você pode ter um firewall ou NSG bloqueando o acesso ao DNS ou pode estar inoperante.

Se esses itens não resolverem seu problema, procure por coisas simples primeiro, como:

Integração de rede virtual regional

  • Seu destino é um endereço não RFC1918 e você não tem Rotear Todos habilitado?
  • Há um NSG bloqueando a saída de sua sub-rede de integração?
  • Se você estiver entrando no Azure ExpressRoute ou em uma VPN, seu gateway local será configurado para rotear o tráfego de volta para o Azure? Se você puder acessar pontos de extremidade em sua rede virtual, mas não no local, verifique suas rotas.
  • Você tem permissões suficientes para definir a delegação na sub-rede de integração? Durante a configuração de integração da rede virtual regional, sua sub-rede de integração é delegada para Microsoft.Web/serverFarms. A interface do usuário de integração da VNet delega a sub-rede para Microsoft. Web/serverFarms automaticamente. Se sua conta não tiver permissões de rede suficientes para definir a delegação, você precisará de alguém que possa definir atributos em sua sub-rede de integração para delegar a sub-rede. Para delegar manualmente a sub-rede de integração, vá para a interface do usuário da sub-rede da rede virtual do Azure e defina a delegação para Microsoft. Web/serverFarms.

Integração de rede virtual exigida por gateway

  • O intervalo de endereços ponto a site está nos intervalos RFC 1918 (10.0.0.0-10.255.255.255 / 172.16.0.0-172.31.255.255 / 192.168.0.0-192.168.255.255)?
  • O gateway aparece como em execução no portal? Se o gateway estiver inativo, ative-o.
  • Os certificados estão sincronizados ou você suspeita que a configuração da rede foi alterada? Se os certificados estiverem fora de sincronia ou se você suspeitar que uma alteração foi feita em sua configuração de rede virtual que não foi sincronizada com seus ASPs, selecione Sincronizar rede.
  • Se você estiver entrando no Azure ExpressRoute ou em uma VPN, seu gateway local será configurado para rotear o tráfego de volta para o Azure? Se você puder acessar pontos de extremidade em sua rede virtual, mas não no local, verifique suas rotas.
  • Você está tentando usar um gateway de coexistência que dá suporte a ponto a site e ExpressRoute? Não há suporte para gateways de coexistência com integração de rede virtual.

A depuração de problemas de rede é um desafio porque você não pode ver o que está bloqueando o acesso a uma combinação de hosts:porta específica. Esses motivos incluem:

  • você tem um firewall no seu host que impede o acesso à porta do aplicativo usando o intervalo de IP ponto a site. o cruzamento de sub-redes geralmente exige acesso Público.
  • o host de destino está inoperante.
  • seu aplicativo está inoperante.
  • você tinha o IP ou nome de host incorreto.
  • seu aplicativo está escutando em uma porta diferente da que você esperava. Você pode corresponder a sua ID de processo com a porta de escuta usando "netstat -aon" no host do ponto de extremidade.
  • Os grupos de segurança de rede estão configurados de modo a impedir o acesso ao host do aplicativo e à porta do intervalo de IP ponto a site.

Você não sabe qual endereço seu aplicativo realmente usa. Pode ser qualquer endereço na sub-rede de integração ou intervalo de endereços de ponto a site, portanto, você precisa permitir o acesso de todo o intervalo de endereços.

Mais etapas de depuração incluem:

  • Conecte-se a uma VM na sua VNet e tente acessar o host:porta do recurso de lá. Para testar o acesso TCP, use o comando do PowerShell test-netconnection. A sintaxe do é:

    test-netconnection hostname [optional: -Port]
    
  • Abra um aplicativo em uma VM e teste o acesso a esse host e porta a partir do console do seu aplicativo usando tcpping.

Recursos locais

Se o aplicativo não puder acessar um recurso local, verifique se é possível acessar o recurso da sua VNet. Use o comando do PowerShell test-netconnection para verificar se há acesso TCP. Se sua VM não conseguir acessar seu recurso local, sua conexão VPN ou ExpressRoute pode não estar configurada corretamente.

Se sua VM hospedada em rede virtual pode alcançar seu sistema local, mas seu aplicativo não, a causa é provavelmente um dos seguintes motivos:

  • As rotas não estão configuradas com sua sub-rede ou intervalos de endereços ponto a site em seu gateway local.
  • Os grupos de segurança de rede estão bloqueando o acesso ao seu intervalo de IP ponto a site.
  • Os firewalls locais estão bloqueando o tráfego de seu intervalo de IP ponto a site.
  • Você está tentando acessar um endereço não RFC 1918 usando o recurso de integração de rede virtual regional.

Como excluir o plano do Serviço de Aplicativo ou o aplicativo Web antes de desconectar a integração VNet

Se você excluiu o aplicativo Web ou o plano do Serviço de Aplicativo antes de desconectar a integração VNet, não poderá fazer operações de atualização/exclusão na rede virtual ou na sub-rede usada para a integração com o recurso excluído. Uma delegação de sub-rede "Microsoft.Web/serverFarms" permanecerá atribuída à sua sub-rede e impedirá as operações de atualização/exclusão.

Para atualizar/excluir a sub-rede ou a rede virtual novamente, você precisa criar novamente a integração VNet e desconectá-la:

  1. Crie o plano do Serviço de Aplicativo e o aplicativo Web (é obrigatório usar exatamente o mesmo nome do aplicativo Web anterior).
  2. Navegue até a folha "Rede" no aplicativo Web e configure a integração VNet.
  3. Depois que a integração VNet estiver configurada, escolha o botão "Desconectar".
  4. Exclua o plano do Serviço de Aplicativo ou o aplicativo Web.
  5. Atualize ou exclua a sub-rede ou a rede virtual.

Se você ainda encontrar problemas com a integração VNet depois de seguir as etapas acima, entre em contato com Suporte da Microsoft.