Intelligent DNS
O Azion Intelligent DNS é um serviço para hospedagem de domínios que compõe a solução de roteamento de tráfego da Azion. Com ele, seus domínios ficarão hospedados na infraestrutura da Azion, utilizando as mesmas soluções de performance e segurança construídas para os demais produtos Azion, combinando técnicas para otimização das requisições com proteção contra ataques Distributed Denial of Service (DDoS). Intelligent DNS é uma solução de DNS autoritativo e permite que clientes gerenciem seus domínios, zonas e registros através de uma interface amigável e intuitiva.
Implementação
Seção intitulada ImplementaçãoEscopo | Fonte |
---|---|
Intelligent DNS | Como procurar servidores DNS com o comando dig |
Intelligent DNS | Como diagnosticar problemas de desempenho e entrega com o comando traceroute |
Domain Name System (DNS)
Seção intitulada Domain Name System (DNS)Domain Name System (DNS) é um sistema de resolução de nomes de domínios. Ele consegue resolver o nome em um endereço IP para que possa ser estabelecida uma conexão com o destino que fornecerá o conteúdo do site solicitado.
Em outras palavras, o DNS resolve o endereço de IP do domínio que você deseja acessar em palavras para formar a URL que você conhece.
É o DNS que permite que você digite o nome de um domínio ao invés da sequência de números do endereço de IP.
Registros do Intelligent DNS
Seção intitulada Registros do Intelligent DNSZone Name
Seção intitulada Zone NameNome do registro. Identificador para o registro recém criado.
Essa descrição é o domínio que se deseja criar. Como, por exemplo, manager
em manager.azion.com.
Tipo do registro. É o tipo de registro que está sendo adicionado, como, por exemplo, um registro do tipo A, AAAA, MX ou CNAME, dentre outros.
Você pode criar entradas do tipo ANAME, possibilitando a hospedagem e uso de naked domains com outros produtos Azion.
Veja as opções de type e suas respectivas descrições na tabela a seguir:
Type | Descrição |
---|---|
A (IPv4 Address) | Registros de mapeamentos de endereços (A Records), também conhecidos como registros de host DNS, armazenam um nome de host e seu endereço IPv4 correspondente. |
AAAA (IPv6 Address) | Registro de endereço IP Versão 6 (Registro AAAA), armazena um nome de host e seu endereço IPv6 correspondente. |
ANAME (Maps a name to another name) | O registro ALIAS é um tipo de registro virtual criado para fornecer comportamento semelhante ao CNAME em domínios apex. |
CAA (Certification Authority Authorization) | Um registro CAA permite que um detentor de nome de domínio DNS especifique uma ou mais Autoridades de Certificação (CAs) autorizadas a emitir certificados para esse domínio ou subdomínio. |
CNAME (Canonical Name Record) | Pode ser usado para designar o nome de uma hostname a outro hostname. Quando um cliente DNS solicita um registro que contém um CNAME, que aponta para outro hostname, o processo de resolução DNS é repetido com o novo hostname. |
MX (Mail Exchange) | Mail exchanger record (Registro MX), especifica um servidor de email SMTP para o domínio, usado para rotear emails enviados para um servidor de email. |
NS (Name Servers) | Os registros NS identificam os servidores DNS responsáveis (autorizados) por uma zona. Uma zona deve conter um registro NS para cada um de seus próprios servidores DNS (primário e secundário). |
PTR (Reverse DNS lookup) | Os registros PTR são usados para a pesquisa DNS reversa. Usando o endereço IP, você pode obter o domínio/nome do host associado. Deve existir um registro A para cada registro PTR. O uso de uma configuração DNS reversa para um servidor de email é uma boa solução. |
SRV (Location of server or service) | Um registro de serviço (SRV record) é uma especificação de dados no DNS que define a localização. Por exemplo, o nome do host e o número da porta dos servidores para serviços especificados. Ele é definido na RFC 2782 e seu código de tipo é 33. |
TXT (Text) | Um registro TXT é um tipo de registro de recurso no DNS usado para fornecer a capacidade de associar texto arbitrário com um host ou outro nome, como informações legíveis por humanos sobre um servidor, rede, centro de dados ou outras informações contábeis. |
É a resposta de DNS para o registro cadastrado, como por exemplo um endereço IPv4.
TTL (seconds)
Seção intitulada TTL (seconds)Este é o momento em que uma resposta pode ser armazenada em cache em um resolver server. Time-to-live (TTL) é um valor em um pacote de protocolo de internet (IP) que informa a um roteador de rede se o pacote está na rede há muito tempo e deve ser descartado.
Policy
Seção intitulada PolicyEle permite que você especifique qual política o Intelligent DNS deve considerar ao resolver solicitações respondidas por esta entrada de registro.
Você pode selecionar a Simple Policy, para usar a funcionalidade DNS padrão, ou a Weighted Policy, para especificar a quantidade de tráfego a ser enviada para cada Record.
Ao escolher a Weighted Policy, haverá mais dois campos a serem preenchidos, que são:
Weight: você pode escolher um número entre 0 e 255 para especificar o peso para cada registro. Quando você escolhe 0, o Intelligent DNS deixa de usar este registro.
Description: usados para diferenciar registros com o mesmo Nome e Tipo.
Clique no botão Save para finalizar a criação de seu registro.
A partir desse momento, essas informações serão sincronizadas com o serviço de atendimento do Intelligent DNS. Suas configurações são salvas e distribuídas para a rede da Azion praticamente em tempo real.
Pronto! Seu domínio já está configurado e preparado para ser atendido pelo Intelligent DNS da Azion. Para verificar se tudo deu certo, execute alguns dos testes descritos na seção: Testar minha zona.
Record Policies
Seção intitulada Record PoliciesEnquanto você está adicionando ou modificando um registro no Intelligent DNS, você pode encontrar o campo “Policy”. Esse campo é ativado exatamente quando você está configurando registros do tipo A, AAAA, CNAME, ANAME ou MX. Ele permite que você escolha entre duas políticas para especificar como o Intelligent DNS deve lidar com as solicitações que respondem por este registro.
Simple Policy
Seção intitulada Simple PolicyAo selecionar uma política simples (Simple Policy), o Intelligent DNS usa o comportamento padrão dos registros DNS, roteando todo o tráfego para os endereços especificados no campo Value.
Weighted Policy
Seção intitulada Weighted PolicyAo selecionar a política ponderada (Weighted Policy), o Intelligent DNS permite criar vários registros com o mesmo Name
e Type
, permitindo especificar um Weight
, que define quanto tráfego deve ser roteado para cada registro. Esta configuração permite que você realize balanceamento de carga de suas aplicações ou mesmo teste gradualmente novas configurações.
Ao selecionar a Weighted Policy, diferentes opções de campos são exibidas:
Campo | Descrição |
---|---|
Weight *obrigatório | Você precisa especificar um valor de peso (Weight), entre 0 e 255. Valores mais altos aumentam as chances de um registro específico ser usado. Definir 0 desativa o registro. |
Description *opcional | Você pode adicionar uma descrição de até 45 caracteres para distinguir entre registros com o mesmo Name e Type. Exemplo: Florida Load Balancer |
Dado um conjunto de Registros Ponderados (Weighted Records) com o mesmo Name e Type, as chances de um registro específico ser escolhido pelo Intelligent DNS é definido pela seguinte fórmula:
Weight of the record / Sum of all Weights
Tipos de entradas suportadas e as respectivas recomendações do Intelligent DNS
Seção intitulada Tipos de entradas suportadas e as respectivas recomendações do Intelligent DNSPara prover a criação de registros, o Intelligent DNS implementa os seguintes tipos de entradas DNS:
Type | Referência |
---|---|
A | RFC1035 |
AAAA | RFC3596 |
ANAME | draft-ietf-dnsop-aname-04 |
CAA | RFC8659 |
CNAME | RFC1035 |
MX | RFC1035 e RFC7505 |
NS | RFC2782 |
PTR | RFC1035 |
SRV | RFC2782 |
TXT | RFC1035 e RFC1464 |
Cada tipo de entrada precisa ter suas regras de preenchimento respeitadas:
Type | Regra de restrição | Exemplo |
---|---|---|
A | Deve seguir o formato IPv4 Máximo de 10 endereços IP (um por linha) Somente endereços IPv4 válidos serão aceitos como resposta | Nome da Zona: azion.com Nome do Registro: @ (Ou em branco) Valor da resposta: 192.209.210.67 198.199.105.93 |
AAAA | Deve seguir o formato IPv6 Máximo de 10 endereços IP (um por linha) Somente endereços IPv6 válidos serão aceitos como resposta | Nome da Zona: azion.com Nome do Registro: www Valor da resposta: 2800:3f0:4001:815::2004 |
ANAME | Deve ser no formato FQDN Apenas um domínio para cada registro do tipo ANAME Somente domínios abaixo de ‘azioncdn.net’, ‘azionedge.net’ e ‘azionedge.com’ são aceitos como valor. Pode coexistir com registros de mesmo nome mas de tipos diferentes (MX, TXT etc.) | Nome da Zona: azion.com Nome do Registro: @ Valor da resposta: 32082s.ha.azioncdn.net |
CAA | Deve seguir o formato [FLAG] [TAG] “[VALUE]” no valor da resposta. Exemplo: 0 issue “ca.example.net” Não será possível cadastrar um record do tipo CAA, quando a zona já possuir um record do tipo CNAME. Obs.: a ferramenta SSLmate pode auxiliar na criação e consulta | Flag: Se a flag está com valor 0 (zero), todos os bit flags estão desligados. Se a flag está com valor 1, o bit 0 (Issuer Critical Flag) está ligado, ou seja, uma CA não deve emitir certificados para nenhum FQDN, se o record relevante para esse FQDN contiver um CAA. Tag: As tags devem ser minúsculas e devem seguir a nomenclatura contida na RFC. Exemplo: issue, issuewild, iodef. Issue: indica que a CA do ACM especificado no campo value pode emitir um certificado para o seu domínio ou subdomínio. Issuewild: indica que a CA do ACM especificado no campo value pode emitir um certificado curinga para o seu domínio ou subdomínio. iodef: indica que a CA ao receber uma solicitação inválida para um certificado, enviará uma notificação para o proprietário do domínio. Utilizar url (http/https) ou mailto, por exemplo: “mailto@domain.com”, ”https://url” e ”http://url“. Value: O value deve estar sempre entre aspas duplas, exemplo “ca.example.com” e o seu conteúdo varia de acordo com a tag utilizada. Issue: url ou uma sequência, por exemplo: “ca.example.net; account=123456” ou “ca.example.com” Issuewild: deve ser utilizado um domínio com wildcard, por exemplo: “*.example.com” iodef: uma url callback ou um endereço de e-mail, por exemplo: “mailto@domain”, ”https://example.com/callback” e ”http://example.com/callback“. |
CNAME | Deve respeitar o formato FQDN Apontar somente para outro nome de domínio, nunca para um endereço IP Não pode ser colocado no nível do domínio raiz. Permitido apenas um domínio para cada registro do tipo CNAME Um nome de host definido em um registro CNAME não deve ter outros registros de recursos de outros tipos (MX, A, etc.) Os registros CNAME podem apontar para outros registros CNAME, mas isso não é considerado uma boa prática, pois é ineficiente Caso um registro CNAME estiver apontando para um registro da mesma zona, o Intelligent DNS responderá todos eles em apenas um consulta | |
MX | Deve seguir o formato [PRIORITY] [ADDRESS] Máximo de 10 endereços IP (um por linha) | Nome da Zona: azion.com Nome do Registro: mail Valor(es) da resposta: 10 mailserver.example.com 20 mailserver2.example.com |
NS | Deve respeitar o formato FQDN ou endereço de ip Máximo de 10 endereços (um por linha) Um NS não pode ser configurado para o domínio principal da zona (naked domain) Deve apontar para os servidores que detém autoridade sobre aquele registro | Nome da Zona: azion.com Nome do Registro: ns Valores de resposta: ns1.aziondns.net ns2.aziondns.net |
PTR | Zonas reversas vinculadas a endereços IPv6 seguem outras regras. Veja aqui mais informações. | 1- Crie uma nova zona, colocando a seguinte informação como DOMAIN: 0.168.192.in-addr.arpa 2 - Após a criação dessa zona, você deve criar um registro associado a ela do tipo PTR, com a seguinte configuração: Nome do Registro: 1 Valor da resposta: www.exemplo.com |
SRV | Deve obedecer o seguinte formato no nome do registro: ‘_service._protocol.name’. Exemplo: “_ldap._tcp.azionsrv” Os valores de resposta devem seguir, obrigatoriamente, o formato [prioridade] [peso] [porta] [destino] Máximo de 10 respostas por registro (uma por linha) Deve apontar para o nome do host que possua um registro A ou AAAA. Obs: É você quem deve ter essa atenção, pois o Intelligent DNS não realiza essa validação automaticamente | Nome da Zona: azion.com Nome do Registro: _ldap._tcp.azionsrv Valores de resposta: 0 60 5060 bigbox.example.com |
TXT | Limite total de 1000 caracteres Textos separados por ENTER são considerados respostas diferentes para o Intelligent DNS | Nome da Zona: azion.com Nome do Registro: txt Valores de resposta: This domain name is reserved for use in documentation “printer=lpr5” “favorite drink=orange juice” |
É possível configurar seu domínio, www.dominio.com
, para que ele seja usado como um naked domain, ou seja, apenas dominio.com
. Há duas opções para realizar essa configuração:
- Criar uma entrada A-type apontando para seu webserver. Assim, ele fará o redirecionamento para a Azion. Essa opção pode impactar o ranking Google.
- Criar uma entrada ANAME no seu DNS e apontá-la para a Azion. Se você utiliza um serviço de DNS fora da Azion ou um domínio que aponta para outra plataforma, essa opção pode não ser compatível.
Wildcards
Seção intitulada WildcardsUm registro curinga é um registro que responde a solicitações de DNS para domínios que você ainda não definiu. Você pode criá-los para qualquer tipo, inserindo um asterisco (*) no nome do registro. Por exemplo, imagine que você tenha a seguinte configuração para uma zona cujo domínio é example.com:
Name | Type | Value |
---|---|---|
www | A | 192.168.0.1 192.168.0.2 192.168.0.3 |
* | A | 1.1.1.1 |
*.wildcard | A | 2.2.2.2 |
Isso significa que:
- Se a consulta for realizada por
www.example.com
, a resposta será composta por 3 endereços IP: 192.168.0.1, 192.168.0.2 e 192.168.0. Ele não é um wildcard, mas tem prioridade na resposta porque encontrou corretamente o registro consultado. - Se a consulta for realizada por
ghost.example.com
, a resposta será efetuada de acordo com o wildcard encontrado. Ou seja, responderá: 1.1.1.1. - Se a consulta for realizada por
another.wildcard.example.com
, a resposta será efetuada de acordo com o wildcard encontrado para essa construção, ou seja, responderá: 2.2.2.2. - Se a consulta for realizada por
wrong.record.example.com
, a resposta não terá nenhum valor, pois não existe nenhuma correspondência a essa estrutura consultada.
Somente será considerado um wildcard, o asterisco mais à esquerda seguido, obrigatoriamente, por um ponto. Todos os demais asteriscos, se existirem, serão considerados como caracteres válidos.
Asteriscos localizados mais à esquerda que não estiverem sendo seguidos por um ponto não serão considerados wildcards.
Não é permitido a utilização de caracteres wildcard em registros do tipo SRV, pois ele segue uma norma de formatação em seu nome.
Testar minha zona
Seção intitulada Testar minha zonaSe você já efetuou as configurações desejadas no Intelligent DNS e agora deseja verificar se ele está respondendo adequadamente suas informações, você pode testá-lo utilizando as seguintes ferramentas:
O Domain Information Groper (DIG) é uma ferramenta de linha de comando de administração de rede para consultar o DNS. A ferramenta é útil para solucionar problemas de rede e para fins educacionais, podendo operar com base na opção da linha de comando e nos argumentos do sinalizador ou no modo em lote, lendo solicitações de um arquivo do sistema operacional. Quando um servidor de nomes específico não é informado na chamada de comando, ele usa o resolvedor padrão do sistema operacional, geralmente configurado no arquivo resolv.conf
. Sem argumentos, ele consulta a zona raiz do DNS.
É um componente do pacote de software para servidores de nomes de domínio BIND e, na prática, substitui ferramentas antigas, como ”nslookup” e o ”host”. No entanto, as ferramentas mais antigas ainda são usadas de maneira complementar.
Para você testar o Intelligent DNS, deve utilizar um dos nameservers listados na aba Main Settings de sua zona cadastrada na Azion.
Por exemplo, imagine que você tenha a seguinte configuração:
Name | Type | Value | TTL |
---|---|---|---|
www | A | 192.168.0.1 192.168.0.2 192.168.0.3 | 3600 |
Para verificar como o Intelligent DNS responderá por uma consulta ao tipo “A” cadastrado para o registro www, digite o seguinte comando:
dig A www.example.com @ns1.aziondns.net
Essa será a resposta a essa consulta:
; <<>> DiG 9.10.6 <<>> A www.example.com @ns1.aziondns.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46329 ;; flags: qr aa rd; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;www.example.com. IN A ;; ANSWER SECTION: www.example.com. 3600 IN A 192.168.0.1 www.example.com. 3600 IN A 192.168.0.2 www.example.com. 3600 IN A 192.168.0.3 ;; Query time: 22 msec ;; SERVER: 179.191.160.2#53(179.191.160.2) ;; WHEN: Thu Sep 12 13:13:14 -03 2019 ;; MSG SIZE rcvd: 137
O host realiza pesquisas de DNS, convertendo nomes de domínio em endereços IP e vice-versa. Quando nenhum argumento ou opção é fornecido, o host imprime um breve resumo dos argumentos e opções da linha de comando.
Por exemplo, imagine que você tenha a seguinte configuração:
Name | Type | Value | TTL |
---|---|---|---|
www | A | 192.168.0.1 192.168.0.2 192.168.0.3 | 3600 |
Para verificar como o Intelligent DNS responderá por uma consulta ao tipo “A” cadastrado para o registro www, digite o seguinte comando:
host www.example.com ns1.aziondns.net
Essa será a resposta a essa consulta:
Using domain server: Name: ns1.aziondns.net Address: 179.191.160.2#53 Aliases: www.example.com has address 192.168.0.1 www.example.com has address 192.168.0.2 www.example.com has address 192.168.0.3
NSLOOKUP
Seção intitulada NSLOOKUPNslookup é uma ferramenta, comum ao Windows e ao Linux, utilizada para se obter informações sobre registros de DNS de um determinado domínio, host ou IP.
Por exemplo, imagine que você tenha a seguinte configuração:
Name | Type | Value | TTL |
---|---|---|---|
www | A | 192.168.0.1 192.168.0.2 192.168.0.3 | 3600 |
Para verificar como o Intelligent DNS responderá por uma consulta ao tipo “A” cadastrado para o registro ”www”, digite o seguinte comando:
nslookup www.example.com ns1.aziondns.net
Essa será a resposta a essa consulta:
Server: ns1.aziondns.net Address: 179.191.160.2#53 Name: www.example.com Address: 192.168.0.1 Name: www.example.com Address: 192.168.0.2 Name: www.example.com Address: 192.168.0.3
Configurar o Intelligent DNS para responder pelos seus domínios
Seção intitulada Configurar o Intelligent DNS para responder pelos seus domíniosPara que o Intelligent DNS passe a responder como autoridade sobre suas zonas, você deve efetuar o apontamento no seu DNS de registro. Por exemplo: registro.br
, GoDaddy
, AWS
.
Para efetuar o apontamento no seu DNS de registro, utilize um dos nameservers listados na aba Main Settings de suas zonas cadastradas na Azion.
Importante verificar se todos os seus registros estão devidamente cadastrados e testados no Intelligent DNS antes de efetuar esse apontamento. Caso contrário, você correrá o risco de ter indisponibilidade do seu serviço.
Domain Name System Security Extensions (DNSSEC)
Seção intitulada Domain Name System Security Extensions (DNSSEC)O Domain Name System Security Extensions (DNSSEC) é um recurso do Domain Name System (DNS) que autentica respostas a pesquisas de nome de domínio. Ele não fornece proteções de privacidade para essas pesquisas, mas impede que invasores manipulem ou envenenem as respostas às solicitações de DNS.
A plataforma da Azion é compatível com DNSSEC. Saiba como hospedar uma zona de DNSSEC com a Azion.
Redirecionamento em massa para migração de domínios
Seção intitulada Redirecionamento em massa para migração de domíniosO Edge Function Massive Redirect é uma solução serverless da Azion para o processamento de muitos redirecionamentos simultâneos. Ele pode ser empregado onde houver necessidade de alterar um número significativo de endereços como, por exemplo, nas migrações de domínios.
Para configurar o redirecionamento em massa para a migração de domínios, acesse a documentação Redirecionamento em massa para migração de domínios.