Ping.Send メソッドとは? わかりやすく解説

Ping.Send メソッド (String)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

Public Function Send ( _
    hostNameOrAddress As String _
) As PingReply
Dim instance As Ping
Dim hostNameOrAddress As String
Dim returnValue As PingReply

returnValue = instance.Send(hostNameOrAddress)
public PingReply Send (
    string hostNameOrAddress
)
public:
PingReply^ Send (
    String^ hostNameOrAddress
)
public PingReply Send (
    String hostNameOrAddress
)
public function Send (
    hostNameOrAddress : String
) : PingReply

パラメータ

hostNameOrAddress

ICMP エコー メッセージの送信コンピュータ識別する String。このパラメータの値には、ホスト名または IP アドレス文字列形式指定できます

戻り値
ICMP エコー応答メッセージ受信され場合は、そのメッセージに関する情報提供しメッセージ受信されなかった場合は、エラー原因提供する PingReply オブジェクト

例外例外
例外種類条件

ArgumentNullException

hostNameOrAddressnull 参照 (Visual Basic では Nothing) または空の文字列 ("") です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

hostNameOrAddress有効な IP アドレス解決できませんでした

ObjectDisposedException

このオブジェクト破棄されています。

解説解説

このメソッドは、32 Byteデータ バッファICMP エコー メッセージと共に送信します。このメソッドは、ICMP エコー応答メッセージを 5 秒間待ちますその時間内応答受信しない場合メソッドから制御戻りStatus プロパティに TimedOut が設定されます。

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合Status は PacketTooBig に設定されます。パケットまたはパケット フラグメント (分割されていた場合) は、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例

メソッド呼び出しについては、次のコード例参照してください

public static void SimplePing
 ()
{
    Ping pingSender = new Ping ();
    PingReply reply = pingSender.Send ("www.contoso.com");

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (String, Int32)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

例外例外
例外種類条件

ArgumentNullException

hostNameOrAddressnull 参照 (Visual Basic では Nothing) または空の文字列 ("") です。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

SocketException

hostNameOrAddress有効な IP アドレス解決できませんでした

ObjectDisposedException

このオブジェクト破棄されています。

解説解説

timeout パラメータによって指定され時間以内ICMP エコー応答メッセージ受信されなかった場合ICMP エコー失敗しStatus プロパティに TimedOut が設定されます。

メモメモ

timeout指定した数値が非常に小さ場合timeoutミリ秒数が経過した後に Ping応答受信されることもあります

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合Status は PacketTooBig に設定されます。パケットまたはパケット フラグメント (分割されていた場合) は、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (IPAddress)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定した IPAddress を持つコンピュータICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

例外例外
例外種類条件

ArgumentNullException

addressnull 参照 (Visual Basic では Nothing) です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

address有効な IP アドレスではありません。

ObjectDisposedException

このオブジェクト破棄されています。

解説解説

このメソッドは、address指定されるホストに、32 Byteデータ バッファICMP エコー メッセージと共に送信します。このメソッドは、ICMP エコー応答メッセージを 5 秒間待ちますその時間内応答受信しない場合メソッドから制御戻りStatus プロパティに TimedOut が設定されます。

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合Status は PacketTooBig に設定されます。パケットまたはパケット フラグメント (分割されていた場合) は、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例

メソッド呼び出しについては、次のコード例参照してください

public static void LocalPing
 ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;
    PingReply reply = pingSender.Send (address);

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (IPAddress, Int32, Byte[])

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

public:
PingReply^ Send (
    IPAddress^ address, 
    int timeout, 
    array<unsigned char>^ buffer
)

パラメータ

address

ICMP エコー メッセージの送信コンピュータ識別する IPAddress

timeout

エコー メッセージ送信してから ICMP エコー応答メッセージを待つ時間最大値 (ミリ秒単位) を指定する Int32 値。

buffer

ICMP エコー メッセージと共に送信されるデータ格納されICMP エコー応答メッセージ返される Byte 配列配列には、65,500 バイト超えるデータ格納することはできません。

戻り値
ICMP エコー応答メッセージ受信され場合は、そのメッセージに関する情報提供しメッセージ受信されなかった場合は、エラー原因提供する PingReply オブジェクトパケットMTU (Maximum Transmission Unit) を超えている場合、このメソッドは PacketTooBig を返します

例外例外
例外種類条件

ArgumentNullException

addressnull 参照 (Visual Basic では Nothing) です。

または

buffernull 参照 (Visual Basic では Nothing) です。または、bufferサイズが 65500 バイト超えてます。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

address有効な IP アドレスではありません。

ObjectDisposedException

このオブジェクト破棄されています。

ArgumentException

bufferサイズが 65500 バイト超えてます。

解説解説

timeout パラメータによって指定され時間以内ICMP エコー応答メッセージ受信されなかった場合ICMP エコー失敗しStatus プロパティに TimedOut が設定されます。

メモメモ

timeout指定した数値が非常に小さ場合timeoutミリ秒数が経過した後に Ping応答受信されることもあります

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合StatusPacketTooBig設定されます。

パケットまたはパケット フラグメントは、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例

このメソッド呼び出す方法次のコード例示します

public static void LocalPingTimeout
 ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;

    // Create a buffer of 32 bytes of data to be transmitted.
    string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
    byte[] buffer = Encoding.ASCII.GetBytes (data);

    // Wait 10 seconds for a reply.
    int timeout = 10000;
    PingReply reply = pingSender.Send (address, timeout, buffer);

    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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (String, Int32, Byte[])

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

Public Function Send ( _
    hostNameOrAddress As String, _
    timeout As Integer, _
    buffer As Byte() _
) As PingReply
Dim instance As Ping
Dim hostNameOrAddress As String
Dim timeout As Integer
Dim buffer As Byte()
Dim returnValue As PingReply

returnValue = instance.Send(hostNameOrAddress, timeout, buffer)
public PingReply Send (
    string hostNameOrAddress,
    int timeout,
    byte[] buffer
)
public:
PingReply^ Send (
    String^ hostNameOrAddress, 
    int timeout, 
    array<unsigned char>^ buffer
)
public PingReply Send (
    String hostNameOrAddress, 
    int timeout, 
    byte[] buffer
)
public function Send (
    hostNameOrAddress : String, 
    timeout : int, 
    buffer : byte[]
) : PingReply

パラメータ

hostNameOrAddress

ICMP エコー メッセージの送信コンピュータ識別する String。このパラメータの値には、ホスト名または IP アドレス文字列形式指定できます

timeout

エコー メッセージ送信してから ICMP エコー応答メッセージを待つ時間最大値 (ミリ秒単位) を指定する Int32 値。

buffer

ICMP エコー メッセージと共に送信されるデータ格納されICMP エコー応答メッセージ返される Byte 配列配列には、65,500 バイト超えるデータ格納することはできません。

戻り値
ICMP エコー応答メッセージ受信され場合は、そのメッセージに関する情報提供しメッセージ受信されなかった場合は、エラー原因提供する PingReply オブジェクト

例外例外
例外種類条件

ArgumentNullException

hostNameOrAddressnull 参照 (Visual Basic では Nothing) または空の文字列 ("") です。

または

buffernull 参照 (Visual Basic では Nothing) です。または、bufferサイズが 65500 バイト超えてます。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

SocketException

hostNameOrAddress有効な IP アドレス解決できませんでした

ObjectDisposedException

このオブジェクト破棄されています。

ArgumentException

bufferサイズが 65500 バイト超えてます。

解説解説

timeout パラメータによって指定され時間以内ICMP エコー応答メッセージ受信されなかった場合ICMP エコー失敗しStatus プロパティに TimedOut が設定されます。

メモメモ

timeout指定した数値が非常に小さ場合timeoutミリ秒数が経過した後に Ping応答受信されることもあります

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合Status は PacketTooBig に設定されます。

パケットまたはパケット フラグメントは、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (IPAddress, Int32, Byte[], PingOptions)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定しICMP エコー メッセージ パケットフラグメンテーション有効期間 (TTL: time-to-live) の値を制御できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

Public Function Send ( _
    address As IPAddress, _
    timeout As Integer, _
    buffer As Byte(), _
    options As PingOptions _
) As PingReply
public PingReply Send (
    IPAddress address,
    int timeout,
    byte[] buffer,
    PingOptions options
)
public:
PingReply^ Send (
    IPAddress^ address, 
    int timeout, 
    array<unsigned char>^ buffer, 
    PingOptions^ options
)
public PingReply Send (
    IPAddress address, 
    int timeout, 
    byte[] buffer, 
    PingOptions options
)
public function Send (
    address : IPAddress, 
    timeout : int, 
    buffer : byte[], 
    options : PingOptions
) : PingReply

パラメータ

address

ICMP エコー メッセージの送信コンピュータ識別する IPAddress

timeout

エコー メッセージ送信してから ICMP エコー応答メッセージを待つ時間最大値 (ミリ秒単位) を指定する Int32 値。

buffer

ICMP エコー メッセージと共に送信されるデータ格納されICMP エコー応答メッセージ返される Byte 配列配列には、65,500 バイト超えるデータ格納することはできません。

options

ICMP エコー メッセージ パケットフラグメンテーション有効期間 (TTL: time-to-live) の値を制御するために使用される PingOptions オブジェクト

戻り値
ICMP エコー応答メッセージ受信され場合は、そのメッセージに関する情報提供しメッセージ受信されなかった場合は、エラー原因提供する PingReply オブジェクトパケットMTU (Maximum Transmission Unit) を超えている場合、このメソッドは PacketTooBig を返します

例外例外
例外種類条件

ArgumentNullException

addressnull 参照 (Visual Basic では Nothing) です。

または

buffernull 参照 (Visual Basic では Nothing) です。または、bufferサイズが 65500 バイト超えてます。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

address有効な IP アドレスではありません。

ObjectDisposedException

このオブジェクト破棄されています。

ArgumentException

bufferサイズが 65500 バイト超えてます。

解説解説
使用例使用例

このメソッド呼び出す方法次のコード例示します

public static void ComplexLocalPing
 ()
{
    // Ping's the local machine.
    Ping pingSender = new Ping ();
    IPAddress address = IPAddress.Loopback;

    // Create a buffer of 32 bytes of data to be transmitted.
    string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
    byte[] buffer = Encoding.ASCII.GetBytes (data);

    // Wait 10 seconds for a reply.
    int timeout = 10000;

    // 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);
    PingReply reply = pingSender.Send (address, 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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド (String, Int32, Byte[], PingOptions)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定しICMP パケットフラグメンテーション有効期間 (TTL: time-to-live) 値を制御できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

Public Function Send ( _
    hostNameOrAddress As String, _
    timeout As Integer, _
    buffer As Byte(), _
    options As PingOptions _
) As PingReply
Dim instance As Ping
Dim hostNameOrAddress As String
Dim timeout As Integer
Dim buffer As Byte()
Dim options As PingOptions
Dim returnValue As PingReply

returnValue = instance.Send(hostNameOrAddress, timeout, buffer, options)
public PingReply Send (
    string hostNameOrAddress,
    int timeout,
    byte[] buffer,
    PingOptions options
)
public:
PingReply^ Send (
    String^ hostNameOrAddress, 
    int timeout, 
    array<unsigned char>^ buffer, 
    PingOptions^ options
)
public PingReply Send (
    String hostNameOrAddress, 
    int timeout, 
    byte[] buffer, 
    PingOptions options
)
public function Send (
    hostNameOrAddress : String, 
    timeout : int, 
    buffer : byte[], 
    options : PingOptions
) : PingReply

パラメータ

hostNameOrAddress

ICMP エコー メッセージの送信コンピュータ識別する String。このパラメータの値には、ホスト名または IP アドレス文字列形式指定できます

timeout

エコー メッセージ送信してから ICMP エコー応答メッセージを待つ時間最大値 (ミリ秒単位) を指定する Int32 値。

buffer

ICMP エコー メッセージと共に送信されるデータ格納されICMP エコー応答メッセージ返される Byte 配列配列には、65,500 バイト超えるデータ格納することはできません。

options

ICMP エコー メッセージ パケットフラグメンテーション有効期間 (TTL: time-to-live) の値を制御するために使用される PingOptions オブジェクト

戻り値
ICMP エコー応答メッセージ受信され場合は、そのメッセージに関する情報提供しメッセージ受信されなかった場合は、エラー原因提供する PingReply オブジェクト

例外例外
例外種類条件

ArgumentNullException

hostNameOrAddressnull 参照 (Visual Basic では Nothing) かまたは長さ 0 の文字列です。

または

buffernull 参照 (Visual Basic では Nothing) です。または、bufferサイズが 65500 バイト超えてます。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

hostNameOrAddress有効な IP アドレス解決できませんでした

ObjectDisposedException

このオブジェクト破棄されています。

ArgumentException

bufferサイズが 65500 バイト超えてます。

解説解説
使用例使用例

このメソッド呼び出す方法次のコード例示します

public static void ComplexPing
 ()
{
    Ping pingSender = new Ping ();

    // Create a buffer of 32 bytes of data to be transmitted.
    string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
    byte[] buffer = Encoding.ASCII.GetBytes (data);

    // Wait 10 seconds for a reply.
    int timeout = 10000;

    // 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);

    // Send the request.
    PingReply reply = pingSender.Send ("www.contoso.com", 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);
    }
    else
    {
        Console.WriteLine (reply.Status);
    }
}

.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Ping.Send メソッド

ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージリモート コンピュータ送信し、そのリモート コンピュータから対応する ICMP エコー応答メッセージ受信します
オーバーロードの一覧オーバーロードの一覧

名前 説明
Ping.Send (IPAddress) 指定した IPAddress を持つコンピュータICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します
Ping.Send (String) ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します
Ping.Send (IPAddress, Int32) 指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます
Ping.Send (String, Int32) ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます
Ping.Send (IPAddress, Int32, Byte[]) 指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます
Ping.Send (String, Int32, Byte[]) 指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます
Ping.Send (IPAddress, Int32, Byte[], PingOptions) 指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定しICMP エコー メッセージ パケットフラグメンテーション有効期間 (TTL: time-to-live) の値を制御できます
Ping.Send (String, Int32, Byte[], PingOptions) 指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ指定されコンピュータ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定しICMP パケットフラグメンテーション有効期間 (TTL: time-to-live) 値を制御できます
参照参照

関連項目

Ping クラス
Ping メンバ
System.Net.NetworkInformation 名前空間

Ping.Send メソッド (IPAddress, Int32)

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定されIPAddress を持つコンピュータに、指定されデータ バッファと共に ICMP (インターネット コントロール メッセージ プロトコル) エコー メッセージ送信し、そのコンピュータから対応する ICMP エコー応答メッセージ受信します。このオーバーロード使用して操作タイムアウト値を指定できます

名前空間: System.Net.NetworkInformation
アセンブリ: System (system.dll 内)
構文構文

例外例外
例外種類条件

ArgumentNullException

addressnull 参照 (Visual Basic では Nothing) です。

ArgumentOutOfRangeException

timeout が 0 未満です。

InvalidOperationException

SendAsync の呼び出し実行中です。

NotSupportedException

addressIPv6 アドレスですが、ローカル コンピュータでは Windows 2000 より前のオペレーティング システム動作してます。

PingException

ICMP メッセージの送信中または受信中に例外スローされました。スローされた実際の例外については内部例外参照してください

SocketException

address有効な IP アドレスではありません。

ObjectDisposedException

このオブジェクト破棄されています。

解説解説

timeout パラメータによって指定され時間以内ICMP エコー応答メッセージ受信されなかった場合ICMP エコー失敗しStatus プロパティに TimedOut が設定されます。

メモメモ

timeout指定した数値が非常に小さ場合timeoutミリ秒数が経過した後に Ping応答受信されることもあります

このオーバーロードでは、パケットフラグメンテーション転送既定設定使用されます。ICMP エコー メッセージ格納されパケットは、合計パケット サイズが、1 つルーティング ノードローカル コンピュータリモート コンピュータ間で送信できる最大パケット サイズ超えた場合途中で分割される場合あります断片化防ぐにはoptions パラメータ受け取る、Sendいずれかメソッド使用し、DontFragment プロパティtrue設定しますDontFragmenttrue のときに、合計パケット サイズが、ローカル コンピュータリモート コンピュータの間にあるいずれかルーティング ノード送信できる最大パケット サイズ超えた場合ICMP エコー要求失敗します。これが発生した場合Status は PacketTooBig に設定されます。

パケットまたはパケット フラグメントは、破棄されるまでに、ルーティング ノードによって最大 128 回転されます。この設定変更するには、options パラメータ受け取Sendオーバーロード使用しTtl プロパティ必要な値に設定しますパケット指定回数転送されても送信先到達しなかった場合パケット破棄されICMP エコー要求失敗します。これが発生した場合Status は TtlExpired に設定されます。

使用例使用例
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Ping.Send メソッド」の関連用語

Ping.Send メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Ping.Send メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS