Domain Detective

API Reference

Class

DnsResponse

Namespace DnsClientX
Assembly DnsClientX

Represents a DNS message returned by a resolver. The structure mirrors the response format described in RFC 1035.

Inheritance

  • Object
  • DnsResponse

Remarks

Instances are produced by ClientX when a query completes.

Usage

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters

Constructors

Methods

AddServerDetails(DnsClientX.Configuration configuration, System.Nullable{DnsClientX.Transport} usedTransport) #

Adds the server details to the DNS questions for output purposes.

Parameters

configuration DnsClientX.Configuration required
Client configuration used when querying.
usedTransport System.Nullable{DnsClientX.Transport} required
Optional explicit transport override for cases such as UDP-to-TCP fallback.

Properties

public DnsResponseCode Status { get; set; } #
JsonPropertyName("Status")

The status code of the DNS response.

public Int32 RetryCount { get; set; } #
JsonIgnore

Number of retry attempts performed before receiving this response.

public Boolean IsTruncated { get; set; } #
JsonPropertyName("TC")

Indicates whether the response was truncated. This can occur if the response is larger than the maximum size allowed by the transmission channel. This is typically false for DNS over HTTPS, as most providers support the maximum response size.

public Boolean Truncated { get; } #
JsonIgnore

Convenience mirror of IsTruncated.

public Boolean IsRecursionDesired { get; set; } #
JsonPropertyName("RD")

Indicates whether recursion was requested in the query. This is typically true for DNS over HTTPS.

public Boolean IsRecursionAvailable { get; set; } #
JsonPropertyName("RA")

Indicates whether recursion is available on the DNS server. This is typically true for DNS over HTTPS.

public Boolean AuthenticData { get; set; } #
JsonPropertyName("AD")

Indicates whether the DNS server believes the response is authentic and has been validated by DNSSEC.

public Boolean CheckingDisabled { get; set; } #
JsonPropertyName("CD")

Indicates whether a security-aware resolver should disable DNSSEC signature validation.

public DnsQuestion[] Questions { get; set; } #
JsonPropertyName("Question")

The questions that were asked in the DNS query. Some providers do not return the question section in their response. In those cases this property will be null.

public DnsAnswer[] Answers { get; set; } #
JsonPropertyName("Answer")

The answers provided by the DNS server.

public Nullable<Int32> TtlMin { get; set; } #
JsonIgnore

Minimum TTL across Answers (seconds).

public Nullable<Double> TtlAvg { get; set; } #
JsonIgnore

Average TTL across Answers (seconds).

public Object[] TypedAnswers { get; set; } #
JsonIgnore

When typed parsing is enabled, contains typed representations of Answers.

public String ServerAddress { get; set; } #
JsonIgnore

Address of the DNS server that returned this response.

public Transport UsedTransport { get; set; } #
JsonIgnore

Transport used to obtain this response.

public DnsResolverEndpoint UsedEndpoint { get; set; } #
JsonIgnore

Endpoint used to obtain this response.

public TimeSpan RoundTripTime { get; set; } #
JsonIgnore

Measured round-trip time for the query.

public DnsQueryErrorCode ErrorCode { get; set; } #
JsonIgnore

Normalized error code for failures.

public Exception Exception { get; set; } #
JsonIgnore

Captured exception for failures (if available).

public DnsAnswerMinimal[] AnswersMinimal { get; } #
JsonIgnore

Gets the answers in their minimal form.

public DnsAnswer[] Authorities { get; set; } #
JsonPropertyName("Authority")

The authority records provided by the DNS server.

public DnsAnswer[] Additional { get; set; } #
JsonPropertyName("Additional")

Any additional records provided by the DNS server.

public String Error { get; set; } #
JsonPropertyName("error")

An error message, if there was an issue with the DNS query. This is typically included when the HTTP status code is 400 (Bad Request).

public String Comments { get; set; } #
JsonPropertyName("Comment") JsonConverter(typeof(CommentConverter))

An extended DNS error code message. For more information, see the Cloudflare documentation.

public ExtendedDnsError[] ExtendedDnsErrors { get; set; } #
JsonPropertyName("extended_dns_errors")

Extended DNS error information provided by the DNS server.

public ExtendedDnsErrorInfo[] ExtendedDnsErrorInfo { get; } #
JsonIgnore

Gets the extended DNS error information in a simplified form.

public String EdnsClientSubnet { get; set; } #
JsonPropertyName("edns_client_subnet")

The client subnet information that the DNS server used to generate the response.

Fields

_answersMinimal #

Gets the answers in their minimal form.

{{ include "footer" }}