Documentation
¶
Overview ¶
Package recursor performs iterative DNS recursion for lookup helpers.
Index ¶
- type Recursor
- func (r *Recursor) AddFakeAddresses(domain string, data map[string][]string) error
- func (r *Recursor) ClearCache()
- func (r *Recursor) Client() *transport.Client
- func (r *Recursor) GetAddressesFor(ctx context.Context, name string) ([]netip.Addr, error)
- func (r *Recursor) GetFakeAddresses(domain string, nsname string) []netip.Addr
- func (r *Recursor) GetFakeNames(domain string) []string
- func (r *Recursor) HasFakeAddresses(domain string) bool
- func (r *Recursor) Parent(ctx context.Context, name string) (string, packet.Packet, error)
- func (r *Recursor) Recurse(ctx context.Context, name string, qtype string, qclass string) (packet.Packet, error)
- func (r *Recursor) RecurseWithNameservers(ctx context.Context, name string, qtype string, qclass string, ...) (packet.Packet, error)
- func (r *Recursor) RemoveFakeAddresses(domain string)
- func (r *Recursor) RootServers(ctx context.Context) ([]nameserver.Nameserver, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Recursor ¶
type Recursor struct {
// contains filtered or unexported fields
}
Recursor holds root hints and fake delegations.
func (*Recursor) AddFakeAddresses ¶
AddFakeAddresses stores fake addresses for a domain.
func (*Recursor) ClearCache ¶
func (r *Recursor) ClearCache()
ClearCache clears the recursive cache.
func (*Recursor) GetAddressesFor ¶
GetAddressesFor resolves A and AAAA addresses for a nameserver name.
func (*Recursor) GetFakeAddresses ¶
GetFakeAddresses returns fake addresses for a domain and nameserver name.
func (*Recursor) GetFakeNames ¶
GetFakeNames returns fake nameserver names for a domain.
func (*Recursor) HasFakeAddresses ¶
HasFakeAddresses reports whether a domain has fake address data.
func (*Recursor) Recurse ¶
func (r *Recursor) Recurse(ctx context.Context, name string, qtype string, qclass string) (packet.Packet, error)
Recurse performs a recursive lookup using root servers.
func (*Recursor) RecurseWithNameservers ¶
func (r *Recursor) RecurseWithNameservers(ctx context.Context, name string, qtype string, qclass string, ns []nameserver.Nameserver) (packet.Packet, error)
RecurseWithNameservers performs a recursive lookup using a specific nameserver set.
func (*Recursor) RemoveFakeAddresses ¶
RemoveFakeAddresses deletes fake address data for a domain.
func (*Recursor) RootServers ¶
func (r *Recursor) RootServers(ctx context.Context) ([]nameserver.Nameserver, error)
RootServers returns nameservers initialized from root hints.