Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Version string
Directory string
BlockLists []string
BlockListDir string
RootServers []string
Root6Servers []string
DNSSEC string
RootKeys []string
FallbackServers []string
ForwarderServers []string
AccessList []string
LogLevel string
AccessLog string
Bind string
BindTLS string
BindDOH string
BindDOQ string
TLSCertificate string
TLSPrivateKey string
API string
BearerToken string
Nullroute string
Nullroutev6 string
HostsFile string
OutboundIPs []string
OutboundIP6s []string
Timeout Duration
QueryTimeout Duration
Expire uint32
CacheSize int
Prefetch uint32
Maxdepth int
RateLimit int
ClientRateLimit int
NSID string
Blocklist []string
Whitelist []string
Chaos bool
QnameMinLevel int `toml:"qname_min_level"`
EmptyZones []string
// Dnstap configuration
DnstapSocket string
DnstapIdentity string
DnstapVersion string
DnstapLogQueries bool
DnstapLogResponses bool
DnstapFlushInterval int
// Domain metrics configuration
DomainMetrics bool
DomainMetricsLimit int
// Kubernetes middleware configuration as a section
Kubernetes KubernetesConfig `toml:"kubernetes"`
Plugins map[string]Plugin
CookieSecret string
IPv6Access bool `toml:"ipv6access"`
// TCP connection pooling configuration
TCPKeepalive bool
RootTCPTimeout Duration // Timeout for root server TCP connections
TLDTCPTimeout Duration // Timeout for TLD server TCP connections
TCPMaxConnections int // Maximum number of TCP connections to pool
// Resolver concurrency limits
MaxConcurrentQueries int // Maximum concurrent DNS queries (default 10000)
// Reflex: DNS amplification/reflection attack detection
ReflexEnabled bool // Enable amplification attack detection
ReflexBlockMode bool // If false, only log but don't block
ReflexLearningMode bool // If true, log detections but don't block
ReflexThreshold float64 // Suspicion threshold (0.0-1.0, default: 0.7)
// contains filtered or unexported fields
}
Config type.
func (*Config) ServerVersion ¶ added in v1.0.0
(*Config).ServerVersion serverVersion return current server version.
type Duration ¶ added in v0.3.0
Duration type.
func (*Duration) UnmarshalText ¶ added in v0.3.0
(*Duration).UnmarshalText unmarshalText for duration type.
type KubernetesConfig ¶ added in v1.6.0
type KubernetesConfig struct {
Enabled bool `toml:"enabled"`
ClusterDomain string `toml:"cluster_domain"`
KillerMode bool `toml:"killer_mode"`
Kubeconfig string `toml:"kubeconfig"`
TTL KubernetesTTLConfig `toml:"ttl"`
}
KubernetesConfig holds Kubernetes middleware configuration
Click to show internal directories.
Click to hide internal directories.