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 ¶
func FakeDNSEngineType() interface{}
FakeDNSEngineType returns the type of FakeDNSEngine interface. Can be used for implementing common.HasType.
v2ray:api:beta
func LookupIPWithOption ¶
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 ¶
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