Definição de nome de domínio totalmente qualificado

8

Tentei procurar na Internet uma definição de um FQDN. Segundo a Wikipedia , um FQDN

especifica sua localização exata na hierarquia da árvore do sistema de nomes de domínio (DNS). Gostaria de interpretar isso, que é inequivocamente resolvível (no DNS).

O exemplo no WP (por mais difícil que eu não queira usar isso como referência) afirma o uso de hostname.example.com.

Os RFCs que encontrei (o RFC 1035 foi o único não específico de protocolo que encontrei) não eram informativos sobre o que um FQDN qualifica.

Eu pensei que apenas um identificador como hostname.example.com é um FQDN válido (incluindo todos os hostname, domínio e TLD em separado), mas isso parece estar errado.
É necessário que um FQDN sempre inclua um nome de host ao lado do domínio, mesmo se o domínio consistir em apenas um host? Ou é a única definição de que um FQDN deve ser resolvido via DNS? Por exemplo, o domínio .tk é inequivocamente resolvível, é um FQDN?

sebix
fonte
Acho isso uma pergunta interessante, mas se você está pensando em respondê-la, por favor, note que eu muito preferem ver as respostas que são referenciados. A menos que você seja Paul Vixie, não estou muito interessado em uma simples declaração de suas opiniões sobre o assunto.
MadHatter
2
Bem, acho que sou Paul Vixie, então vou tentar responder a isso abaixo.
Paul Vixie

Respostas:

6

Eu consideraria um nome totalmente qualificado se você não precisar anexar mais identificadores para resolver o host sem ambiguidade. Se isso não for verdade, o nome seria considerado relativo.

RFC1535 discute um ponto importante:

Um FQDN "raiz" absoluto é do formato {nome} {.} Um nome de domínio não "raiz" é do formato {nome}

No seu exemplo acima, você iria resolver .tkcomo tk.para garantir que é inequívoca. Curiosamente, isso realmente tem um registro A válido.

$ dig tk.
; <<>> DiG 9.8.3-P1 <<>> tk.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 812
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;tk.                IN  A

;; ANSWER SECTION:
tk.         20  IN  A   217.119.57.22

EDIT: RFC1535 tem outra citação interessante:

Além disso, em qualquer caso em que um "." existe em um nome especificado, deve-se considerar um nome de domínio totalmente qualificado (FQDN) e DEVE ser tentado como um nome raiz primeiro.

GeekyDeaks
fonte
4

Na fila do ACM , defini o FQDN da seguinte maneira:

O espaço para nome DNS possui uma estrutura em árvore, onde cada nó tem um pai, exceto o nó raiz, que é seu próprio pai. Os nós têm rótulos de 1 a 63 caracteres, exceto o nó raiz cujo rótulo está vazio. Um domínio é um nó no contexto e um nome de domínio totalmente qualificado possui uma forma de apresentação que é apenas os nomes dos nós, de baixo para cima, sendo cada um seguido por um ponto (.). Por exemplo, www.google.com é o nome completo de um nó cujo nome é www, cujo pai é google, cujo avô é com e cujo bisavô é a raiz do DNS.

Toda vez que você usa termos como "nome do host" ou "parte do host" ou "parte do domínio", você se perde no meio do mato e descobre que nenhuma definição de FQDN se encaixa perfeitamente ao seu propósito. O significado, e não a definição, de FQDN pode ser esclarecido considerando seu antônimo: o nome de domínio não totalmente qualificado. Para ser totalmente qualificado, você está especificando todos os rótulos de domínio até o nível superior e, nesse caso, pode acrescentar um ponto final (.) Para indicar que o fez. Ser menos do que totalmente qualificado significa que o nome que você está procurando só faz sentido no contexto de uma lista de pesquisa ou domínio padrão.

A RFC 1535 foi interessante porque muitos de nós até então usavam nomes locais com vários rótulos e ainda assim esperávamos o comportamento da lista de pesquisa - e isso quebrou muitas outras coisas, por isso foi proibido. Mas quando estive [email protected] em 1988-1993, foi possível enviar e-mail de [email protected] para matt @ decvax e expandi-lo para [email protected] e [email protected] .com e tudo funcionou. Acabou que tivemos que desistir disso. Hoje em dia, se houver um ponto no seu nome no nível da apresentação (ou seja, você o digitou ou foi exibido por um programa), presume-se que todos os softwares do mundo sejam um FQDN.

Meu livro do Sendmail (em co-autoria com Fred Avolio depois que saímos do DEC.COM) também possui um capítulo sobre esse tópico, que é uma leitura interessante, pois foi escrito ao mesmo tempo que a RFC 1535.

Paul Vixie
fonte
0

Meus 2 centavos:

No sentido mais estrito, um FQDN é o que você escreveu em seu exemplo.

ou seja, hostname.example.com.

incluindo o ponto no final.

Eu não acho que tenha que ser resolvido via DNS, é apenas uma definição sintática.

Aditya K
fonte