如何检查服务器是否还活着?

时间:2014-07-02 07:56:15

标签: c# .net winforms active-directory

我想在没有使用Ping()方法的情况下检查服务器是否存活。

对此有什么解决方案吗?

目前,下面的方法对我来说没问题。

public static bool PingToServer(string ipServer)
    {
        bool isServerLife = false;
        try
        {
            Ping ping = new Ping();
            PingReply pingReply = ping.Send(ipServer, 5000);

            if (pingReply.Status == IPStatus.Success)
            {
                isServerLife = true;
            }
        }
        catch (Exception e)
        {
            Console.Write("PingToServer: Cannot ping to server, " + e.Message);
        }
        return isServerLife;
    }

1 个答案:

答案 0 :(得分:2)

如果它是您问题中标记的Active Directory服务器。您可以查看端口3893268

public static bool IsADSAlive(String hostName) 
{
    try {
        using (TcpClient tcpClient = new TcpClient()) 
        {
           tcpClient.Connect(hostName, 3268);
           return true; 
        } 
    }  catch (SocketException) { 

      return false ; 
    }
}