dns

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 12, 2025 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultListenAddr is the Docker-compatible DNS address
	DefaultListenAddr = "127.0.0.11:53"

	// DefaultDomain is the default search domain for Warren services
	DefaultDomain = "warren"

	// DefaultUpstream is the fallback DNS server for external queries
	DefaultUpstream = "8.8.8.8:53"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	ListenAddr string   // Address to listen on (default: 127.0.0.11:53)
	Domain     string   // Search domain (default: "warren")
	Upstream   []string // Upstream DNS servers (default: [8.8.8.8:53])
}

Config holds DNS server configuration

type Resolver

type Resolver struct {
	// contains filtered or unexported fields
}

Resolver handles DNS resolution for Warren services and instances

func NewResolver

func NewResolver(store storage.Store, domain string, upstream []string) *Resolver

NewResolver creates a new DNS resolver

func (*Resolver) Resolve

func (r *Resolver) Resolve(queryName string) ([]dns.RR, error)

Resolve resolves a DNS query name to DNS resource records

type Server

type Server struct {
	// contains filtered or unexported fields
}

Server is the Warren DNS server for service discovery

func NewServer

func NewServer(store storage.Store, config *Config) *Server

NewServer creates a new DNS server

func (*Server) IsRunning

func (s *Server) IsRunning() bool

IsRunning returns true if the DNS server is running

func (*Server) Start

func (s *Server) Start(ctx context.Context) error

Start starts the DNS server

func (*Server) Stop

func (s *Server) Stop() error

Stop stops the DNS server

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL