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 コンストラクタ ()
アセンブリ: System (system.dll 内)




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 コンストラクタ

名前 | 説明 |
---|---|
PingOptions () | PingOptions クラスの新しいインスタンスを初期化します。 |
PingOptions (Int32, Boolean) | PingOptions クラスの新しいインスタンスを初期化し、有効期間 (TTL) とフラグメンテーションの値を設定します。 |

PingOptions コンストラクタ (Int32, Boolean)
アセンブリ: System (system.dll 内)



ttl パラメータは、データを転送できるルーターやゲートウェイの数を制限します。これは、ローカル コンピュータとリモート コンピュータの間のルートの長さのテストに役立ちます。dontFragment パラメータによって、パケットの送信に使用するルーターやゲートウェイの MTU (Maximum Transmission Unit) をテストできます。

このコンストラクタを呼び出し、新しいインスタンスのプロパティ値を表示するコード例を次に示します。
// Set options for transmission: // The data can go through 64 gateways or routers // before it is destroyed, and the data packet // cannot be fragmented. PingOptions options = new PingOptions (64, true); Console.WriteLine ("Time to live: {0}", options.Ttl); Console.WriteLine ("Don't fragment: {0}", options.DontFragment);

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 プロパティ

名前 | 説明 | |
---|---|---|
![]() | DontFragment | リモート ホストに送信するデータのフラグメンテーションを制御する Boolean 値を取得または設定します。 |
![]() | Ttl | Ping データが破棄される前に、そのデータを転送できるルーティング ノードの数を取得または設定します。 |

PingOptions メソッド

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |

PingOptions メンバ
Ping データ パケットの送信方法を制御するために使用します。
PingOptions データ型で公開されるメンバを以下の表に示します。


名前 | 説明 | |
---|---|---|
![]() | DontFragment | リモート ホストに送信するデータのフラグメンテーションを制御する Boolean 値を取得または設定します。 |
![]() | Ttl | Ping データが破棄される前に、そのデータを転送できるルーティング ノードの数を取得または設定します。 |

名前 | 説明 | |
---|---|---|
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |

- PingOptionsのページへのリンク