I have read many posts in this subreddit and so many recommend using a domain (buying it) and then registering DNS.

Maybe I misunderstood because I’m new, but in theory isn’t it enough to use a DNS in lan like pihole, and then from the client browser using Wireguard simply write the domain defined on pihole? (Maybe even configuring nginx to have all the ports pointing to the correct services)

Am I wrong?