[systemd-devel] Where does resolved takes its data from?

gima+ml.systemd-devel at iki.fi gima+ml.systemd-devel at iki.fi
Wed Sep 5 13:55:51 UTC 2018


systemd-resolved has a DBUS API, which is used by network configuration 
managers such as systemd-networkd and NetworkManager to set the hostname 
resolution -related configuration to be used by systemd-resolved.

You can see the runtime configuration of systemd-resolved by running 
`systemd-resolve --status`. To see what protocols (DNS, LLMNR, MDNS) are 
used to resolve a specific hostname, use `systemd-resolve 
somemachine.local`, for example.

The protocols that are used during hostname resolution can be toggled 
per-interface using the same command, or they can be set via the DBUS 
API by some network configuration manager.

Caution: The following is "as far as I know":
Please note that the systemd-resolved DBUS API provides methods to do 
hostname resolution with more control over the resolution method than 
the functions provided by GNU C libraries. These latter functions 
inspect `hosts:` entry of `/etc/nsswitch.conf` to determine plugins that 
are used to do hostname resolution, one of which should be `resolve` to 
direct queries to systemd-resolved in case the GNU C hostname resolution 
API is used.

Sorry if this veered into the territory of "I didn't ask this question". 
I just thought that clarifying the whole picture could help in better 
setting up hostname resolution.



More information about the systemd-devel mailing list