Como a descoberta de serviços DNS, DNS multicast e Bonjour estão relacionados?

11

Estou um pouco perdido na terminologia. Eu queria começar a usar o Bonjour . Como primeiro passo, tentei encontrar uma maneira fácil de usá-lo. E pensei que, provavelmente, posso ligar para Bonjour na linha de comando para registrar e descobrir serviços.

Quando perguntei a outras pessoas como fazê-lo, fui informado sobre o mDNS (que funciona para Mac e Linux, mas não para Windows). As pessoas também me disseram que eu posso usar o "dns-sd" (que funciona no Windows). Foi-me dito que "dns-sd" é apenas um pseudônimo para mDNS.

Mas! Mais tarde, descobri que o DNS Service Discovery e o Multicast DNS são duas coisas diferentes (que são compatíveis e funcionam especialmente bem quando são usadas juntas, mas não requerem uma à outra).

Além disso, parece-me que o mDNS e o DNS-SD são dois dos três principais componentes do Bonjour. Está certo? Posso usá-los sem Bonjour? No meu Windows 7, instalei o Bonjour e consegui executar "dns-sd" na linha de comando. Mas não consigo executar o mDNS.

Então, eu estou meio confuso no momento. Alguém pode esclarecer um pouco a situação?

romano
fonte

Respostas:

8

Acabei de responder sua pergunta anterior aqui .

Eu acho que essa resposta cobriu as perguntas que você fez aqui, mas por precaução:

O Bonjour consiste em 3 partes:
1. Endereçamento local de link IPv4 (e IPv6) (endereços 169.254.0.0/16 no IPv4).
2. Resolução de nome multicast (através do protocolo mDNS). Isso permite que os hosts de uma LAN ad-hoc ou isolada mapeiem automaticamente os nomes de host para endereços IP entre si, fazendo o multicast de consultas e respostas DNS entre si, sem precisar de um servidor DNS unicast tradicional.
3. Descoberta de serviço DNS, que permite descobrir os nomes e detalhes dos serviços de um determinado tipo. Em uma rede local, a descoberta do serviço DNS também é normalmente feita via mDNS, mas através do "Wide Area Bonjour" você pode realmente fazer a descoberta do serviço DNS para um domínio inteiro por meio de um servidor DNS unicast.

A ferramenta dns-sd permite que você faça todas as consultas / pesquisas necessárias para as partes 2 e 3, das quais dei exemplos na minha resposta à sua outra pergunta.

Eu acho que parte da sua confusão vem do fato de que existem ferramentas de linha de comando com os mesmos nomes dos protocolos. mDNS é o nome do protocolo Multicast Domain Name Service, mas também é o nome antigo de uma ferramenta de linha de comando comum para enviar consultas ao protocolo mDNS e receber respostas. "dns-sd" é o nome atual da ferramenta de linha de comando mais comum para a descoberta de serviços DNS, bem como para pesquisas de resolução de nomes multicast. Essas duas ferramentas de linha de comando geralmente chamam APIs que são tratadas pelo processo / serviço / daemon em segundo plano "mDNSResponder".

Spiff
fonte