Package io.netty.resolver.dns
package io.netty.resolver.dns
An alternative to Java's built-in domain name lookup mechanism that resolves a domain name asynchronously,
which supports the queries of an arbitrary DNS record type as well.
-
ClassDescriptionCache which stores the nameservers that should be used to resolve a specific hostname.
AuthoritativeDnsServerCache
implementation which delegates all operations to a wrappedDnsCache
.Combines twoDnsQueryLifecycleObserver
into a singleDnsQueryLifecycleObserver
.Combines twoDnsQueryLifecycleObserverFactory
into a singleDnsQueryLifecycleObserverFactory
.Cache<E>Abstract cache that automatically removes entries for a hostname once the TTL for an entry is reached.Default implementation ofAuthoritativeDnsServerCache
, backed by aConcurrentMap
.Default implementation ofDnsCache
, backed by aConcurrentMap
.Default implementation of aDnsCnameCache
.ADnsServerAddressStreamProvider
which will use predefined default DNS servers to use for DNS resolution.Decodes anInetAddress
from an A or AAAADnsRawRecord
.A cache for DNS resolution entries.Represents the results from a previous DNS query which can be cached.A cache forCNAME
s.A metadata carrier exception, to propagateDnsResponseCode
information as an enrichment within theUnknownHostException
cause.A DNS-basedInetNameResolver
.ADnsNameResolver
builder.ARuntimeException
raised whenDnsNameResolver
failed to perform a successful query.ADnsNameResolverException
raised whenDnsNameResolver
failed to perform a successful query because of an timeout.Special data-structure that will allow to retrieve the next query id to use, while still guarantee some sort of randomness.Provides a query if from a range of possible ids.This interface provides visibility into individual DNS queries.Used to generate new instances ofDnsQueryLifecycleObserver
.Holds the closed DNS Servers for a domain.Provides an infinite sequence of DNS server addresses toDnsNameResolver
.An infinite stream of DNS server addresses.Provides an opportunity to override whichDnsServerAddressStream
is used to resolve a specific hostname.Utility methods related toDnsServerAddressStreamProvider
.An infinite stream of DNS server addresses, that requests feedback to be returned to it.ADnsQueryLifecycleObserverFactory
that enables detailed logging in theDnsNameResolver
.ADnsServerAddressStreamProvider
which iterates through a collection ofDnsServerAddressStreamProvider
until the first non-null
result is found.SpecialComparator
implementation to sort the nameservers to use when follow redirects.A noopAuthoritativeDnsServerCache
that actually never caches anything.A noop DNS cache that actually never caches anything.Looks up thenameserver
s from the/etc/resolv.conf
file, intended for Linux and macOS.AAddressResolverGroup
ofDnsNameResolver
s that supports random selection of destination addresses if multiple are provided by the nameserver.ADnsServerAddressStreamProvider
which is backed by a sequential list of DNS servers.ADnsServerAddressStreamProvider
which always uses a single DNS server for resolution.A thread local based address stream for a specific hostname.ADnsServerAddressStreamProvider
which is backed by a singleDnsServerAddresses
.Able to parse files such as /etc/resolv.conf and /etc/resolver to respect the system default domain servers.Represents options defined in a file of the format etc/resolv.conf.