Versions in this module Expand all Collapse all v1 v1.31.1 Nov 1, 2023 v1.31.0 Oct 20, 2023 Changes in this version + const DHCPTTL + const DHCPTimeout + const IfaceTTL + func NewDomainFilter(domains []string) *domainFilter + func ReCreateServer(addr string, resolver *Resolver, mapper *ResolverEnhancer) + type Config struct + Default []NameServer + EnhancedMode C.DNSMode + Fallback []NameServer + FallbackFilter FallbackFilter + Hosts *trie.DomainTrie[netip.Addr] + IPv6 bool + Main []NameServer + Policy map[string]NameServer + Pool *fakeip.Pool + ProxyServer []NameServer + Remote []NameServer + SearchDomains []string + type FallbackFilter struct + Domain []string + GeoIP bool + GeoIPCode string + GeoSite []*router.DomainMatcher + IPCIDR []*netip.Prefix + type LocalServer struct + func NewLocalServer(resolver *Resolver, mapper *ResolverEnhancer) *LocalServer + func (s *LocalServer) ServeMsg(msg *D.Msg) (*D.Msg, error) + type NameServer struct + Addr string + Interface string + IsDHCP bool + Net string + Proxy string + type Policy struct + func NewPolicy(data []dnsClient) *Policy + func (p *Policy) Compare(p2 *Policy) int + func (p *Policy) GetData() []dnsClient + type Resolver struct + func NewResolver(config Config) *Resolver + func (r *Resolver) Exchange(m *D.Msg) (msg *D.Msg, source string, err error) + func (r *Resolver) ExchangeContext(ctx context.Context, m *D.Msg) (msg *D.Msg, source string, err error) + func (r *Resolver) ExchangeContextWithoutCache(ctx context.Context, m *D.Msg) (msg *D.Msg, source string, err error) + func (r *Resolver) LookupIP(ctx context.Context, host string) (ip []netip.Addr, err error) + func (r *Resolver) LookupIPv4(ctx context.Context, host string) ([]netip.Addr, error) + func (r *Resolver) LookupIPv6(ctx context.Context, host string) ([]netip.Addr, error) + func (r *Resolver) RemoveCache(host string) + func (r *Resolver) ResolveIP(host string) (ip netip.Addr, err error) + func (r *Resolver) ResolveIPv4(host string) (ip netip.Addr, err error) + func (r *Resolver) ResolveIPv6(host string) (ip netip.Addr, err error) + type ResolverEnhancer struct + func NewEnhancer(cfg Config) *ResolverEnhancer + func (h *ResolverEnhancer) FakeIPEnabled() bool + func (h *ResolverEnhancer) FindHostByIP(ip netip.Addr) (string, bool) + func (h *ResolverEnhancer) FlushFakeIP() error + func (h *ResolverEnhancer) InsertHostByIP(ip netip.Addr, host string) + func (h *ResolverEnhancer) IsExistFakeIP(ip netip.Addr) bool + func (h *ResolverEnhancer) IsFakeBroadcastIP(ip netip.Addr) bool + func (h *ResolverEnhancer) IsFakeIP(ip netip.Addr) bool + func (h *ResolverEnhancer) MappingEnabled() bool + func (h *ResolverEnhancer) PatchFrom(o *ResolverEnhancer) + func (h *ResolverEnhancer) StoreFakePoolState() + type Server struct + func (s *Server) ServeDNS(w D.ResponseWriter, r *D.Msg) + func (s *Server) SetHandler(handler handler)