Documentation
¶
Index ¶
- Variables
- func ClientType() interface{}
- func FakeDNSEngineType() interface{}
- func LookupIPWithOption(client Client, domain string, option IPOption) ([]net.IP, error)
- func RCodeFromError(err error) uint16
- type Client
- type ClientWithFakeDNS
- type FakeDNSEngine
- type FakeDNSEngineRev0
- type IPOption
- type IPv4Lookup
- type IPv6Lookup
- type RCodeError
Constants ¶
This section is empty.
Variables ¶
var ErrEmptyResponse = errors.New("empty response")
ErrEmptyResponse indicates that DNS query succeeded but no answer was returned.
Functions ¶
func ClientType ¶
func ClientType() interface{}
ClientType returns the type of Client interface. Can be used for implementing common.HasType.
v2ray:api:beta
func FakeDNSEngineType ¶ added in v5.2.0
func FakeDNSEngineType() interface{}
FakeDNSEngineType returns the type of FakeDNSEngine interface. Can be used for implementing common.HasType.
v2ray:api:beta
func LookupIPWithOption ¶ added in v5.2.0
LookupIPWithOption is a helper function for querying DNS information from a dns.Client with dns.IPOption.
v2ray:api:beta
func RCodeFromError ¶
Types ¶
type Client ¶
type Client interface {
features.Feature
// LookupIP returns IP address for the given domain. IPs may contain IPv4 and/or IPv6 addresses.
LookupIP(domain string) ([]net.IP, error)
}
Client is a V2Ray feature for querying DNS information.
v2ray:api:stable
type ClientWithFakeDNS ¶ added in v5.2.0
type ClientWithFakeDNS interface {
// AsFakeDNSClient converts the client to dns.Client that enables FakeDNS querying option.
AsFakeDNSClient() Client
// AsFakeDNSEngine converts the client to dns.FakeDNSEngine that could serve FakeDNSEngine feature.
AsFakeDNSEngine() FakeDNSEngine
}
ClientWithFakeDNS is an optional feature for utilizing FakeDNS feature of DNS client.
v2ray:api:beta
type FakeDNSEngine ¶
type FakeDNSEngine interface {
features.Feature
// GetFakeIPForDomain returns fake IP addresses for the given domain, and registers the domain with the returned IPs.
GetFakeIPForDomain(domain string) []net.Address
// GetDomainFromFakeDNS returns the bound domain name for the given fake IP.
GetDomainFromFakeDNS(ip net.Address) string
}
FakeDNSEngine is a V2Ray feature for converting between domain and fake IPs.
v2ray:api:beta
type FakeDNSEngineRev0 ¶
type FakeDNSEngineRev0 interface {
FakeDNSEngine
// IsIPInIPPool tests whether the given IP address resides in managed fake IP pools.
IsIPInIPPool(ip net.Address) bool
// GetFakeIPForDomain3 registers and returns fake IP addresses for the given domain in IPv4 and/or IPv6.
GetFakeIPForDomain3(domain string, IPv4 bool, IPv6 bool) []net.Address
}
FakeDNSEngineRev0 adds additional APIs for FakeDNSEngine.
v2ray:api:beta
type IPv4Lookup ¶
IPv4Lookup is an optional feature for querying IPv4 addresses only.
v2ray:api:beta
type IPv6Lookup ¶
IPv6Lookup is an optional feature for querying IPv6 addresses only.
v2ray:api:beta
type RCodeError ¶
type RCodeError uint16
func (RCodeError) Error ¶
func (e RCodeError) Error() string