# Tipos de registro

Um tipo de registro define o que o valor de um registro significa e qual formato o valor assume. O [Edge DNS](/pt-br/documentacao/plataforma/edge-dns/) hospeda 11 tipos de registro, e a API recusa qualquer outro tipo, como `SOA`, com `10039`. Esta página lista o formato do valor de cada tipo e as regras que o Edge DNS aplica a ele. Os outros campos de um registro, como nome, TTL, política e peso, estão em [Zonas e registros](/pt-br/documentacao/plataforma/edge-dns/zonas-e-registros/#campos-do-registro).

O valor é o campo **Value** no Azion Console, um valor por linha. Na API, ele é o array `rdata`, e no Azion CLI, a flag `--rdata`. A coluna Até 10 valores indica quantos valores um registro do tipo comporta. A coluna Política *Weighted* indica se um registro do tipo aceita a política `weighted`, que divide as respostas de um nome entre vários registros por peso.

| Tipo  | Opção no Console                              | Formato do valor                                                   | Até 10 valores                      | Política *Weighted* | RFC                       |
| ----- | --------------------------------------------- | ------------------------------------------------------------------ | ----------------------------------- | ------------------- | ------------------------- |
| A     | *A - IPv4 Address*                            | Um endereço IPv4                                                   | Sim                                 | Sim                 | RFC 1035                  |
| AAAA  | *AAAA - IPv6 Address*                         | Um endereço IPv6                                                   | Sim                                 | Sim                 | RFC 3596                  |
| ANAME | *ANAME - Maps a name to another name*         | Um hostname sob `azioncdn.net`, `azionedge.net` ou `azionedge.com` | Sim                                 | Sim                 | draft-ietf-dnsop-aname-04 |
| CAA   | *CAA - Certification Authority Authorization* | `[flags] [tag] "[value]"`                                          | Não, mais de 10 valores são aceitos | Não                 | RFC 8659                  |
| CNAME | *CNAME - Canonical name*                      | Um hostname                                                        | Não, exatamente um valor            | Sim                 | RFC 1035                  |
| DS    | *DS - Delegation Signer*                      | `[key tag] [algorithm] [digest type] [digest]`                     | Sim                                 | Não                 | RFC 3658                  |
| MX    | *MX - Mail exchange*                          | `[priority] [mail server hostname]`                                | Sim                                 | Sim                 | RFC 1035 e RFC 7505       |
| NS    | *NS - Name Servers*                           | O hostname de um nameserver                                        | Sim                                 | Não                 | RFC 2782                  |
| PTR   | *PTR - Reverse DNS lookup*                    | Um hostname                                                        | Não, exatamente um valor            | Não                 | RFC 1035                  |
| SRV   | *SRV - Location of server or service*         | `[priority] [weight] [port] [target]`                              | Não, mais de 10 valores são aceitos | Não                 | RFC 2782                  |
| TXT   | *TXT - Text*                                  | Texto, até 1.000 caracteres por valor                              | Não, mais de 10 valores são aceitos | Não                 | RFC 1035 e RFC 1464       |

Um registro TXT ou NS com a política `weighted` é recusado com `19017`. Para saber como um registro com a política `weighted` é escolhido, consulte [Como o Edge DNS funciona](/pt-br/documentacao/plataforma/edge-dns/como-funciona/#politicas-de-registro).

---

## A

Um registro A, também chamado de registro de host, associa um nome a um endereço IPv4. O valor é um endereço IPv4, como `192.0.2.1` em um registro chamado `www`.

Um registro comporta até 10 valores, um por linha no Console. Um décimo primeiro valor é recusado com `19007`, e um valor que não é um endereço IPv4, como `300.1.1.1`, é recusado com `19003`. Um registro A aceita a política `weighted`. Para dividir o tráfego entre endereços por peso, consulte [Distribua o tráfego com pesos](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/balanceamento-de-carga-dns/).

---

## AAAA

Um registro AAAA associa um nome a um endereço IPv6. O valor é um endereço IPv6, como `2001:db8::1` em um registro chamado `www`.

Um registro comporta até 10 valores, um por linha no Console. Um décimo primeiro valor é recusado com `19007`. Um registro AAAA aceita a política `weighted`.

---

## ANAME

Um registro ANAME, também chamado de registro ALIAS, é um tipo de registro virtual que dá ao apex da zona (o domínio raiz, `@`) um comportamento semelhante ao de um CNAME. Ele aponta um nome para um hostname da Azion e é respondido como um registro A. Use-o para servir um domínio raiz, como `example.com`, por meio de outros produtos da Azion.

O valor é um hostname no formato FQDN, nunca um endereço IP, como `<your-workload>.map.azionedge.net`. O Edge DNS aplica estas regras a um registro ANAME:

- O TTL é `20` e nenhum outro. Qualquer outro TTL, incluindo o padrão de 3600, é recusado com `19011`. Mantenha o TTL em 20.
- Cada valor é um nome sob `azioncdn.net`, `azionedge.net` ou `azionedge.com`. Qualquer outro destino é recusado com `19016`.
- Um registro comporta até 10 valores. Um décimo primeiro valor é recusado com `19007`.
- O nome pode ser `@` ou qualquer outro nome da zona.
- Um registro ANAME pode compartilhar o nome com registros de outros tipos, como MX e TXT.
- Ele aceita a política `weighted`.

No Console, selecionar *ANAME - Maps a name to another name* preenche **TTL (seconds)** com 20 e desativa **Weight**. Para o procedimento completo, consulte [Aponte um domínio raiz com ANAME](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/acessar-root-domain/).

---

## CAA

Um registro CAA indica as autoridades certificadoras (CAs) autorizadas a emitir certificados para um domínio ou para os subdomínios dele. O valor tem três partes separadas por espaços, `[flags] [tag] "[value]"`, como `0 issue "letsencrypt.org"` em um registro chamado `@`. Um valor de flags `0` desativa todas as flags.

A tag é escrita em letras minúsculas e é uma destas:

| Tag         | O que significa                                                                                                                                   |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `issue`     | A CA indicada no valor pode emitir um certificado para o domínio ou para um subdomínio.                                                           |
| `issuewild` | A CA indicada no valor pode emitir um certificado wildcard para o domínio ou para um subdomínio.                                                  |
| `iodef`     | A CA notifica o dono do domínio sobre uma solicitação de certificado inválida, no endereço `mailto:`, `http://` ou `https://` informado no valor. |

A parte do valor fica sempre entre aspas duplas, e o conteúdo dela depende da tag. Um registro aceita mais de 10 valores, um por linha no Console. Estes são valores CAA:

```text
0 issue "ca.example.net"
0 issue "ca.example.net; account=123456"
0 iodef "mailto:email@example.com"
0 iodef "https://example.com/callback"
0 iodef "http://example.com/callback"
```

Um registro CAA em um nome que contém um CNAME é recusado com `19018`; um CNAME em outro ponto da zona não o bloqueia. Para um exemplo completo, consulte [Restrinja emissores com CAA](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/registro-caa/).

---

## CNAME

Um registro CNAME torna um nome um alias de outro hostname. Um resolver que recebe um CNAME repete a busca com o hostname para o qual ele aponta.

O valor é um único hostname no formato FQDN, como `www.example.com` em um registro chamado `blog`. O Edge DNS aplica estas regras a um registro CNAME:

- O valor é um hostname, nunca um endereço IP. Um endereço IP, como `192.0.2.1`, é recusado com `19002 Invalid Domain Name`, cujo detalhe diz `Please enter the domain name following the format FQDN. IP addresses are not acceptable for this kind of record.`
- Ele comporta exatamente um valor. Um segundo valor é recusado com `19006`, cujo detalhe diz `The 'rdata' cannot contain more than one item when 'type' is 'CNAME'.`
- Ele não pode ter o nome `@`. Um CNAME no apex da zona é recusado com `19005`. No apex, use um registro [ANAME](/pt-br/documentacao/plataforma/edge-dns/tipos-de-registro/#aname) para um destino da Azion.
- Ele bloqueia todos os outros tipos no nome dele. Um registro de outro tipo, como A, MX ou CAA, em um nome que contém um CNAME é recusado com `19018`.
- Ele aceita a política `weighted`.

Quando o destino é um nome da mesma zona, o Edge DNS responde com o CNAME e os registros do destino na mesma resposta. Uma consulta por `blog.example.com` retorna o CNAME para `www.example.com` e o registro A de `www`. Para um exemplo completo, consulte [Aponte um subdomínio com CNAME](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/subdominio-cname/).

---

## DS

Um registro DS (Delegation Signer) é um elo na cadeia de confiança do DNSSEC. Ele mostra que uma zona filha delegada é confiável, porque contém um hash, o digest, da chave de assinatura de chaves (KSK) dessa zona.

O valor tem quatro campos, `[key tag] [algorithm] [digest type] [digest]`, como `12345 13 2 3A1F…8192` em um registro chamado `sub`. Adicione um registro DS para delegar uma zona filha assinada, no mesmo nome do registro NS que a delega. Um registro comporta até 10 valores; um décimo primeiro valor é recusado com `19007`.

Você não adiciona nenhum registro DS para assinar a sua própria zona: a própria Azion publica os registros DNSSEC da zona. Para assinar uma zona e obter os valores DS de que o seu registrador precisa, consulte [DNSSEC](/pt-br/documentacao/plataforma/edge-dns/dnssec/).

---

## MX

Um registro MX indica o servidor de e-mail SMTP de um domínio, que os servidores de e-mail usam para encaminhar e-mails ao domínio. O valor tem a prioridade e, depois, o hostname do servidor de e-mail, separados por um espaço. A dica do Console diz `Accepts the format: [preference] [mail exchanger].`

Um registro em `@` que indica dois servidores de e-mail tem um valor por linha:

```text
10 mail.example.com
20 mail2.example.com
```

Um registro comporta até 10 valores. Um décimo primeiro valor é recusado com `19007`. Um registro MX aceita a política `weighted`. Para um exemplo completo, consulte [Receba e-mails com registros MX](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/registros-mx/).

---

## NS

Um registro NS indica os nameservers autoritativos de um nome. Adicione um registro NS no nome de um subdomínio para delegar o subdomínio a outros nameservers, que precisam ter autoridade sobre ele.

O valor é o hostname de um nameserver no formato FQDN, nunca um endereço IP. Adicione um valor para cada nameserver do subdomínio, como estes em um registro chamado `sub`:

```text
ns1.example.com
ns2.example.com
```

Um registro comporta até 10 valores. Um décimo primeiro valor é recusado com `19007`, e a política `weighted` é recusada com `19017`. Um endereço IP como valor é recusado com `19022 Invalid NS Record Answer`: `Invalid value for NS type. You need to use FQDN format.` Um registro NS não pode ter o nome `@`, o próprio domínio da zona, e um registro NS nesse nome é recusado com `19021 Invalid NS Record Entry`: `NS records cannot be used at the zone apex or domain root.` Os nameservers da própria zona são os da Azion e são somente leitura; para os nomes deles, consulte [Zonas e registros](/pt-br/documentacao/plataforma/edge-dns/zonas-e-registros/#nameservers-e-soa).

---

## PTR

Um registro PTR atende a uma busca de DNS reverso: ele associa um endereço IP de volta a um hostname. O valor é o hostname direto correspondente, como `host.example.com` em um registro chamado `1`.

Um registro PTR comporta exatamente um valor. Um segundo valor é recusado com `19006 Invalid RData For CNAME Record`, cujo detalhe cita CNAME mesmo para um registro PTR: `The 'rdata' cannot contain more than one item when 'type' is 'CNAME'.`

Crie a zona reversa primeiro e, depois, adicione os registros PTR a ela. Deve existir um registro A para o hostname de cada registro PTR; o Edge DNS não verifica se ele existe. Uma configuração de DNS reverso é adequada para um servidor de e-mail.

---

## SRV

Um registro SRV (service) informa a localização dos servidores de um serviço, como um hostname e uma porta. O código de tipo DNS dele é 33.

O nome tem o formato `_service._proto`, como `_sip._tcp`, que responde por `_sip._tcp.example.com`. Um nome em qualquer outro formato, como `*._tcp`, é recusado com `19019`; por isso, um registro SRV não pode ser um wildcard.

O valor tem quatro campos, `[priority] [weight] [port] [target]`, como `10 60 5060 sip.example.com`. Aqui, o peso é o campo do SRV, não o peso da política do registro. Confirme que o destino é um hostname com um registro A ou AAAA: a API aceita um destino que não resolve.

Um nome comporta um registro SRV. Um segundo registro SRV no mesmo nome é recusado com `19004`; por isso, adicione todos os valores ao mesmo registro. Um registro SRV aceita mais de 10 valores.

---

## TXT

Um registro TXT associa um texto arbitrário a um nome, como informações legíveis sobre um servidor, uma rede ou um data center. A dica do Console indica o formato `"[text]"`. Estes são valores TXT:

```text
v=spf1 -all
"printer=lpr5"
"favorite drink=orange juice"
This domain name is reserved for use in documentation.
```

Cada linha do campo **Value** do Console é uma resposta separada, assim como cada item de `rdata` na API, e um registro aceita mais de 10 valores. Um valor comporta até 1.000 caracteres. Um valor mais longo é recusado com `19024`, cujo detalhe diz `You need to provide an answer with less than 1000 characters.`; um valor de exatamente 1.000 caracteres é aceito. A política `weighted` é recusada com `19017`. Para um exemplo completo, consulte [Verifique um domínio com TXT](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/verificacao-txt/).

---

## Wildcards

Um registro wildcard responde a consultas por nomes que a zona não define. Dê ao registro o nome `*` para corresponder a todos os nomes não definidos na zona, ou `*.label` para corresponder a todos os nomes não definidos sob `label`. Um nome wildcard é aceito em registros A, TXT e MX. Um registro SRV não pode ser um wildcard: o nome dele precisa ser `_service._proto`, e um nome como `*._tcp` é recusado com `19019`.

Considere uma zona de `example.com` com estes registros A:

| Nome         | Valor        |
| ------------ | ------------ |
| `www`        | `192.0.2.1`  |
| `*`          | `192.0.2.31` |
| `*.wildcard` | `192.0.2.32` |
| `*.apps`     | `192.0.2.10` |
| `a*b`        | `192.0.2.33` |

Os nameservers dela respondem a estas consultas A:

| Consulta                       | Resposta     | Registro que responde                                                                            |
| ------------------------------ | ------------ | ------------------------------------------------------------------------------------------------ |
| `www.example.com`              | `192.0.2.1`  | `www`: um nome definido prevalece sobre um wildcard.                                             |
| `ghost.example.com`            | `192.0.2.31` | `*`                                                                                              |
| `another.wildcard.example.com` | `192.0.2.32` | `*.wildcard`                                                                                     |
| `wrong.record.example.com`     | `192.0.2.31` | `*`: não existe registro sob `record`, então o wildcard da zona responde, vários rótulos abaixo. |
| `deep.x.apps.example.com`      | `192.0.2.10` | `*.apps`: ele corresponde a nomes mais de um rótulo abaixo de `apps`.                            |
| `a*b.example.com`              | `192.0.2.33` | `a*b`, como nome literal.                                                                        |
| `axb.example.com`              | `192.0.2.31` | `*`: `a*b` não é um wildcard, então não corresponde.                                             |

Um asterisco só é um wildcard como um rótulo inteiro à esquerda do nome. Um asterisco dentro de um rótulo, como em `a*b`, é um caractere literal. Para um exemplo completo, consulte [Responda a subdomínios com wildcard](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/registro-wildcard/).

---

## Recursos relacionados

- [Zonas e registros](/pt-br/documentacao/plataforma/edge-dns/zonas-e-registros.md): O nome, o TTL, a política, o peso e a descrição de um registro, e os erros que a API retorna.
- [Como o Edge DNS funciona](/pt-br/documentacao/plataforma/edge-dns/como-funciona.md#politicas-de-registro): Como as políticas Simple e Weighted escolhem a resposta a uma consulta.
- [Aponte um domínio raiz com ANAME](/pt-br/documentacao/guias/seguranca-de-aplicacoes/dns/acessar-root-domain.md): Sirva o apex da zona a partir de um workload com um registro ANAME.
- [Limites de Edge DNS](/pt-br/documentacao/plataforma/edge-dns/limites.md): Todos os limites de zonas e registros, e as zonas e consultas que cada plano inclui.
