【发布时间】:2013-12-02 04:58:47
【问题描述】:
我需要监控连接到 LAN 网络的客户端系统。 如果系统连接到 LAN,我需要收到通知并 如果系统与 LAN 断开连接,我需要收到通知。
目前我正在使用 C# 代码连续 ping 系统并完成工作。
缺点:-
1.我将系统名称硬编码为 ping。
2.如果客户端不可达/不在局域网/找不到主机,ping方法会等待一段时间并抛出异常。
3.为了在后台执行此操作,我在线程中执行此功能。
4.在计时器内调用该线程。
实现这一目标的最佳方法是什么?
本质
Some event , it should notify on new incoming connections,
connection which is getting lost from LAN. This event should run async, monitor
continuously.
我正在使用 Windows 应用程序 (WPF) ,C#。
【问题讨论】:
-
您的尝试似乎是在对断开连接的机器进行外部监控。这是您的环境中的限制,还是可以在受监控的机器上安装一些东西来跟踪它何时认为它失去了网络连接?
-
你考虑过检查你的机器ARP表吗? stackoverflow.com/questions/13492134/…
-
我在一个局域网中有 30 个系统。在一个我需要运行我的代码,(所有机器都是 Windows 7)。服务应该在服务器(代理)中连续运行并通知客户端系统的连接/断开状态。我们甚至可以在客户端运行一个服务来做到这一点。
-
你能连接到网络路由器并请求信息吗?
-
是的,我们可以做到。但它需要根据需要检查信息并获取它。我需要一种服务类型的东西,一旦应用程序打开kye,它应该自动监控和通知。
标签: c# .net network-programming