No description
- C 78.3%
- Makefile 14.1%
- Shell 5.4%
- Ragel 1%
- M4 0.6%
- Other 0.6%
|
|
||
|---|---|---|
| debian | ||
| distro | ||
| doc | ||
| m4 | ||
| python | ||
| samples | ||
| src | ||
| tests | ||
| tests-fuzz | ||
| aclocal.m4 | ||
| ar-lib | ||
| compile | ||
| config.guess | ||
| config.sub | ||
| configure | ||
| configure.ac | ||
| COPYING | ||
| depcomp | ||
| Doxyfile.in | ||
| install-sh | ||
| ltmain.sh | ||
| Makefile.am | ||
| Makefile.in | ||
| missing | ||
| NEWS | ||
| README.md | ||
| test-driver | ||
Requirements
Installation
1. Install prerequisites
Debian based distributions
Update the system:
sudo apt-get update
sudo apt-get upgrade
Install prerequisites:
sudo apt-get install \
libtool autoconf automake make pkg-config liburcu-dev libgnutls28-dev libedit-dev liblmdb-dev
Install optional packages:
sudo apt-get install \
libcap-ng-dev libsystemd-dev libidn2-dev libprotobuf-c-dev protobuf-c-compiler libfstrm-dev libmaxminddb-dev libnghttp2-dev libbpf-dev libxdp-dev libmnl-dev python3-sphinx python3-sphinx-panels softhsm2
Fedora like distributions
Update the system:
dnf upgrade
Install basic development tools:
dnf install @buildsys-build
Install prerequisites:
dnf install \
libtool autoconf automake pkgconfig userspace-rcu-devel gnutls-devel libedit-devel lmdb-devel
Install optional packages:
dnf install \
libcap-ng-devel systemd-devel libidn2-devel protobuf-c-devel fstrm-devel libmaxminddb-devel libnghttp2-devel libbpf-devel libxdp-devel libmnl-devel python-sphinx python-sphinx-panels softhsm
When compiling on RHEL based system, the Fedora EPEL repository has to be enabled.
2. Install Knot DNS
Get the source code:
git clone https://gitlab.nic.cz/knot/knot-dns.git
Or extract source package to knot-dns directory.
Compile the source code:
cd knot-dns
autoreconf -if
./configure
make
Install Knot DNS into system:
sudo make install
sudo ldconfig
Running
1. Ensure some configuration
Please see samples/knot.sample.conf,
project documentation,
or man 5 knot.conf for more details. Basically the configuration should specify:
- network interfaces
- served zones
E.g. use the default configuration file:
cd /etc/knot
mv knot.sample.conf knot.conf
Modify the configuration file:
editor knot.conf
2. Prepare working directory
mv example.com.zone /var/lib/knot/
3. Start the server
This can be done by running the knotd command. Alternatively, your distribution
should have an init script available, if you installed Knot DNS from a binary package.
Start the server in foreground to see if it runs:
knotd -c /etc/knot/knot.conf