zoukankan      html  css  js  c++  java
  • C#-如何ping IP

    dll:// C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.0System.dll

    方法 1:

            /// <summary>
            /// 是否能 Ping 通指定的主机
            /// </summary>
            /// <param name="ip">ip 地址或主机名或域名</param>
            /// <returns>true 通,false 不通</returns>
            private bool Ping(string ip)
            {
                bool w_blnReturn = false;
                try
                {
    
                    System.Net.NetworkInformation.Ping p = new System.Net.NetworkInformation.Ping();
                    System.Net.NetworkInformation.PingOptions options = new System.Net.NetworkInformation.PingOptions();
                    options.DontFragment = true;
                    string data = "Test Data!";
                    byte[] buffer = Encoding.ASCII.GetBytes(data);
                    int timeout = 1000; // Timeout 时间,单位:毫秒
                    System.Net.NetworkInformation.PingReply reply = p.Send(ip, timeout, buffer, options);
                    if (reply.Status == System.Net.NetworkInformation.IPStatus.Success)
                        w_blnReturn = true;
                    else
                        w_blnReturn = false;
    
                }
                catch (Exception ex)
                {
                    //异常日志
                    msg = String.Format("Ping执行异常,详细:{0}", ex.StackTrace.ToString());
                    log.Error(msg);
                }
                return w_blnReturn;
            }
    

      

    方法2:   PingReply reply = pinSender.Send(str_ip, timeout, buffer, options);

             /// <summary>
            /// Ping固定IP 
            /// </summary>
            /// <param name="str_ip">IP地址</param>
            /// <returns>成功返回1,失败返回0</returns>
            public int CheckDeviceStatus(string str_ip)
            {
                Ping pinSender = new Ping();
                PingOptions options = new PingOptions();
                string data = "";
                byte[] buffer = Encoding.ASCII.GetBytes(data);
                options.DontFragment = true;
                int timeout = 1200;
                PingReply reply = pinSender.Send(str_ip, timeout, buffer, options);
                if (reply.Status != IPStatus.Success)
                {
                    return 0;
                }
    
                return 1;
            }
    

      

  • 相关阅读:
    Saltstack 命令参数整理
    Saltstack 命令行:批量覆盖指定文件
    Nginx + Tomcat Windows下的负载均衡配置
    linux和windows同步数据 cwrsync client to rsync server
    Amoeba for MySQL 非常好用的mysql集群软件
    Ubuntu 下 JDK+Tomcat+MySql 环境的搭建
    Ubuntu server下安装JDK和Tomcat7
    EhCache 分布式缓存/缓存集群
    电商系统中的商品模型的分析与设计
    大型网站架构的演化[转]
  • 原文地址:https://www.cnblogs.com/lhlong/p/4956476.html
Copyright © 2011-2022 走看看