Still under the workarounds umbrella, instead of using:
DNS = <ip>
Try this under [Interface] instead:
PostUp = resolvectl dns %i <ip>
(if you already have a PostUp, just add another one)
That will configure the wireguard interface to use the specified <ip> as the DNS server for that interface. You can also add a domain search if you want:
PostUp = resolvectl dns %i <ip>; resolvectl domain %i \~domain
(replace "domain" with the actual domain suffix you want searched, but keep the "\~")
Still under the workarounds umbrella, instead of using:
DNS = <ip>
Try this under [Interface] instead:
PostUp = resolvectl dns %i <ip>
(if you already have a PostUp, just add another one)
That will configure the wireguard interface to use the specified <ip> as the DNS server for that interface. You can also add a domain search if you want:
PostUp = resolvectl dns %i <ip>; resolvectl domain %i \~domain
(replace "domain" with the actual domain suffix you want searched, but keep the "\~")