Partilhar via


Endereços IP de entrada e saída no Serviço de Aplicações do Azure

O Serviço App do Azure é um serviço multilocatário, exceto para Ambientes do Serviço App. Os aplicativos que não estão em um ambiente do Serviço de Aplicativo (não na camada Isolada) compartilham a infraestrutura de rede com outros aplicativos. Como resultado, os endereços IP de entrada e saída de um aplicativo podem ser diferentes e até mesmo mudar em determinadas situações.

Os Ambientes do Serviço de Aplicativo usam infraestruturas de rede dedicadas, de modo que os aplicativos executados em um ambiente do Serviço de Aplicativo obtêm endereços IP estáticos e dedicados para conexões de entrada e saída.

Como funcionam os endereços IP no Serviço de Aplicativo

Um aplicativo do Serviço de Aplicativo é executado em um plano do Serviço de Aplicativo e os planos do Serviço de Aplicativo são implantados em uma das unidades de implantação na infraestrutura do Azure (chamada internamente de espaço web). A cada unidade de implantação é atribuído um conjunto de endereços IP virtuais, que inclui um endereço IP de entrada público e um conjunto de endereços IP de saída. Todos os planos do Serviço de Aplicativo na mesma unidade de implantação e as instâncias de aplicativos que são executadas neles compartilham o mesmo conjunto de endereços IP virtuais. Para um Ambiente do Serviço de Aplicativo (um plano do Serviço de Aplicativo no nível Isolado), o plano do Serviço de Aplicativo é a própria unidade de implantação, portanto, os endereços IP virtuais são dedicados a ele como consequência.

Como você não tem permissão para mover um plano do Serviço de Aplicativo entre unidades de implantação, os endereços IP virtuais atribuídos ao seu aplicativo geralmente permanecem os mesmos, mas há exceções.

Nota

A camada Premium V4 não fornece um conjunto estável de endereços IP de saída. Este comportamento é intencional. Embora os aplicativos executados na camada Premium V4 possam fazer chamadas de saída para pontos de extremidade voltados para a Internet, a plataforma do Serviço de Aplicativo não fornece um conjunto estável de endereços IP de saída para a camada Premium V4. Esta é uma alteração no comportamento dos níveis de preços anteriores do Serviço de Aplicativo. O portal mostrará "Dinâmico" para endereços IP de saída e informações adicionais sobre esses endereços para aplicações que utilizam a versão Premium V4. As chamadas ARM e CLI retornarão cadeias de caracteres vazias para os valores de outboundIpAddresses e possibleOutboundIpAddresses. Se os aplicativos executados no Premium V4 exigirem um endereço IP de saída estável, os desenvolvedores precisarão usar uma solução como o Gateway NAT do Azure para obter um endereço IP previsível para o tráfego de saída voltado para a Internet.

Quando o IP de entrada muda

Independentemente do número de instâncias dimensionadas, cada aplicação tem um único endereço IP de entrada. O endereço IP de entrada pode ser alterado quando você executa uma das seguintes ações:

  • Elimina uma aplicação e a recria noutro grupo de recursos (a unidade de implementação pode mudar).
  • Exclua o último aplicativo em uma combinação de grupo de recursos e região e recrie-o (a unidade de implantação pode mudar).
  • Exclua uma associação TLS baseada em IP existente, como durante a renovação do certificado (consulte Renovar certificado).

Localizar o IP de entrada

Basta executar o seguinte comando em um terminal local:

nslookup <app-name>.azurewebsites.net

Obter um IP de entrada estático

Às vezes, você pode querer um endereço IP estático dedicado para seu aplicativo. Para obter um endereço IP de entrada estático, você precisa proteger um nome DNS personalizado com uma associação de certificado baseada em IP. Se você realmente não precisar da funcionalidade TLS para proteger seu aplicativo, poderá até carregar um certificado autoassinado para essa vinculação. Em uma associação TLS baseada em IP, o certificado é vinculado ao próprio endereço IP, portanto, o Serviço de Aplicativo cria um endereço IP estático para que isso aconteça.

Quando os IPs de saída mudam

Independentemente do número de instâncias dimensionadas horizontalmente, cada aplicação tem um número definido de endereços IP de saída em qualquer momento. Qualquer ligação de saída da aplicação do App Service, como para um banco de dados backend, utiliza um dos endereços IP de saída como endereço IP de origem. O endereço IP a utilizar é selecionado aleatoriamente no runtime, pelo que o serviço de back-end tem de abrir a firewall a todos os endereços IP de saída à sua aplicação.

O conjunto de endereços IP de saída para seu aplicativo muda quando você executa uma das seguintes ações:

  • Elimina uma aplicação e a recria noutro grupo de recursos (a unidade de implementação pode mudar).
  • Exclua o último aplicativo em uma combinação de grupo de recursos e região e recrie-o (a unidade de implantação pode mudar).
  • Dimensione seu aplicativo entre as camadas inferiores (Basic, Standard e Premium), a camada PremiumV2, a camada PremiumV3 e as opções Pmv3 dentro da camada PremiumV3 (endereços IP podem ser adicionados ou subtraídos do conjunto).

Você pode encontrar o conjunto de todos os endereços IP de saída possíveis que seu aplicativo pode usar, independentemente das camadas de preço, procurando a possibleOutboundIpAddresses propriedade ou no campo Endereços IP de Saída Adicionais na página Propriedades do portal do Azure. Consulte Encontrar IPs de saída.

O conjunto de todos os endereços IP de saída possíveis pode aumentar com o tempo se o Serviço de Aplicativo adicionar novas camadas de preços ou opções às implantações existentes do Serviço de Aplicativo. Por exemplo, se o Serviço de Aplicativo adicionar a camada PremiumV3 a uma implantação existente do Serviço de Aplicativo, o conjunto de todos os endereços IP de saída possíveis aumentará. Da mesma forma, se o Serviço de Aplicativo adicionar novas opções Pmv3 a uma implantação que já ofereça suporte à camada PremiumV3 , o conjunto de todos os endereços IP de saída possíveis aumentará. Adicionar endereços IP a uma implantação não tem efeito imediato, pois os endereços IP de saída para aplicativos em execução não são alterados quando uma nova camada ou opção de preço é adicionada a uma implantação do Serviço de Aplicativo. No entanto, se os aplicativos mudarem para uma nova camada de preço ou opção que não estava disponível anteriormente, novos endereços de saída serão usados e os clientes precisarão atualizar as regras de firewall downstream e as restrições de endereço IP.

Descobrir IPs de saída

Para encontrar os endereços IP de saída atualmente usados pelo seu aplicativo no portal do Azure, selecione Propriedades na navegação à esquerda do seu aplicativo. Eles estão listados no campo Endereços IP de saída .

Você pode encontrar as mesmas informações executando o seguinte comando no Cloud Shell.

az webapp show --resource-group <group_name> --name <app_name> --query outboundIpAddresses --output tsv
(Get-AzWebApp -ResourceGroup <group_name> -name <app_name>).OutboundIpAddresses

Para encontrar todos os endereços IP de saída possíveis para a sua aplicação, independentemente dos níveis de preços, selecione Propriedades na navegação à esquerda da sua aplicação. Eles estão listados no campo Endereços IP de Saída Adicionais .

Você pode encontrar as mesmas informações executando o seguinte comando no Cloud Shell.

az webapp show --resource-group <group_name> --name <app_name> --query possibleOutboundIpAddresses --output tsv
(Get-AzWebApp -ResourceGroup <group_name> -name <app_name>).PossibleOutboundIpAddresses

Para aplicações de função, consulte Endereços IP de saída do aplicativo de função.

Obter um IP de saída estático

Você pode controlar o endereço IP do tráfego de saída do seu aplicativo usando a integração de rede virtual junto com um gateway NAT de rede virtual para direcionar o tráfego por meio de um endereço IP público estático. A integração de rede virtual está disponível nos planos Basic, Standard, Premium, PremiumV2 e PremiumV3 App Service. Para saber mais sobre esta configuração, consulte Integração do gateway NAT.

Propriedades do endereço IP no portal do Azure

Os Endereços IP aparecem em vários locais no portal do Azure. A página de propriedades mostrará a saída bruta de inboundIpAddress, possibleInboundIpAddresses, outboundIpAddressese possibleOutboundIpAddresses. A página de visão geral também mostrará os mesmos valores, mas não incluirá os Possíveis Endereços IP de Entrada.

Visão geral da rede mostra a combinação de Endereço IP de Entrada e quaisquer endereços IP de ponto de extremidade privados no campo Endereços de entrada . Se o acesso à rede pública estiver desativado, o endereço IP público não será mostrado. O campo Endereços de saída tem uma lista combinada de (Possíveis) Endereços IP de Saída e, se o aplicativo estiver integrado à rede virtual e estiver roteando todo o tráfego, e a sub-rede tiver um gateway NAT anexado, o campo também incluirá os endereços IP do gateway NAT.

Captura de tela que mostra como os endereços IP são mostrados na página de visão geral da rede.

Etiqueta de serviço

Usando a tag de serviço AppService, pode definir o acesso à rede para o serviço Azure App Service sem especificar endereços IP individuais. A etiqueta de serviço é um grupo de prefixos de endereço IP que você usa para minimizar a complexidade da criação de regras de segurança. Quando você usa marcas de serviço, o Azure atualiza automaticamente os endereços IP à medida que eles mudam para o serviço. No entanto, a etiqueta de serviço não é um mecanismo de controle de segurança. A etiqueta de serviço é apenas uma lista de endereços IP.

A AppService etiqueta de serviço inclui apenas os endereços IP de entrada de aplicativos multilocatário. Os endereços IP de entrada de aplicativos implantados em ambientes isolados (Ambiente do Serviço de Aplicativo) e aplicativos que usam associações TLS baseadas em IP não estão incluídos. Além disso, todos os endereços IP de saída usados tanto em ambientes de multilocatário quanto em isolados não estão incluídos na tag.

A tag pode ser usada para permitir o tráfego de saída em um grupo de segurança de rede (NSG) para aplicativos. Se o aplicativo estiver usando TLS baseado em IP ou se o aplicativo for implantado no modo isolado, você deverá usar o endereço IP dedicado. Como a tag inclui apenas endereços IP de entrada, ela não pode ser usada em restrições de acesso para limitar o acesso a um aplicativo de outros aplicativos no Serviço de Aplicativo.

Nota

A etiqueta de serviço ajuda-o a definir o acesso à rede, mas não deve ser considerada como um substituto para as medidas de segurança de rede adequadas, uma vez que não fornece controlo granular sobre endereços IP individuais.

Próximos passos