Module dns

Module dns 

Source
Expand description

Configurable DNS resolver.

The main export is the DnsResolver struct. It provides methods to resolve domain names to IPv4 and IPv6 addresses, and to look up TXT records. Additionally, the resolver features methods to resolve the EndpointInfo for an iroh EndpointId from _iroh TXT records. See the crate::endpoint_info module documentation for details on how iroh endpoint records are structured.

Structs§

Builder
Builder for DnsResolver.
DnsResolver
The DNS resolver used throughout iroh.
NameserverConfig
A DNS nameserver configuration for a single server.
StaggeredError
Error returned when a staggered call fails.
TxtRecordData
Record data for a TXT record.

Enums§

DnsError
Potential errors related to DNS operations.
DnsProtocol
Protocols over which DNS records can be resolved.
FallbackMode
How the resolver uses its fallback nameservers relative to the primary ones.
LookupError
Potential errors related to DNS endpoint address lookups.

Constants§

DNS_TIMEOUT
Default DNS query timeout.
N0_DNS_ENDPOINT_ORIGIN_PROD
The n0 address lookup DNS origin, for production.
N0_DNS_ENDPOINT_ORIGIN_STAGING
The n0 address lookup DNS origin, for testing.

Traits§

Resolver
Trait for DNS resolvers used in iroh.

Functions§

install_android_jni_context⚠
Exposes a JVM to iroh so that we can read the system’s DNS configuration.

Type Aliases§

BoxIter
Boxed iterator alias.