Crate blastdns

Crate blastdns 

Source

Structs§

BlastDNSClient
Primary API surface for performing DNS lookups concurrently.
BlastDNSConfig
Configuration knobs for [BlastDNSClient].
MockBlastDNSClient
Mock DNS client for testing purposes.

Enums§

BlastDNSError

Constants§

DEFAULT_CACHE_CAPACITY
Default cache capacity (0 = disabled).
DEFAULT_CACHE_MAX_TTL
Default maximum TTL for cached entries.
DEFAULT_CACHE_MIN_TTL
Default minimum TTL for cached entries.
DEFAULT_MAX_RETRIES
Default number of retry attempts per hostname.
DEFAULT_PURGATORY_SENTENCE
Default purgatory sentence duration.
DEFAULT_PURGATORY_THRESHOLD
Default consecutive error count needed to send a worker to purgatory.
DEFAULT_REQUEST_TIMEOUT
Default timeout in milliseconds used for each resolver request.
DEFAULT_THREADS_PER_RESOLVER
Default number of worker tasks spawned per resolver.

Traits§

DnsResolver
Core trait for DNS resolution. Types only need to implement resolve_full, all other methods have default implementations.

Functions§

check_ulimits
Checks if the system’s NOFILE limit is sufficient for the given configuration. Each worker needs file descriptors for UDP sockets, plus overhead.
get_system_resolvers
Get system DNS resolver IP addresses from OS configuration. Works on Unix, Windows, macOS, and Android.

Type Aliases§

BatchResult
Result item produced by BlastDNSClient::resolve_batch_full.
BatchResultBasic
Result item produced by BlastDNSClient::resolve_batch.