【问题标题】:Let clients in a network find eachother让网络中的客户端找到彼此
【发布时间】:2014-04-16 11:11:25
【问题描述】:

我在一个网络中有多台电脑,他们每个人都需要获取彼此的 IP 地址,我查看了广播,但这需要一个服务器,但所有电脑都需要找到所有其他的。任何人都可以将我踢向正确的方向吗?

【问题讨论】:

  • 为什么你的程序不能做广播的服务器?

标签: c# networking communication


【解决方案1】:

从技术上讲,服务器是一个客户端,大部分时间只是监听连接或提供服务。

现在,如果您希望所有客户端都能发现彼此。实现这一点的简单方法是在特定端口发送 Listen for Broadcast Message 并在网络中发送广播消息,这将帮助其他客户端知道 EndPoint (Node) 现在处于活动状态。

一个例子是

  1. 在客户端启动时监听端口 XXXX。
  2. 在 XXXX 端口广播一条消息,这将有助于其他客户端发现该节点。
  3. 客户端收到发现消息后,会将自己的详细信息发送给接收消息的客户端!

【讨论】:

  • 所以多个客户端可以监听一个端口,并且都可以同时广播?
  • 每个节点一个客户端,你不能在同一台PC上启动2个客户端,这会产生错误。
  • @Jeff Aye 这只是一个点对点网络。 Google UDP Peer to Peer,大部分都是聊天服务器,但原理还是有用的。
猜你喜欢
  • 2012-06-07
  • 1970-01-01
  • 1970-01-01
  • 2012-02-18
  • 1970-01-01
  • 2017-07-07
  • 2019-05-24
  • 2013-01-10
  • 1970-01-01
相关资源
最近更新 更多