C#实现Ping远程主机功能。
1、引用nuget包 Wesky.Net.OpenTools
OpenTools是一个用于提高开发效率的开源工具库。该项目为个人开源项目,采用MIT开源协议,永不更改协议。开源项目地址:
Gitee:https://gitee.com/dreamer_j/open-tools.git
Github:https://github.com/LittleLittleRobot/OpenTools.git
个人公众号:Dotnet Dancer
工具更新说明:
1.0.1 提供AES加密解密功能
1.0.2 提供本地Ping远程主机功能,包括支持IP地址、域名
本教程将演示1.0.2版本更新功能,以及实现的具体代码演示。
咱们先看一下正常的Ping的效果:
引用nuget包以后,只需要直接调用:
PingHelper.PingHost方法即可,第一个参数是IP地址或域名,第二个是超时时间,单位毫秒.
具体源码和实现说明:
我们也可以直接PING域名,例如 www.baidu.com
并且可以自动解析出来该域名的IP地址(Host)
如果Ping一个不存在的IP,或者连不上的,例如192.168.0.1
显示超时,并且Result状态为false,代表没连上。状态值为TimeOut,说明超时了。
应用场景:
该功能可以应用于需要不定时验证某个远程主机或设备或其他机器是否还在线的情况。并根据状态来展示具体主机是在线还是掉线。