Aracılığıyla paylaş


PingOptions Sınıf

Tanım

Veri paketlerinin nasıl Ping iletilmesini denetlemek için kullanılır.

public ref class PingOptions
public class PingOptions
type PingOptions = class
Public Class PingOptions
Devralma
PingOptions

Örnekler

Aşağıdaki kod örneği, komut satırında belirtilen konağa ICMP yankı isteği göndermek için ve PingOptionsPingReply sınıflarını kullanırPing.

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);
            }
        }
    }
}
open System.Net.NetworkInformation
open System.Text

// args[0] can be an IPaddress or host name.
[<EntryPoint>]
let main args =
    let pingSender = new Ping()

    // Use the default Ttl value which is 128,
    // but change the fragmentation behavior.
    let options = PingOptions()
    options.DontFragment <- true

    // Create a buffer of 32 bytes of data to be transmitted.
    let data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
    let buffer = Encoding.ASCII.GetBytes data
    let timeout = 120
    let reply: PingReply = pingSender.Send(args.[0], timeout, buffer, options)

    match reply.Status with
    | IPStatus.Success ->
        printfn "Address: %O" reply.Address
        printfn "RoundTrip time: %d" reply.RoundtripTime
        printfn "Time to live: %d" reply.Options.Ttl
        printfn "Don't fragment: %b" reply.Options.DontFragment
        printfn "Buffer size: %d" reply.Buffer.Length
        0
    | _ ->
        eprintfn "Error sending ping: %O" reply
        eprintfn "Error was: %O" reply.Status
        1

Açıklamalar

sınıfı, PingOptions İnternet Denetim İletisi Protokolü (ICMP) yankı isteği paketlerinin nasıl iletilmesini denetlemek için ve DontFragment özelliklerini sağlarTtl.

özelliği, Ttl sınıfı tarafından gönderilen paketler için Yaşam Süresi'ni Ping belirtir. Bu değer, bir Ping paketi atmadan önce iletebilecek yönlendirme düğümlerinin sayısını gösterir. Kaynak bilgisayardan hedef bilgisayara paket göndermek için atlama olarak da bilinen iletim sayısını test etmek istiyorsanız bu seçeneğin ayarlanması yararlı olur.

özelliği, DontFragment uzak bir konağa gönderilen verilerin birden çok pakete bölünip bölünemeyeceğini denetler. Bu seçenek, paketi iletmek için kullanılan yönlendiricilerin ve ağ geçitlerinin en yüksek iletim birimini (MTU) test etmek istiyorsanız kullanışlıdır.

sınıfının örnekleri PingOptions ve yöntemlerine Send geçirilir ve PingReply sınıfı özelliği aracılığıyla Options örneklerini PingOptions döndürür.SendAsync

Bir PingOptions örneğinin ilk özellik değerlerinin listesini görmek için PingOptions oluşturucusuna bakın.

Oluşturucular

Name Description
PingOptions()

PingOptions sınıfının yeni bir örneğini başlatır.

PingOptions(Int32, Boolean)

Sınıfının yeni bir örneğini PingOptions başlatır ve Yaşam Süresi ile parçalanma değerlerini ayarlar.

Özellikler

Name Description
DontFragment

Uzak konağa gönderilen verilerin parçalanmalarını denetleen bir Boolean değer alır veya ayarlar.

Ttl

Verileri atmadan önce iletebilecek Ping yönlendirme düğümlerinin sayısını alır veya ayarlar.

Yöntemler

Name Description
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır