【发布时间】:2014-01-22 15:40:39
【问题描述】:
我需要一个设备来发送广播并接收等待响应的其他设备的 IP。
我运行了这段代码
System.Net.NetworkInformation.Ping p = new System.Net.NetworkInformation.Ping();
System.Net.NetworkInformation.PingReply rep = p.Send("192.168.1.1");
if (rep.Status == System.Net.NetworkInformation.IPStatus.Success)
{
//host is active
}
但它很慢,并且会将网络中的任何设备返回给我,而不是我想要的。
我是否应该创建一个 UDP 服务器来等待广播信号,然后将其 IP 发送给发送广播的客户端?
【问题讨论】:
-
不发送特定的 Ping 消息,只需发送 UDP 自定义“ping”并使用自定义“ping-reply”进行响应。
-
我几乎在问题“Finding open TCP port in a network”中详细回答了完全相同的问题
-
我将有两台设备运行同一个应用程序,这个应用程序将有 2 个 btns,一个将“开始接收”,一个将“发送信号”,所以我知道谁在接收。不需要数据传输,我只需要 ping 并获取谁在某个端口(如 3000)上运行。我可以通过上面的示例做到这一点吗?我对这种连接的东西有点陌生,所以帮助:c