Sockets

Bom dia pessoal,

tenho uma aplicação que se comunica em rede com protocolo orientado a conexão.

as máquinas se conectam passando seu endereço ip de forma manual, porém gostaria que o sistema as sincronizasse de forma dinâmica(com se fosse por um broadcast)

não achei nada sobre isso no google

xD

agradeço toda ajuda

É uma aplicação para rede local? As alternativas que você tem para isso são:

  1. Usar um servidor que conheça os clientes (solução do messenger, por exemplo). A aplicação deverá conhecer somente esse servidor;
  2. Usar broadcast. Nesse caso, será necessário implementar parte do seu protocolo em UDP.

Ei ViniGodoy,

A minha aplicação é em rede local e estou trabalhando nessa primeira alternativa.

Eu não posso usar toda minha comunicação em UDP, preciso de uma certa segurança…

não tenho muita experiência com sockets, para ser bem sincero essa é a minha primeira aplicação em rede…

mas pensando de forma lógica, eu poderia fazer um broadcast e descobrir todas as máquinas que estão com meu sistema aberto e pegar seus numeros ips?

Quem foi que falou em todo seu protocolo ser em UDP? Eu disse parte do seu protocolo, exatamente a parte da descoberta.

E, sim ,vc implementa no seu protocolo um multicast perguntando “Quem está aí”? E cria uma mensagem para as máquinas responderem seus IPs.

okay, mas mesmo tendo essa lista de ips de clientes como eu poderia criar a conexão cliente servidor? porq até onde sei é o cliente que necessita do endereço ip para se conectar

Quem vai mandar a pergunta é o próprio cliente. E todas as máquinas da rede respondem seus IPs.