:zap: fast dns server, built to block advertisements and malware servers
Forked from looterz/grimd
go install github.com/cottand/leng@latest
You can also
docker run -d -p 53:53/udp -p 53:53/tcp -p 8080:8080/tcp ghcr.io/cottand/leng
nix run github:cottand/leng
Detailed guides and resources can be found in the docs website.
By default, leng binds DNS to 0.0.0.0:53
and loads a few known blocklists. The default settings should be enough for
most.
See the wiki for the full config, including defaults and dynamic
config reloading.
$ leng -help
Usage of leng:
-config string
location of the config file (default "leng.toml")
-update
force an update of the blocklist database
Requires golang 1.21 or higher, you build leng like any other golang application, for example to build for linux x64
env GOOS=linux GOARCH=amd64 go build -v github.com/cottand/leng
Run container and test
mkdir sources
docker build -t leng:latest -f docker/alpine.Dockerfile . && \
docker run -v $PWD/sources:/sources --rm -it -P --name leng-test leng:latest --config /sources/leng.toml --update
By default, if the program runs in a docker, it will automatically replace 127.0.0.1
in the default configuration
with 0.0.0.0
to ensure that the API interface is available.
curl -H "Accept: application/json" http://127.0.0.1:55006/application/active
Not keeping it simple: I would like leng to become a reliable custom DNS provider (like CoreDNS) and a reliable adblocker (like Blocky) that has the perfect set of features for self-hosters, and potentially for more critical setups.