Aracılığıyla paylaş


PingReply.Options Özellik

Tanım

Yanıtı bir İnternet Denetim İletisi Protokolü (ICMP) yankı isteğine iletmek için kullanılan seçenekleri alır.

public:
 property System::Net::NetworkInformation::PingOptions ^ Options { System::Net::NetworkInformation::PingOptions ^ get(); };
public System.Net.NetworkInformation.PingOptions? Options { get; }
public System.Net.NetworkInformation.PingOptions Options { get; }
member this.Options : System.Net.NetworkInformation.PingOptions
Public ReadOnly Property Options As PingOptions

Özellik Değeri

PingOptions Yaşam Süresi 'ni (TTL) ve yanıtı Status iletmek için kullanılan parçalanma yönergesini içeren nesne ; Successdeğilse, null.

Örnekler

Aşağıdaki kod örneği zaman uyumlu olarak bir ICMP yankı isteği gönderir ve bu özellik tarafından döndürülen nesnede PingOptions depolanan değerleri görüntüler.

void LocalPing()
{
   
   // Ping's the local machine.
   Ping ^ pingSender = gcnew 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 );
   }
}
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);
    }
}

Açıklamalar

TTL, düğümlerin bir paketi kaynağı ve hedefi arasında hareket ettikçe kaç kez iletebileceğini tanımlar. Atlamalar olarak da bilinen iletilenlerin sayısı TTL için belirtilen değeri aşarsa paket teslim edilemez kabul edilir ve atılır.

DontFragment ICMP yankı isteğinde belirtilen değer paket parçalanmasını denetler. ise true ve paket boyutu paket tarafından alınan ağ yolunun en yüksek iletim birimini aşıyorsaDontFragment, paket atılır ve PacketTooBig hata döndürülür.

Şunlara uygulanır