public void PingSQL(bool ShowMsg)
    {
        string result="";
        //远程服务器IP
        string ipStr = SQLIP;
        //构造Ping实例
        Ping pingSender = new Ping();
        //Ping 选项设置
        PingOptions options = new PingOptions();
        options.DontFragment = true;
        //测试数据
        string data = "test data abcabc";
        byte[] buffer = Encoding.ASCII.GetBytes(data);
        //设置超时时间
        int timeout = 120;
        //调用同步 send 方法发送数据,将返回结果保存至PingReply实例
        PingReply reply = pingSender.Send(ipStr, timeout, buffer, options);
        if (reply.Status == IPStatus.Success)
        {
            //result += ("答复的主机地址:" + reply.Address.ToString());
            result += ("往返时间:" + reply.RoundtripTime +"ms");
            result += ("\n生存时间(TTL):" + reply.Options.Ttl);
            //result += ("\n是否控制数据包的分段:" + reply.Options.DontFragment);
            result += ("\n缓冲区大小:" + reply.Buffer.Length);
        }
        else
        {
            result = "网络异常" + reply.Status.ToString();
        }
        SqlSpeed.Text = "数据库延迟:" + reply.RoundtripTime + "ms";
        if (ShowMsg)
        { 
        MessageBox.Show(result, "数据库连接测试");
        }

        pingSender.Dispose();
    }

Per Aspera Ad Astra