summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 00:53:35 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 00:53:35 +0000
commit69c6a41ffb878ef98c9378ed4b1634a404cfaa7f (patch)
treeb2a4f704565d62fbb129ab9dc3b35977c50e6e7f /README
parentInitial commit. (diff)
downloadknot-69c6a41ffb878ef98c9378ed4b1634a404cfaa7f.tar.xz
knot-69c6a41ffb878ef98c9378ed4b1634a404cfaa7f.zip
Adding upstream version 2.7.6.upstream/2.7.6upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'README')
-rw-r--r--README95
1 files changed, 95 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..a010146
--- /dev/null
+++ b/README
@@ -0,0 +1,95 @@
+Requirements
+============
+
+./doc/requirements.rst
+
+Installation
+============
+
+./doc/installation.rst
+
+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 make pkg-config liburcu-dev libgnutls28-dev libedit-dev
+
+Install optional packages to override embedded libraries:
+$ sudo apt-get install liblmdb-dev
+
+Install optional packages:
+$ sudo apt-get install \
+ libcap-ng-dev libsystemd-dev libidn2-0-dev protobuf-c-compiler libfstrm-dev libmaxminddb-dev
+
+Fedora like distributions
+-------------------------
+Update the system:
+# dnf upgrade
+
+Install basic development tools:
+# dnf install @buildsys-build
+
+Install prerequisites:
+# dnf install \
+ libtool autoconf pkgconfig automake userspace-rcu-devel gnutls-devel libedit-devel
+
+Install optional packages to override embedded libraries:
+# dnf install lmdb-devel
+
+Install optional packages:
+# dnf install \
+ libcap-ng-devel systemd-devel libidn-devel protobuf-c-devel fstrm-devel libmaxminddb-devel
+
+When compiling on RHEL based system, the Fedora EPEL repository has to be
+enabled. Also for RHEL 6, forward compatibility package gnutls30-devel
+with newer GnuTLS is required instead of gnutls-devel.
+
+2) Install Knot DNS
+
+Get the source code:
+$ git clone https://gitlab.labs.nic.cz/knot/knot-dns.git
+Or extract source package to knot-dns directory
+
+Compile Knot
+$ cd knot-dns
+$ autoreconf -if
+$ ./configure
+$ make
+
+Install Knot DNS into system:
+$ sudo make install
+$ sudo ldconfig
+
+Running
+=======
+
+./doc/operation.rst
+
+1) Each server needs configuration file. Please see samples/knot.sample.conf,
+project documentation, or man 5 knot.conf for more details.
+Configuration file has to specify:
+- storage for PID files, journal and timer databases etc.
+- network interfaces
+- served zones
+
+E.g. use the default config file:
+$ cd /etc/knot
+$ mv knot.sample.conf knot.conf
+Modify the config:
+$ 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've
+installed Knot using a binary package.
+
+Start Knot in the foreground to see if it runs:
+$ knotd -c myserver.conf