PingOptions クラス
アセンブリ: System (system.dll 内)


PingOptions クラスには、インターネット コントロール メッセージ プロトコル (ICMP: Internet Control Message Protocol) のエコー要求パケットの送信方法を制御するための、Ttl プロパティと DontFragment プロパティが用意されています。
Ttl プロパティは、Ping クラスによって送信されるパケットの有効期間 (TTL: Time to Live) を指定します。この値は、Ping パケットが破棄される前に、そのパケットを転送できるルーティング ノードの数を示しています。このオプションを設定すると、送信元コンピュータから送信先コンピュータにパケットを送信するために必要となる転送の回数 (ホップ) のテストに役立ちます。
DontFragment プロパティは、リモート ホストに送信するデータを複数のパケットに分割できるかどうかを制御します。このオプションは、パケットの送信に使用するルーターやゲートウェイの MTU (Maximum Transmission Unit) のテストに役立ちます。
PingOptions クラスのインスタンスは、Send メソッドおよび SendAsync メソッドに渡されます。また、PingReply クラスは、Options プロパティを通じて PingOptions のインスタンスを返します。
PingOptions のインスタンスの初期プロパティ値の一覧については、PingOptions コンストラクタのトピックを参照してください。

Ping、PingOptions、および PingReply の各クラスを使用して、コマンド ラインで指定したホストに ICMP エコー要求を送信するコード例を次に示します。
using System; using System.Net; using System.Net.NetworkInformation; using System.Text; namespace Examples.System.Net.NetworkInformation.PingTest { public class PingExample { // args[0] can be an IPaddress or host name. public static void Main (string[] args) { Ping pingSender = new Ping (); PingOptions options = new PingOptions (); // Use the default Ttl value which is 128, // but change the fragmentation behavior. options.DontFragment = true; // Create a buffer of 32 bytes of data to be transmitted. string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; byte[] buffer = Encoding.ASCII.GetBytes (data); int timeout = 120; PingReply reply = pingSender.Send (args[0], timeout, buffer, options); if (reply.Status == IPStatus.Success) { Console.WriteLine ("Address: {0}", reply.Address.ToString ()); Console.WriteLine ("RoundTrip time: {0}", reply.RoundtripTime); Console.WriteLine ("Time to live: {0}", reply.Options.Ttl); Console.WriteLine ("Don't fragment: {0}", reply.Options.DontFragment); Console.WriteLine ("Buffer size: {0}", reply.Buffer.Length); } } } }

System.Net.NetworkInformation.PingOptions


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- PingOptions クラスのページへのリンク