dns

package
v0.0.0-...-133c9a2 Latest Latest
Warning

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

Go to latest
Published: Oct 10, 2022 License: GPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Main, Fallback []NameServer
	Default        []NameServer
	IPv6           bool
	FallbackFilter FallbackFilter
}

type FallbackFilter

type FallbackFilter struct {
	GeoIP  bool
	IPCIDR []*net.IPNet
	Domain []string
}

type NameServer

type NameServer struct {
	Net  string
	Addr string
}

type Resolver

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

func DefaultResolver

func DefaultResolver() *Resolver

func NewResolver

func NewResolver(config Config) *Resolver

func (*Resolver) Exchange

func (r *Resolver) Exchange(m *D.Msg) (msg *D.Msg, err error)

Exchange a batch of dns request, and it use cache

func (*Resolver) ResolveIP

func (r *Resolver) ResolveIP(host string) (ip net.IP, err error)

ResolveIP request with TypeA and TypeAAAA, priority return TypeA

func (*Resolver) ResolveIPv4

func (r *Resolver) ResolveIPv4(host string) (ip net.IP, err error)

ResolveIPv4 request with TypeA

func (*Resolver) ResolveIPv6

func (r *Resolver) ResolveIPv6(host string) (ip net.IP, err error)

ResolveIPv6 request with TypeAAAA

Jump to

Keyboard shortcuts

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