Em suma, é uma mistura muito confusa de diferentes conjuntos de protocolos de resolução de nome usados por diferentes sistemas operacionais, produtos, aplicativos, serviços e APIs.
O IETF ZeroConf define o protocolo mDNS (multicast DNS) e também o protocolo DNS-SD (descoberta de serviço DNS). Bonjour (née Rendezvous, a.k.a. mDNSResponder) e Avahi são duas implementações do ZeroConf. Ouvi dizer que há também uma implementação da comunidade OpenWrt que simplesmente se chama "mDNS". Como a Apple criou isso, os produtos da Apple se concentram nisso, embora os Macs também possam usar o NetBIOS Name Service e o WINS para resolução de nomes, especialmente ao usar o cliente SMOS do macOS para se conectar a servidores de arquivos SMB (Windows Server, servidores Linux SaMBa).
Os protocolos de serviço de nomes de propriedade da Microsoft iniciam com o Serviço de Nomes de NetBIOS que foi baseado em difusões locais (não roteáveis) de LAN. Eu digo "Microsoft proprietária", mas tecnicamente ela originou-se com a IBM como parte dos protocolos SMB (Server Message Block). Como o serviço de arquivos SMB tornou-se um padrão de fato da indústria, muitos sistemas operacionais tiveram que adotar o NetBIOS Name Service em seus clientes e servidores SMB, no mínimo. Mais tarde, a Microsoft criou o WINS para fornecer uma solução unicast baseada em servidor para esse mesmo tipo de resolução de nomes de propriedade da Microsoft. Quando a Apple criou o mDNS com o nome "Rendezvous" (mais tarde renomeado Bonjour) e o levou para o IETF para se tornar IETF ZeroConf, a Microsoft decidiu fazer seu próprio mDNS semelhante, diferente e incompatível, que eles chamavam de "Link-Local Multicast". Resolução de nomes "(LLMNR). No mundo da Microsoft, as requisições de hosts ".local" normalmente vão para o LLMNR, como se para evitar o uso padronizado de ".local" do ZeroConf. A Microsoft também usa o UPnP para descobrir algumas coisas em LANs, como roteadores (APs Wi-Fi e gateways NAT).
O Linux, incluindo o Google Android, parece estar gravitando em direção ao ZeroConf para resolução de nomes sem servidor baseado em LAN agora. O Google portou o daemon open source "mDNSResponder" da Apple compatível com POSIX para Linux para uso no Android; é o que implementa as APIs do "Network Service Discovery" (NSD) do Android.
Como o macOS, o Linux usa o NetBIOS Name Service e o WINS para se conectar a servidores SMB.
É uma grande bagunça, e qual (is) protocolo (s) usado (s) para uma determinada coisa depende de qual SO você está, quais APIs seu software chama, e muitas outras coisas.