Versions in this module Expand all Collapse all v1 v1.24.4 Aug 19, 2016 Changes in this version + const APP_ID + const CleanupInterval + const CleanupThreshold + const DefaultTTL + const QueryTimeout + type ARecord struct + Expire time.Time + IPs []net.IP + type CacheServer struct + func NewCacheServer(space app.Space, config *Config) *CacheServer + func (this *CacheServer) Get(domain string) []net.IP + func (this *CacheServer) GetCached(domain string) []net.IP + func (this *CacheServer) Release() + type Config struct + Hosts map[string]net.IP + NameServers []v2net.Destination + type DomainRecord struct + A *ARecord + type LocalNameServer struct + func (this *LocalNameServer) QueryA(domain string) <-chan *ARecord + type NameServer interface + QueryA func(domain string) <-chan *ARecord + type PendingRequest struct + type Server interface + Get func(domain string) []net.IP + type UDPNameServer struct + func NewUDPNameServer(address v2net.Destination, dispatcher dispatcher.PacketDispatcher) *UDPNameServer + func (this *UDPNameServer) AssignUnusedID(response chan<- *ARecord) uint16 + func (this *UDPNameServer) BuildQueryA(domain string, id uint16) *alloc.Buffer + func (this *UDPNameServer) Cleanup() + func (this *UDPNameServer) DispatchQuery(payload *alloc.Buffer) + func (this *UDPNameServer) HandleResponse(dest v2net.Destination, payload *alloc.Buffer) + func (this *UDPNameServer) QueryA(domain string) <-chan *ARecord