quad9

package
v0.6.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 29, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultProvides is default provides, Recommended (Secure)
	DefaultProvides = iota
	// SecuredProvides Provides: Security blocklist, DNSSEC, No EDNS Client-Subnet sent
	SecuredProvides
	// UnsecuredProvides Provides: No security blocklist, no DNSSEC, No EDNS Client-Subnet sent
	UnsecuredProvides
)

Variables

View Source
var (
	// Upstream is DoH query upstream
	Upstream = map[int]string{
		DefaultProvides:   "https://9.9.9.9:5053/dns-query",
		SecuredProvides:   "https://dns9.quad9.net:5053/dns-query",
		UnsecuredProvides: "https://dns10.quad9.net:5053/dns-query",
	}
)

Functions

func Author

func Author() string

Author returns package author

func License

func License() string

License returns package license

func Version

func Version() string

Version returns package version

Types

type Provider

type Provider struct {
	// contains filtered or unexported fields
}

Provider is a DoH provider client

func New

func New() *Provider

New returns a new quad9 provider client

func (*Provider) ECSQuery

func (c *Provider) ECSQuery(ctx context.Context, d dns.Domain, t dns.Type, s dns.ECS) (*dns.Response, error)

ECSQuery do DoH query with the edns0-client-subnet option

func (*Provider) Query

func (c *Provider) Query(ctx context.Context, d dns.Domain, t dns.Type) (*dns.Response, error)

Query do DoH query

func (*Provider) SetProvides

func (c *Provider) SetProvides(p int) error

SetProvides set upstream provides type, quad9 does NOT supported

func (*Provider) String

func (c *Provider) String() string

String returns string of provider

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL