systemd is largely architected the way you'd hope it to be. systemd itself, the core program, is responsible only for maintaining the lifecycle of other programs. The other functionality is provided by satellite daemons, which you can choose to use (or not use!) at will.
Now, distro maintainers may choose to use the whole kit-and-caboodle, but that is a deliberate decision on their part. It's not forced by the systemd authors, and you are free to override your distro maintainer's choice if you so desire.
So it implements DNS.
...and I must add, implements it badly [0]
> Now, distro maintainers may choose to use the whole kit-and-caboodle, but that is a deliberate decision on their part. It's not forced by the systemd authors
Not forced, instead they "gently push" [1]
0. https://news.ycombinator.com/item?id=8595335
1. https://lists.freedesktop.org/archives/systemd-devel/2010-Se...
It will continue to bite until enough people petition it's replacement.
Don't get me wrong, some of the features are good, but the kitchen sink is not.