É possível configurar políticas de roteamento de DNS para conjuntos de registros de recursos em zonas privadas ou públicas para direcionar o tráfego com base em critérios específicos. Crie conjuntos de registros de recursos com valores específicos de política de roteamento para configurar essas políticas. Esses valores determinam como o Cloud DNS encaminha o tráfego de consulta.
O Cloud DNS oferece suporte às seguintes políticas de roteamento:
Política de roteamento de round-robin ponderado (WRR): use uma política de roteamento WRR para atribuir ponderações diferentes a cada conjunto de registros de recursos de um nome de DNS. Uma política de roteamento de round-robin ponderado ajuda a garantir que o tráfego seja distribuído de acordo com os pesos configurados. Não é possível combinar políticas de roteamento de WRR e de geolocalização.
Política de roteamento de geolocalização: use a política de roteamento de geolocalização para especificar geolocalizações de origem e fornecer respostas correspondentes a essas regiões geográficas. A política de roteamento de geolocalização aplica uma correspondência mais próxima para o local de origem quando nenhum item da política corresponde exatamente à origem do tráfego.
- Política de roteamento de geolocalização com uma fronteira geográfica virtual: use a política de roteamento de geolocalização com uma fronteira geográfica virtual para restringir o tráfego a uma geolocalização específica, mesmo que todos os endpoints dessa geolocalização não estejam íntegros.
- Política de roteamento de failover: use a política de roteamento de failover para definir configurações de backup ativas.
As políticas de roteamento de DNS não podem ser configuradas para as seguintes zonas particulares:
- Zonas de encaminhamento
- Zonas de peering de DNS
- Zonas de pesquisa reversa gerenciadas
- Zonas do Diretório de serviços
Políticas de roteamento de WRR
Uma política de roteamento de round-robin ponderado (WRR) permite especificar ponderações diferentes por
meta de DNS, e o Cloud DNS garante que o tráfego seja distribuído
de acordo com as ponderações. Use essa política para oferecer suporte a configurações
manuais
active-active
ou active-passive
. Também é possível
dividir o tráfego entre as versões de produção e experimental do serviço.
O Cloud DNS oferece suporte a verificações de integridade e failovers nas políticas de roteamento para balanceadores de carga internos e endpoints externos. O Cloud DNS ativa o failover automático quando os endpoints falham nas verificações de integridade. Durante um failover, o Cloud DNS ajusta automaticamente a divisão de tráfego entre os endpoints íntegros restantes. Para mais informações, consulte Verificações de integridade.
Políticas de roteamento de geolocalização
Uma política de roteamento de geolocalização permite mapear o tráfego proveniente de geografias de origem (regiões do Google Cloud) para destinos de DNS específicos. Use essa política para distribuir solicitações recebidas para diferentes instâncias de serviço com base na origem do tráfego. É possível usar esse recurso com tráfego de fora do Google Cloud ou com tráfego originado no Google Cloud e vinculado a balanceadores de carga de rede de passagem internos. O Cloud DNS usa a região em que as consultas entram no Google Cloud como a região geográfica de origem.
Uma política de roteamento de geolocalização mapeia a origem de maneira diferente para DNS público e privado da seguinte maneira:
- Para DNS público, é usado o endereço IP de origem ou a sub-rede do cliente do mecanismo de extensão para DNS (EDNS) da consulta.
- Para DNS particular, a sub-rede do cliente EDNS não é usada. Em vez disso, o local
da consulta é o local do sistema que envia os pacotes para
a consulta:
- Para consultas de uma instância de máquina virtual (VM) do Compute Engine com uma interface de rede em uma rede VPC, o local da consulta é a região que contém a instância da VM.
- Para consultas recebidas por um ponto de entrada da política do servidor de entrada, o local da consulta é a região do túnel do Cloud VPN, do anexo da VLAN do Cloud Interconnect ou do dispositivo roteador que recebeu os pacotes da consulta. A região do endereço IP do ponto de entrada não é relevante. Para mais informações, consulte Rede e região para consultas recebidas.
O Cloud DNS oferece suporte a verificações de integridade e failovers nas políticas de roteamento para balanceadores de carga internos e endpoints externos. O Cloud DNS ativa o failover automático quando os endpoints falham nas verificações de integridade. Quando você usa políticas de roteamento de geolocalização, o tráfego falha para a próxima geolocalização mais próxima ao tráfego de origem.
Política de roteamento de geolocalização com fronteira geográfica virtual
Uma fronteira geográfica virtual ajuda a garantir que o tráfego seja direcionado a uma região específica, mesmo que todos os endpoints dessa região falhem nas verificações de integridade.
Quando a fronteira geográfica virtual está desativada e ocorre uma falha na verificação de integridade em uma geolocalização específica, o tráfego falha automaticamente para a próxima geolocalização mais próxima. No entanto, quando a fronteira geográfica virtual está ativada, esse failover automático não ocorre. Como servidor autoritativo, o Cloud DNS precisa retornar um valor. Neste cenário, o Cloud DNS retorna todos os endereços IP inalterados quando os endpoints falham nas verificações de integridade.
Políticas de roteamento de failover
A política de roteamento de failover permite configurar configurações de backup ativo para oferecer alta disponibilidade aos recursos internos na rede VPC.
Em operação normal, o Cloud DNS sempre retorna os endereços IP do conjunto active
. Quando todos os endereços IP no conjunto active
se tornam inativos, o Cloud DNS serve os endereços IP do conjunto backup
. Se você configurar o conjunto backup
como uma política de roteamento de geolocalização, ela
vai funcionar conforme descrito na seção Políticas de roteamento de geolocalização. Se você configurar o conjunto backup
para um balanceador de carga interno,
o Cloud DNS vai verificar a integridade de todos os endereços IP virtuais (VIP) de backup.
O Cloud DNS permite enviar tráfego gradualmente para os endereços VIP de backup para verificar se eles estão funcionando. É possível configurar a porcentagem do tráfego enviado ao backup como uma fração de 0 a 1. É possível acionar manualmente um failover enviando 100% do tráfego para os endereços VIP de backup. O valor típico é 0,1. As verificações de integridade só podem ser aplicadas a balanceadores de carga internos e endpoints externos.
Verificações de integridade
O Cloud DNS oferece suporte a verificações de integridade e failovers nas políticas de roteamento para os seguintes balanceadores de carga internos e endpoints externos:
- Balanceadores de carga de aplicativo interno (regionais e entre regiões)
- Balanceadores de carga de rede de passagem interna
- Balanceadores de carga de rede de proxy interno (pré-lançamento)
- Endpoints externos
Quando você quer usar a verificação de integridade com uma zona gerenciada e as Extensões de segurança do DNS (DNSSEC) estão ativadas, apenas um único endereço IP pode ser usado em cada item de política (um WRR ou geolocalização). Não é possível misturar endereços IP com e sem verificação de integridade em uma política específica.
Para informações sobre as práticas recomendadas ao configurar o registro do Cloud DNS e as verificações de integridade, consulte Práticas recomendadas.
Verificações de integridade para balanceadores de carga internos
As verificações de integridade para balanceadores de carga internos estão disponíveis apenas em zonas privadas.
Para balanceadores de carga de aplicativo internos e balanceadores de carga de rede de proxy internos, o Cloud DNS considera a integridade do próprio balanceador de carga durante a decisão de roteamento. Quando um balanceador de carga recebe uma consulta, ele distribui o tráfego apenas para os serviços de back-end íntegros. Para garantir que haja back-ends íntegros, é possível gerenciar o ciclo de vida deles usando serviços como grupos de instâncias gerenciadas (MIGs, na sigla em inglês). O Cloud DNS não precisa estar ciente do status de integridade de back-ends individuais. O balanceador de carga realiza essa tarefa.
Para balanceadores de carga de rede de passagem internos, o Cloud DNS verifica as informações de integridade nas instâncias de back-end individuais do balanceador. O Cloud DNS aplica um limite padrão de 20%. Se pelo menos 20% das instâncias de back-end estiverem íntegras, o endpoint do balanceador de carga será considerado íntegro. As políticas de roteamento de DNS marcam o endpoint como íntegro ou não íntegro com base nesse limite e roteiam o tráfego de acordo.
Um único endereço IP virtual (VIP) de balanceador de carga de rede de passagem interna pode ter várias instâncias de back-end. Se um balanceador de carga de rede de passagem interno não tiver nenhuma instância de back-end, o Cloud DNS ainda vai considerá-lo íntegro. Para que a verificação de integridade funcione corretamente, especifique pelo menos uma instância de back-end na configuração do balanceador de carga.
Quando o endpoint é marcado como não íntegro, podem ocorrer as seguintes condições:
- Se houver vários endereços VIP programados com uma política, somente endereços VIP íntegros serão retornados.
Se todos os endereços VIP programados em um bucket de políticas não estiverem íntegros, essa linha de política falhará. O comportamento a seguir se aplica:
- Para uma política de WRR, o Cloud DNS distribui o tráfego proporcionalmente entre os endpoints íntegros restantes definidos na política.
- Para uma política de geolocalização que não tem o isolamento ativado, o tráfego é alternado para endpoints na próxima região geográfica mais próxima da região de origem do Google Cloud definida na política.
- Para uma política de geolocalização com o isolamento ativado, o Cloud DNS distribui o tráfego para o endereço VIP mais próximo da região de origem do Google Cloud definida na política.
- Para uma política de failover, o Cloud DNS alterna o tráfego para os endpoints de backup definidos na política.
- Se todos os buckets de política não estiverem íntegros, o Cloud DNS vai se comportar como se todos os endpoints estivessem íntegros. Esse cenário pode levar a um tráfego distribuído para endpoints que não respondem.
Para mais informações sobre as verificações de integridade de balanceadores de carga internos, consulte Visão geral das verificações de integridade.
Verificações de integridade para endpoints externos (pré-lançamento)
As verificações de integridade para endpoints externos estão disponíveis apenas em zonas públicas. Os endpoints que você quer verificar precisam ser acessíveis pela Internet pública. O endpoint especificado pode ser qualquer endereço IP e porta externos, incluindo um VIP do balanceador de carga de aplicativo externo global, um VIP do balanceador de carga de aplicativo externo regional, um VIP do balanceador de carga de rede de proxy externo global, endpoints no local ou qualquer outro endpoint acessível pela Internet pública.
Use as verificações de integridade para endpoints externos nos seguintes cenários:
- Para redirecionar o tráfego para um balanceador de carga de aplicativo externo regional se um back-end de balanceador de carga de aplicativo externo global ou um back-end de balanceador de carga de rede de proxy externo global ficar indisponível.
- Para redirecionar o tráfego para outro balanceador de carga de aplicativo externo regional se o back-end de um balanceador de carga de aplicativo externo regional específico ficar indisponível.
- Para monitorar a integridade de endpoints locais ou outros endpoints acessíveis na Internet pública.
Quando você cria uma política de roteamento de DNS com verificações de integridade para endpoints externos, o Cloud DNS envia sondagens de verificação de integridade para os endpoints. Essas sondagens de verificação de integridade são originadas de três regiões de origem do Google Cloud que você especifica. Os verificadores de integridade de cada região são executados de forma independente, e o Cloud DNS agrega os resultados para determinar a integridade geral do endpoint. Em cada região, três instâncias de sonda de verificação de integridade sondam cada endpoint. Se uma sonda falhar, o Cloud DNS ainda poderá determinar a integridade do endpoint usando as sondas restantes. Isso significa que você tem nove sondas no total para cada endpoint, e cada sondagem ocorre na frequência especificada no intervalo de verificação da verificação de integridade. Com base nos parâmetros da política de roteamento e nas informações de integridade, o Cloud DNS seleciona um endpoint e encaminha o tráfego para ele.
O Cloud DNS oferece suporte aos protocolos TCP, HTTP e HTTPS com as seguintes ressalvas:
- O campo de solicitação de TCP não é aceito.
- O campo
proxyHeader
para HTTP, HTTPS e TCP não é compatível.
Os protocolos SSL, HTTP/2 e gRPC não são aceitos.
Para o protocolo TCP, o Cloud DNS tenta se conectar ao endpoint.
Para os protocolos HTTP e HTTPS, o Cloud DNS verifica se o endpoint
retorna um código de resposta HTTP 200
. Também é possível configurar a verificação de integridade
com base em conteúdo, em que o Cloud DNS verifica se a resposta contém uma string
específica.
Ao contrário da verificação de integridade para balanceadores de carga internos, as verificações de integridade do Cloud DNS para endpoints externos não são originadas de intervalos de endereços IP fixos. Os intervalos de endereços IP de origem da sondagem estão sujeitos a alterações ao longo do tempo.
O protocolo e a porta que você especifica ao criar a verificação de integridade determinam
como as sondagens de verificação de integridade são feitas. Se você não especificar uma porta, o Cloud DNS
usará a porta 80
. Para garantir que as verificações de integridade funcionem corretamente,
configure as regras de firewall para permitir sondagens de verificação de integridade de qualquer endereço IP de origem e na porta específica configurada na verificação de integridade.
Se você não tiver configurado o firewall para permitir sondagens de verificação de integridade, elas vão falhar, e o Cloud DNS vai considerar os endpoints bloqueados como não íntegros. Se todos os endpoints forem retornados como não íntegros, o Cloud DNS ainda vai fornecer todos deles como resultado, mesmo que não estejam íntegros.
Intervalo da verificação de integridade
O Cloud DNS envia periodicamente sondagens de verificação de integridade de acordo com o intervalo de verificação de integridade. Por exemplo, se o intervalo de verificação de integridade for de 30 segundos, o Cloud DNS vai enviar uma sondagem de verificação de integridade a cada 30 segundos.
Para a verificação de integridade de endpoint externo do Cloud DNS, o intervalo de verificação precisa ser de 30 a 300 segundos.
Políticas de roteamento de round-robin ponderado e verificações de integridade
O Cloud DNS oferece suporte a pesos de 0 a 1.000, incluindo ambos. Quando as verificações de integridade são incluídas, ocorre o seguinte:
- Se você configurar vários destinos, todos com peso 0, o tráfego será distribuído igualmente entre os destinos.
- Se você configurar um novo objetivo ponderado diferente de zero, ele se tornará o destino principal, e todo o tráfego mudará para ele.
- À medida que você adiciona mais destinos com pesos diferentes de zero, o Cloud DNS calcula dinamicamente a divisão do tráfego entre os destinos (com cada solicitação) e distribui o tráfego adequadamente. Por exemplo, se você tiver configurado três destinos com ponderações de 0, 25 e 75, a meta com a ponderação 0 não receberá tráfego, a meta com uma ponderação de 25 receberá um quarto do tráfego e a meta restante recebe três quartos do tráfego de entrada.
- Se as verificações de integridade estiverem associadas a destinos ponderados diferentes de zero, mas não a destinos ponderados zero, os destinos ponderados zero serão sempre considerados íntegros. Se todos os registros diferentes de zero forem íntegros, o Cloud DNS retornará os registros ponderados zero.
- Se as verificações de integridade estiverem associadas a registros ponderados que não sejam zero e zero e se todos os registros falharem nas verificações de integridade, o Cloud DNS vai retornar todos os destinos ponderados diferentes de zero e ignorar os destinos ponderados zero.
- Quando o Cloud DNS escolhe um bucket de peso para retornar ao solicitante (um único item de política), apenas o endereço IP desse bucket é retornado. Se você especificar apenas um endereço IP no bucket de peso, apenas esse endereço estará na resposta. Se houver mais de um endereço IP no bucket de peso, o Cloud DNS retornará todos os endereços IP em ordem aleatória.
Políticas de roteamento de geolocalização e verificações de integridade
Para políticas de roteamento de geolocalização com verificações de integridade ativadas, o seguinte ocorre:
- Quando uma política tem vários endereços IP configurados e todos os endereços IP têm verificação de integridade, somente os endereços IP íntegros são retornados.
- Quando há uma combinação de endereços IP com e sem verificação de integridade, e todos os endereços IP verificados de integridade falham, o Cloud DNS retorna todos os endereços IP que não têm a verificação de integridade configurada. Nesse cenário, o failover automático para a próxima região geográfica mais próxima não ocorre.
Geração de registros de verificação de integridade
O Cloud DNS oferece suporte à geração de registros de verificação de integridade e registra o status de integridade dos seus endereços IP ativados para verificação de integridade quando você consulta o nome DNS que se refere a esses endereços IP.
Com a geração de registros de verificação de integridade, você pode:
- Confirme se as políticas de roteamento estão funcionando conforme o esperado. Por
exemplo:
- Para políticas de geolocalização, ele permite validar se as políticas detectam a região geográfica correta e retornam o conjunto de dados de registro de recurso correto.
- Para políticas de WRR, ele permite que você valide se as políticas estão retornando os endereços IP na ponderação correta.
- Identifique problemas de infraestrutura com back-ends e endereços IP específicos que tenham falhas.
- Solucione problemas em que back-ends específicos nunca estão incluídos ou são os únicos que estão sendo retornados.
Para mais informações, consulte Informações de registro de verificação de integridade.
Tipos de registro compatíveis com políticas de roteamento de DNS
As políticas de roteamento de DNS não são compatíveis com todos os tipos de registro com suporte do Cloud DNS.
Os seguintes tipos de registro são aceitos:
Tipo de registro | Descrição |
---|---|
A | Endereços IPv4 para verificações de integridade internas (zona particular) e externas (zona pública) . |
AAAA | Endereços IPv6 para verificações de integridade externas (zona pública). |
CNAME | Nomes canônicos. Não há suporte para verificações de integridade. |
MX | Registros de troca de e-mail. Não há suporte para verificações de integridade. |
SRV | Host/porta (RFC 2782). Não há suporte para verificações de integridade. |
TXT | Dados de texto. Não há suporte para verificações de integridade. |