Class DnssecHostResolver.Builder

java.lang.Object
org.microproxy.dns.DnssecHostResolver.Builder
Enclosing class:
DnssecHostResolver

public static final class DnssecHostResolver.Builder extends Object
Configures a DnssecHostResolver.
  • Method Details

    • servers

      Recursive resolvers to query; they must pass DNSSEC records through.
      Parameters:
      servers - the recursive DNS server addresses
      Returns:
      this builder
    • resolver

      public DnssecHostResolver.Builder resolver(String spec)
      Where to send queries, as a DNS-over-HTTPS URL (https://cloudflare-dns.com/dns-query) or a comma-separated list of resolver addresses (9.9.9.9,149.112.112.112:53).
      Parameters:
      spec - the resolver URL or comma-separated resolver addresses
      Returns:
      this builder
    • transport

      public DnssecHostResolver.Builder transport(DnsTransport transport)
      A custom transport (e.g. DNS over HTTPS); overrides servers.
      Parameters:
      transport - the DNS query transport
      Returns:
      this builder
    • timeout

      public DnssecHostResolver.Builder timeout(Duration timeout)
      Per-attempt UDP/TCP timeout.
      Parameters:
      timeout - the per-attempt UDP/TCP query timeout
      Returns:
      this builder
    • policy

      Sets the policy for accepting insecure DNS responses.
      Parameters:
      policy - the policy for accepting DNS answers without a secure chain
      Returns:
      this builder
    • trustAnchors

      public DnssecHostResolver.Builder trustAnchors(List<String> dsRecords)
      Root DS records in the form ". 20326 8 2 E06D..."; defaults to the IANA anchors.
      Parameters:
      dsRecords - the root DS trust-anchor records
      Returns:
      this builder
    • clock

      public DnssecHostResolver.Builder clock(Clock clock)
      The clock used for signature validity and caching.
      Parameters:
      clock - the clock used for timestamps and expiry checks
      Returns:
      this builder
    • build

      public DnssecHostResolver build()
      Creates the configured validating DNS resolver.
      Returns:
      the configured validating DNS resolver