# Constellation
# Pluggable authoritative DNS server
# Configuration file
# Example: https://github.com/valeriansaliou/constellation/blob/master/config.cfg
[server]
log_level = "debug"
identifier = "crisp-dns/primary"
[dns]
inets = [
"0.0.0.0:53",
"[::]:53"
]
tcp_timeout = 2
nameservers = ["a.ns.crisp.chat", "b.ns.crisp.chat"]
soa_master = "a.ns.crisp.chat"
soa_responsible = "hostmaster.crisp.chat"
soa_refresh = 10000
soa_retry = 2400
soa_expire = 604800
soa_ttl = 3600
record_ttl = 3600
[dns.zone.'relay.crisp.chat']
[dns.health]
check_enable = true
check_interval = 60
[dns.health.notify]
slack_hook_url = "https://hooks.slack.com/services/xxxx"
[[dns.health.http]]
zone = "relay.crisp.chat"
name = "client.@"
method = "GET"
path = "/health"
port = 443
secure = true
timeout = 5
max_attempts = 3
expected_status = [
200,
203
]
expected_body = [
"{\"code\":0,\"message\":\"No Operation\"}",
"success"
]
[geo]
database_path = "./res/geo/"
database_file = "GeoLite2-Country.mmdb"
update_enable = true
update_interval = 864000
update_url = "https://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz"
[http]
inet = "[::1]:8080"
workers = 2
record_token = "REPLACE_THIS_WITH_A_SECRET_KEY"
[redis]
database = 0
pool_size = 8
max_lifetime_seconds = 20
idle_timeout_seconds = 600
connection_timeout_seconds = 5
cache_refresh_seconds = 60
cache_expire_seconds = 600
[redis.master]
host = "localhost"
port = 6379