73 lines
2.1 KiB
ReStructuredText
73 lines
2.1 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
.. _network-configuration:
|
|
|
|
************************
|
|
Networking and protocols
|
|
************************
|
|
|
|
This section describes configuration of network interfaces
|
|
and protocols. Please keep in mind that DNS resolvers act
|
|
as *DNS server* and *DNS client* at the same time,
|
|
and that these roles require different configuration.
|
|
|
|
This picture illustrates different actors involved DNS resolution process,
|
|
supported protocols, and clarifies what we call *server configuration*
|
|
and *client configuration*.
|
|
|
|
.. image:: server_terminology.svg
|
|
|
|
*Attribution: Icons by Bernar Novalyi from the Noun Project*
|
|
|
|
For *resolver's clients* the resolver itself acts as a DNS server.
|
|
|
|
After receiving a query the resolver will attempt to find
|
|
answer in its cache. If the data requested by resolver's
|
|
client is not available in resolver's cache (so-called *cache-miss*)
|
|
the resolver will attempt to obtain the data from servers *upstream*
|
|
(closer to the source of information), so at this point the resolver
|
|
itself acts like a DNS client and will send DNS query to other servers.
|
|
|
|
By default the Knot Resolver works in recursive mode, i.e.
|
|
the resolver will contact authoritative servers on the Internet.
|
|
Optionally it can be configured in forwarding mode,
|
|
where cache-miss queries are *forwarded to another DNS resolver*
|
|
for processing.
|
|
|
|
Server (communication with clients)
|
|
===================================
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
daemon-bindings-net_server
|
|
daemon-bindings-net_tlssrv
|
|
modules-http
|
|
|
|
Client (retrieving answers from servers)
|
|
========================================
|
|
|
|
Following chapters describe basic configuration of how resolver retrieves data from other *(upstream)* servers. Data processing is also affected by configured policies, see chapter :ref:`policies` for more advanced usage.
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
daemon-bindings-net_client
|
|
config-network-forwarding
|
|
|
|
DNS protocol tweaks
|
|
===================
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
daemon-bindings-net_dns_tweaks
|
|
|
|
Buffering tweaks
|
|
================
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
|
|
daemon-bindings-net_buffering
|
|
|