AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1085780
Accepted
abc
abc
Asked: 2021-12-09 15:25:43 +0800 CST2021-12-09 15:25:43 +0800 CST 2021-12-09 15:25:43 +0800 CST

Todos os domínios tecnicamente terminam com "."?

  • 772

Meu entendimento é que os TLDs são subdomínios do domínio raiz que é representado por ".".

Portanto, "google.com" em termos mais específicos deve ser "google.com.".

Em quais cenários você veria um domínio terminando com um "." como "google.com."? Eu já tinha visto isso antes, mas não pensei em nada na época.

domain-name-system subdomain domain
  • 2 2 respostas
  • 82 Views

2 respostas

  • Voted
  1. Best Answer
    vaizki
    2021-12-09T15:37:34+08:002021-12-09T15:37:34+08:00

    Sim, um nome de domínio totalmente qualificado termina com um ponto. E um nome de domínio é sempre relativo se não terminar com um ponto. O sistema operacional, o aplicativo que está sendo usado, algum proxy ou outro elemento de resolução de nomes pode tentar pesquisar o nome relativo a algo diferente do .domínio raiz. No escritório, é provável que o domínio da empresa seja pesquisado antes da raiz, por exemplo.

    Em teoria, você pode usar nomes de domínio totalmente qualificados em todos os lugares e possivelmente salvar a Internet de alguns acessos de DNS e você mesmo alguns milissegundos. Na prática, o mundo está cheio de expressões regulares de validação, etc., que podem rejeitar esse FQDN (perfeitamente válido).

    Um caso específico em que eles são muito comuns é ao configurar servidores de nomes, por exemplo, registros CNAME. Uma zona no servidor de nomes normalmente tem a si mesma como a "raiz relativa", portanto, para fazer referência a um nome de domínio fora dela, deve-se fazer o nome totalmente qualificado terminando em um ponto.

    • 2
  2. Patrick Mevzek
    2021-12-09T19:47:03+08:002021-12-09T19:47:03+08:00

    Todos os domínios tecnicamente terminam com "."?

    Sim, se você observar os RFCs principais relacionados ao DNS, porque qualquer nome é transmitido com um byte final de valor 0 que codifica a raiz, também conhecida como o ponto final no formato "apresentação".

    Consulte a seção 3.1.5 da RFC 1035 :

    NAME um nome de domínio representado como uma sequência de rótulos, onde cada rótulo consiste em um octeto de comprimento seguido por esse número de octetos. O nome de domínio termina com o octeto de comprimento zero para o rótulo nulo da raiz.

    É também por isso que, ao usar digou escrever zonefiles, você vê nomes terminando com um ponto final para remover qualquer ambiguidade.

    Agora, tudo depende do contexto. Em URLs, você escreve nomes de host sem ponto no final e funciona porque está implícito que eles são absolutos.

    Você pode querer consultar a RFC 8499 , que é a referência padrão agora para tudo relacionado à terminologia DNS. Diz isto:

          The presentation format for names in the global DNS is a list
         of labels ordered by decreasing distance from the root, encoded
         as ASCII, with a "." character between each label.  In
         presentation format, a fully-qualified domain name includes the
         root label and the associated separator dot.  For example, in
         presentation format, a fully-qualified domain name with two
         non-root labels is always shown as "example.tld." instead of
         "example.tld".  [RFC1035] defines a method for showing octets
         that do not display in ASCII.
    
         The common display format is used in applications and free
         text.  It is the same as the presentation format, but showing
         the root label and the "." before it is optional and is rarely
         done.  For example, in common display format, a fully-qualified
         domain name with two non-root labels is usually shown as
         "example.tld" instead of "example.tld.".  Names in the common
         display format are normally written such that the
         directionality of the writing system presents labels by
         decreasing distance from the root (so, in both English and the
         C programming language the root or Top-Level Domain (TLD) label
         in the ordered list is rightmost; but in Arabic, it may be
         leftmost, depending on local conventions).
    

    E mais tarde, o FQDN é definido e entra em detalhes sobre o problema real relacionado ao contexto:

     Fully-Qualified Domain Name (FQDN):  This is often just a clear way
      of saying the same thing as "domain name of a node", as outlined
      above.  However, the term is ambiguous.  Strictly speaking, a
      fully-qualified domain name would include every label, including
      the zero-length label of the root: such a name would be written
      "www.example.net." (note the terminating dot).  But, because every
      name eventually shares the common root, names are often written
      relative to the root (such as "www.example.net") and are still
      called "fully qualified".  This term first appeared in [RFC819].
      In this document, names are often written relative to the root.
    
      The need for the term "fully-qualified domain name" comes from the
      existence of partially qualified domain names, which are names
      where one or more of the last labels in the ordered list are
      omitted (for example, a domain name of "www" relative to
      "example.net" identifies "www.example.net").  Such relative names
      are understood only by context.
    

    Quanto a:

    Em quais cenários você veria um domínio terminando com um "." como "google.com."?

    Fácil, faça qualquer consulta DNS:

    $ dig NS google.com +noall +ans
    google.com.     3h9m51s IN NS ns4.google.com.
    google.com.     3h9m51s IN NS ns2.google.com.
    google.com.     3h9m51s IN NS ns3.google.com.
    google.com.     3h9m51s IN NS ns1.google.com.
    

    Observe que os resultados seriam exatamente os mesmos se eu usasse google.com.porque digé um cliente DNS e, portanto, espere que todos os nomes sejam absolutos (portanto, o ponto final é opcional).

    Você também pode adicionar pontos a qualquer nome e, portanto, ter URLs como https://www.google.com./. Para o plano DNS, será o mesmo. Assim para IP e TCP também. Para TLS deve ser o mesmo, se não houver erros nas implementações. No nível HTTP/HTTPS, um servidor adequado funcionaria, mas observe que você pode encontrar bugs apenas por causa disso (e, portanto, ter outra página exibida além da normal ou um erro).

    O mesmo para endereços de e-mail e em todos os outros lugares em que você usa nomes.

    E se você estiver questionando as coisas, sim, por definição, há apenas uma raiz... pelo menos em teoria (consulte RFC 2826 "Comentário técnico do IAB sobre a raiz DNS exclusiva" ). Cada rede (de uma casa local até mesmo um estado completo) pode definir uma raiz local, e outros protocolos definem o nome que parece estar na raiz, mas não realmente (ex: ethou bit). Mas neste ponto você entra em arenas políticas, e não mais técnicas.

    • 2

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve