Multicast (mDNS) para o servidor Linux

3

Antecedentes:

Estou executando um servidor Linux em uma rede local que atua como servidor Web e como servidor central de comunicações. Este servidor se comunica com vários nós no sistema. Na inicialização do nó, o nó envia seu endereço IP para o servidor central de comunicações. No entanto, para saber o destino de onde enviar esse endereço IP, o nó precisa saber o endereço IP do servidor. Para resolver o servidor, fui direcionado para o uso do mDNS.

Parece que instalar o avahi no servidor permite o multicasting para o servidor Linux.

sudo apt-get install avahi-daemon

Em seguida, o nome do host do servidor pode ser alterado para onde o multicast resolverá o endereço IP do servidor para

hostname.local

Pergunta 1:

Os nós também precisam ter o avahi-daemon instalado para que esse esquema funcione? Em caso afirmativo, existe uma maneira de contornar isso ou habilitar o multicast para os nós de outra maneira. Eu estou hesitante porque não tenho certeza se o micro controlador tem a capacidade de instalar este daemon, já que o ESP8226 está sendo usado como o módulo WiFi. (Eu sei que o ESP8226 suporta mDNS, só não sei exatamente como).

Pergunta 2:

Se um usuário tentar acessar uma página no servidor da Web, ele poderá simplesmente digitar o nome do mDNS em um navegador para emitir a solicitação? Ou eles também precisam ter o daemon avahi instalado? Se for um computador windows tentando acessar o aplicativo, não posso garantir que eles terão essa funcionalidade integrada. Novamente, se for necessário, existe uma maneira de contornar a falta do daemon?

Atualização: O ESP8226 suporta mDNS, no entanto o cliente mDNS não está embutido. Há, no entanto, uma biblioteca mDNS cliente para o ESP8226 aqui: link

    
por cg14 24.03.2016 / 21:15

1 resposta

0

Pergunta 1: Infelizmente você tem que ter avahi ou bonjour (win / mac) instalado para usar o mDNS. Boa sorte, compilando avahi para o microcontrolador! Eu nunca usei mDNS com wifi também, mas é realmente um tráfego multicast muito normal.

Pergunta 2: Você pode usar o nome do mDNS para material http, e o integra completamente com o DNS. Eu estava realmente usando-o para carregar compartilhamentos NFS. Lembre-se de usar vhosts para adicionar o hostname.local como um Alias para o vhost ou algo assim.

    
por 25.03.2016 / 20:47