Documentation ¶
Index ¶
Constants ¶
const ( // NetUDP UDP protocol (deprecated) NetUDP = "udp" // NetTCP TCP protocol (deprecated) NetTCP = "tcp" // NetTCPUDP TCP and UDP protocols NetTCPUDP = "tcp+udp" // NetTCPTLS TCP-TLS protocol NetTCPTLS = "tcp-tls" // NetHTTPS HTTPS protocol NetHTTPS = "https" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockingConfig ¶
type BlockingConfig struct { BlackLists map[string][]string `yaml:"blackLists"` WhiteLists map[string][]string `yaml:"whiteLists"` ClientGroupsBlock map[string][]string `yaml:"clientGroupsBlock"` BlockType string `yaml:"blockType"` RefreshPeriod int `yaml:"refreshPeriod"` }
BlockingConfig configuration for query blocking
type CachingConfig ¶
type CachingConfig struct { MinCachingTime int `yaml:"minTime"` MaxCachingTime int `yaml:"maxTime"` Prefetching bool `yaml:"prefetching"` }
CachingConfig configuration for domain caching
type ClientLookupConfig ¶
type ClientLookupConfig struct { ClientnameIPMapping map[string][]net.IP `yaml:"clients"` Upstream Upstream `yaml:"upstream"` SingleNameOrder []uint `yaml:"singleNameOrder"` }
ClientLookupConfig configuration for the client lookup
type ConditionalUpstreamConfig ¶
type ConditionalUpstreamConfig struct { Rewrite map[string]string `yaml:"rewrite"` Mapping ConditionalUpstreamMapping `yaml:"mapping"` }
ConditionalUpstreamConfig conditional upstream configuration
type ConditionalUpstreamMapping ¶
ConditionalUpstreamMapping mapping for conditional configuration
func (*ConditionalUpstreamMapping) UnmarshalYAML ¶
func (c *ConditionalUpstreamMapping) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML creates ConditionalUpstreamMapping from YAML
type Config ¶
type Config struct { Upstream UpstreamConfig `yaml:"upstream"` CustomDNS CustomDNSConfig `yaml:"customDNS"` Conditional ConditionalUpstreamConfig `yaml:"conditional"` Blocking BlockingConfig `yaml:"blocking"` ClientLookup ClientLookupConfig `yaml:"clientLookup"` Caching CachingConfig `yaml:"caching"` QueryLog QueryLogConfig `yaml:"queryLog"` Prometheus PrometheusConfig `yaml:"prometheus"` LogLevel string `yaml:"logLevel"` LogFormat string `yaml:"logFormat"` LogTimestamp bool `yaml:"logTimestamp"` Port string `yaml:"port"` HTTPPort uint16 `yaml:"httpPort"` HTTPSPort uint16 `yaml:"httpsPort"` DisableIPv6 bool `yaml:"disableIPv6"` CertFile string `yaml:"httpsCertFile"` KeyFile string `yaml:"httpsKeyFile"` BootstrapDNS Upstream `yaml:"bootstrapDns"` }
Config main configuration nolint:maligned
type CustomDNSConfig ¶
type CustomDNSConfig struct {
Mapping CustomDNSMapping `yaml:"mapping"`
}
CustomDNSConfig custom DNS configuration
type CustomDNSMapping ¶
CustomDNSMapping mapping for the custom DNS configuration
func (*CustomDNSMapping) UnmarshalYAML ¶
func (c *CustomDNSMapping) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML creates CustomDNSMapping from YAML
type PrometheusConfig ¶
PrometheusConfig contains the config values for prometheus
type QueryLogConfig ¶
type QueryLogConfig struct { Dir string `yaml:"dir"` PerClient bool `yaml:"perClient"` LogRetentionDays uint64 `yaml:"logRetentionDays"` }
QueryLogConfig configuration for the query logging
type Upstream ¶
Upstream is the definition of external DNS server
func ParseUpstream ¶
ParseUpstream creates new Upstream from passed string in format net:host[:port][/path]
func (*Upstream) UnmarshalYAML ¶
UnmarshalYAML creates Upstream from YAML
type UpstreamConfig ¶
UpstreamConfig upstream server configuration