c# - 让网络中的客户端找到彼此

标签 c# networking communication

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

最佳答案

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

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

一个例子是

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

关于c# - 让网络中的客户端找到彼此,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23107733/

相关文章:

c# - 只调用另一个方法的方法的编译器优化

docker - jenkins中的另一个云插件未使用ec2实例连接到tcp://docker:2376

networking - 客户端违反了握手期间商定的 MSS 值

communication - 优先考虑开发人员通信的即时消息

c# - WinForm 什么时候释放它的资源? (C#)

c# - Blazor 服务器端支持的浏览器

c# - 使用点表示法在函数中封装和使用 LINQ 逻辑

java - 我应该在何时何地使用 close() 方法来避免 ObjectInputStream 中的 IOException?

java - C# 进程读取 java 进程的输出流,而不使用套接字、IDL/CORBA、文件、数据库或 JNI

iphone - 在iPhone SDK中使用套接字通信黑白两个应用程序