PingReply.Options Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.