Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 45439|Resposta: 2

[Fonte] O .NET Core é baseado na descoberta e registro de serviços mDNS

[Copiar link]
Postado em 25-08-2021 18:36:42 | | | |
mDNS é Multicast DNS, que principalmente permite que hosts na LAN se descubram e comuniquem entre si sem um servidor DNS tradicional, e a porta usada é5353, siga o protocolo DNS e use a estrutura de informação, sintaxe e tipos de registros de recursos existentes do DNS. E nenhum novo código de ação ou código de resposta é especificado. Na LAN, o dispositivo e o dispositivo precisam conhecer o endereço IP um do outro antes de se comunicar; na maioria dos casos, o IP do dispositivo não é um endereço IP estático, mas sim um endereço IP atribuído dinamicamente pelo protocolo DHCP, como descobrir o dispositivo é mostrar suas habilidades por MDNS, por exemplo: agora a comunicação entre o dispositivo da Internet das Coisas e o app, seja o app por radiodifusão ou multicast, envia alguma informação específica, o dispositivo interessado responde para descobrir dispositivos LAN, claro, o mDNS é mais poderoso do que isso.

Chamada de interface HTTP API do Consul
https://www.itsvse.com/thread-9578-1-1.html

【Arquitetura】ASP.NET O Core está altamente disponível com base nos serviços do Consul
https://www.itsvse.com/thread-9422-1-1.html

Arquitetura: ASP.NET Core configura dinamicamente as atualizações quentes com base no Consul
https://www.itsvse.com/thread-9421-1-1.html

[Arquitetura]. net/c# implementa configuração distribuída do armazenamento de chaves/valores baseado no Consul
https://www.itsvse.com/thread-9420-1-1.html

O Windows cria uma versão independente do Nacos 2.0.3
https://www.itsvse.com/thread-10040-1-1.html


Registro de serviço

Primeiro, crie um novo projeto .NET Core 3.1 e use o comando nuget para referenciar o seguinte pacote:


O nome e endereço atuais do serviço são descobertos por radiodifusão, com o seguinte código:



Descoberta de Serviços

A descoberta de serviços, que podemos realizar por meio de código .NET/C#, é a seguinte:

Você também pode ativar a descoberta de serviços para receber todas as transmissões, o código é o seguinte:



Servidor: CentOS Linux release 7.8.2003 (Core), instalando as ferramentas avahi e avahi-tools, o serviço também pode ser descoberto, o comando de instalação é o seguinte:

avahi-daemon é um daemon de serviço que roda em um sistema operacional Linux e implementa uma busca por um serviço Zeroconf baseado em rede em uma máquina cliente. Esse serviço pode implementar especificações de descoberta de serviços DNS e multicast DNS para a rede Zeroconf. O programa do usuário recebe notificações de serviços e recursos de rede descobertos por meio de mensagens Linux D-Bus. Esse daemon funciona com cache de respostas de programas de usuários para ajudar a reduzir o tráfego de rede resultante das respostas.
Execute o serviço avahi-daemon.service com o seguinte comando:



Você pode usar o comando avahi-browse após instalar o avahi-tools.

Você pode visualizar todos os serviços MDNS na LAN com o seguinte comando:

Para consultar um serviço especificado, o comando é o seguinte:




Se você fechar a aplicação .NET Core e consultar o serviço em outro servidor, o seguinte erro será reportado:

+ eth0 IPv4 teste _itsvse_discovery._tcp local
Não foi possível resolver o 'teste' do serviço do tipo '_itsvse_discovery._tcp' no domínio 'local': Tempo limite atingido


Anexado está o código-fonte:

Turistas, se quiserem ver o conteúdo oculto deste post, por favorResposta


(Fim)





Anterior:Inicialização do Zookeeper falhou. Nenhum snapshot foi encontrado, mas há entradas de log ...
Próximo:Problema de acesso nginx Connect() para 127.0.0.1:8080 falhou (13: Permissões den...
Postado em 26-08-2021 15:19:56 |

Passe por aqui e dê uma olhada, obrigado por compartilhar
 Senhorio| Postado em 17-10-2021 15:40:33 |
Se o Centos 8 não encontrar o avahi-tools e não conseguir instalar, tente o seguinte comando:

Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com