C#でPingを送信するサンプルです。
サンプル
例)「192.168.1.10」に対してPingを送信する
using System.Net.NetworkInformation;
//Pingクラスを生成する
using (Ping ping = new Ping())
{
//Pingを送信する
PingReply reply = ping.Send("192.168.1.10");
//結果を判定する
if (reply.Status == IPStatus.Success)
{
//成功時
Console.WriteLine("応答:" + reply.Address);
Console.WriteLine("バイト数:" + reply.Buffer.Length);
Console.WriteLine("時間(ms):" + reply.RoundtripTime);
Console.WriteLine("TTL:" + reply.Options.Ttl);
}
else
{
//失敗時
Console.WriteLine("応答がありません。理由:" + reply.Status);
}
}
応答ありの結果例
応答:192.168.1.10
バイト数:32
時間(ms):1
TTL:64
応答なしの結果例
応答がありません。理由:TimedOut
備考
- Pingを送信するには、System.Net.NetworkInformation.Pingクラスを使用します。
- Pingを送信する先はIP以外でもマシン名やURLでもOKです。
(例)PingReply reply = ping.Send("www.yahoo.co.jp"); - 応答が無い場合は5秒でタイムアウトエラーとなります。