O hostname é o nome da própria máquina. A parte que vem depois do nome do host, ou seja, .local
in hippotigris.local
ou .kentcdodds.com
in hippotrigris.kentcdodds.com
é o chamado nome de domínio .
Você nunca deve adicionar o nome do domínio ao próprio nome do host.
Como já mencionado nos comentários, .local
é especial: é o domínio para mDNS , que faz o nome multicast resolução no seu segmento de LAN local. Isso funciona de maneira diferente para a resolução de nomes DNS normal e é amplamente usado pela Apple.
Portanto, quando você executar require('dns').lookup()
no nó, ele procurará usando o mecanismo DNS normal. No entanto, o seu nome de host não está registrado no que você usa como servidor DNS normal (o do seu roteador doméstico ou do servidor DNS do seu provedor). Portanto, você não recebe uma resposta.
Se você anexar .local
, o nó (ou as bibliotecas MacOS subjacentes) usará mDNS, o que significa que eles podem encontrar seu nome de host.
É por isso que você precisa anexar .local
em algum lugar, seja diretamente ou automaticamente no caminho de pesquisa ou por qualquer outro meio (por exemplo, no Linux, você pode configurar a pesquisa de nomes para usar DNS e mDNS). qualquer ordem).
Quanto ao motivo pelo qual o nome do host digitado na janela da GUI que você mostrou (Hippotigrisis) é diferente do nome anunciado via mDNS (LM-SJN-21001464), não tenho certeza (porque a interface do usuário do Mac não dá nenhuma dica do que realmente está acontecendo) - seria necessário descobrir quais informações esse diálogo define exatamente e onde o outro nome (que se parece com um número de série) é definido. Ferramentas de linha de comando podem ajudar na busca por isso.