Documentation ¶
Index ¶
- Variables
- func FakeIPEnabled() bool
- func FindHostByIP(ip net.IP) (string, bool)
- func IsExistFakeIP(ip net.IP) bool
- func IsFakeIP(ip net.IP) bool
- func LookupIP(ctx context.Context, host string) ([]net.IP, error)
- func LookupIPWithResolver(ctx context.Context, host string, r Resolver) ([]net.IP, error)
- func LookupIPv4(ctx context.Context, host string) ([]net.IP, error)
- func LookupIPv6(ctx context.Context, host string) ([]net.IP, error)
- func MappingEnabled() bool
- func ResolveIP(host string) (net.IP, error)
- func ResolveIPv4(host string) (net.IP, error)
- func ResolveIPv6(host string) (net.IP, error)
- type Enhancer
- type Resolver
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // DefaultResolver aim to resolve ip DefaultResolver Resolver // DisableIPv6 means don't resolve ipv6 host // default value is true DisableIPv6 = true // DefaultHosts aim to resolve hosts DefaultHosts = trie.New() // DefaultDNSTimeout defined the default dns request timeout DefaultDNSTimeout = time.Second * 5 )
Functions ¶
func FakeIPEnabled ¶
func FakeIPEnabled() bool
func IsExistFakeIP ¶
func LookupIPWithResolver ¶
LookupIPWithResolver same as ResolveIP, but with a resolver
func LookupIPv4 ¶
LookupIPv4 with a host, return ipv4 list
func LookupIPv6 ¶
LookupIPv6 with a host, return ipv6 list
func MappingEnabled ¶
func MappingEnabled() bool
func ResolveIPv4 ¶
ResolveIPv4 with a host, return ipv4
Types ¶
type Enhancer ¶
type Enhancer interface { FakeIPEnabled() bool MappingEnabled() bool IsFakeIP(net.IP) bool IsExistFakeIP(net.IP) bool FindHostByIP(net.IP) (string, bool) }
var DefaultHostMapper Enhancer
type Resolver ¶
type Resolver interface { LookupIP(ctx context.Context, host string) ([]net.IP, error) LookupIPv4(ctx context.Context, host string) ([]net.IP, error) LookupIPv6(ctx context.Context, host string) ([]net.IP, error) ResolveIP(host string) (ip net.IP, err error) ResolveIPv4(host string) (ip net.IP, err error) ResolveIPv6(host string) (ip net.IP, err error) ExchangeContext(ctx context.Context, m *dns.Msg) (msg *dns.Msg, err error) }
Click to show internal directories.
Click to hide internal directories.