]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/basic/strv.h
networkd: rework Domains= setting
authorLennart Poettering <lennart@poettering.net>
Mon, 25 Jan 2016 18:46:00 +0000 (19:46 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 26 Jan 2016 13:42:03 +0000 (14:42 +0100)
commit3df9bec57c3e2d96f7e2a25961585cfa609b61eb
tree41dc9aafc458479cc827fe32a75eacbd9afdb3b0
parent1d35b2d6e25ba100c903f02c92c67389e67bb913
networkd: rework Domains= setting

Previously, .network files only knew a vaguely defined "Domains=" concept, for which the documentation declared it was
the "DNS domain" for the network connection, without specifying what that means.

With this the Domains setting is reworked, so that there are now "routing" domains and "search" domains. The former are
to be used by resolved to route DNS request to specific network interfaces, the latter is to be used for searching
single-label hostnames with (in addition to being used for routing). Both settings are configured in the "Domains="
setting. Normal domain names listed in it are now considered search domains (for compatibility with existing setups),
while those prefixed with "~" are considered routing domains only. To route all lookups to a specific interface the
routing domain "." may be used, referring to the root domain. An alternative syntax for this is the "*", as was already
implemented before using the "wildcard" domain concept.

This commit adds proper parsers for this new logic, and exposes this via the sd-network API. This information is not
used by resolved yet, this will be added in a later commit.
13 files changed:
man/systemd.network.xml
src/basic/strv.c
src/basic/strv.h
src/libsystemd/sd-network/sd-network.c
src/network/networkctl.c
src/network/networkd-link.c
src/network/networkd-manager.c
src/network/networkd-network-gperf.gperf
src/network/networkd-network.c
src/network/networkd-network.h
src/resolve/resolved-link.c
src/resolve/resolved-manager.h
src/systemd/sd-network.h