# Installation de knot-resolver

Nous allons suivre la documentation officielle située ici : [knot-resolver](https://knot-resolver.readthedocs.io/en/stable/quickstart-startup.html)

## Installation

Installation du resolver et des programmes utilitaires

    pi@piras:~ $ sudo apt install knot-resolver  knot-dnsutils

## Configuration

Voilà le contenu de mon fichier de configuration /etc/knot-resolver/kresd.conf :

    pi@piras:~ $ cat /etc/knot-resolver/kresd.conf 
    -- Default empty Knot DNS Resolver configuration in -*- lua -*-
    -- Bind ports as privileged user (root) --
    net = { '127.0.0.1', '::1' }
    -- Switch to unprivileged user --
    user('knot-resolver','knot-resolver')
    -- Unprivileged
    -- cache.size = 100*MB
    pi@piras:~ $ 

J'ai dé-commenté les interfaces d'écoute.

## Lancement et mise en service automatique

On démarre le service

    sudo systemctl start kresd@1.service

On rend le démarrage automatique

    sudo systemctl enable --now kresd@1.service

On vérifie que le service est en route

    sudo systemctl status kresd@1.service

    pi@piras:~ $ sudo systemctl status kresd@1.service
    ● kresd@1.service - Knot Resolver daemon
    Loaded: loaded (/lib/systemd/system/kresd@.service; enabled; vendor preset: enabled)
    Active: active (running) since Sat 2020-12-12 12:24:29 CET; 15min ago
        Docs: man:kresd.systemd(7)
            man:kresd(8)
    Main PID: 1905 (kresd)
    CGroup: /system.slice/system-kresd.slice/kresd@1.service
            └─1905 /usr/sbin/kresd --config=/etc/knot-resolver/kresd.conf

    déc. 12 12:24:28 piras systemd[1]: Starting Knot Resolver daemon...
    déc. 12 12:24:29 piras systemd[1]: Started Knot Resolver daemon.
    pi@piras:~ $ 

Il est actif (active (running))

On teste le fonctionnement

    pi@piras:~ $ kdig +short @localhost . NS
    a.root-servers.net.
    b.root-servers.net.
    c.root-servers.net.
    d.root-servers.net.
    e.root-servers.net.
    f.root-servers.net.
    g.root-servers.net.
    h.root-servers.net.
    i.root-servers.net.
    j.root-servers.net.
    k.root-servers.net.
    l.root-servers.net.
    m.root-servers.net.
    pi@piras:~ $ 

Tout fonctionne :D le résolveur écoute sur les ports 127.0.0.1 et ::1.

## Modification de /etc/dhcpcd.conf

Nous allons pouvoir maintenant modifier la ligne :

    #static domain_name_servers=192.168.1.1

pour obtenir ceci :

    static domain_name_servers=127.0.0.1 ::1

Notre raspi fera appel dorénavant à son propre résolveur DNS (et non à celui de votre box !)
