semihalev / sdns
- пятница, 2 ноября 2018 г. в 00:15:54
Go
Lightweight, fast recursive dns server with dnssec support
Based on kenshinx/godns, looterz/grimd
go get github.com/semihalev/sdnsor
or run with Docker image
docker run -d --name sdns -p 53:53 -p 53:53/udp -p 853:853 -p 8053:8053 -p 8080:8080 sdns$ go build$ make test| Flag | Desc |
|---|---|
| config | Location of the config file, if not found it will be generated |
| Key | Desc |
|---|---|
| version | Config version |
| blocklists | List of remote blocklists |
| blocklistdir | List of locations to recursively read blocklists from (warning, every file found is assumed to be a hosts-file or domain list) |
| loglevel | What kind of information should be logged, Log verbosity level crit,error,warn,info,debug |
| bind | Address to bind to for the DNS server. Default :53 |
| bindtls | Address to bind to for the DNS-over-TLS server. Default :853 |
| binddoh | Address to bind to for the DNS-over-HTTPS server. Default :8053 |
| tlscertificate | TLS certificate file path |
| tlsprivatekey | TLS private key file path |
| outboundips | Outbound ip addresses, if you set multiple, sdns can use random outbound ip address |
| rootservers | DNS Root servers |
| root6servers | DNS Root IPv6 servers |
| rootkeys | DNS Root keys for dnssec |
| fallbackservers | Fallback servers IP addresses |
| api | Address to bind to for the http API server disable for left blank |
| nullroute | IPv4 address to forward blocked queries to |
| nullroutev6 | IPv6 address to forward blocked queries to |
| accesslist | Which clients allowed to make queries |
| timeout | Query timeout for dns lookups in duration Default: 5s |
| connecttimeout | Connect timeout for dns lookups in duration Default: 2s |
| expire | Default cache TTL in seconds Default: 600 |
| cachesize | Cache size (total records in cache) Default: 256000 |
| maxdepth | Maximum recursion depth for nameservers. Default: 30 |
| ratelimit | Query based ratelimit per second, 0 for disable. Default: 30 |
| blocklist | Manual blocklist entries |
| whitelist | Manual whitelist entries |
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.