yay -S technitium-dns-server-binsystemctl disable --now systemd-resolved.servicesystemctl enable --now technitium-dns-server.serviceFrom here on, it’s basic dns zones stuff and TSIGs etc
dig -x <IP>
dig somedomain.tld
dig somedomain.tld @8.8.8.8 # check somedomain.tld with googles dns serverhere is ads.google.com as an example that is blocked by
multiple lists
; <<>> DiG 9.20.11 <<>> +all ads.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 28414
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
; EDE: 15 (Blocked): (source=block-list-zone; blockListUrl=https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts; domain=ads.google.com)
; EDE: 15 (Blocked): (source=block-list-zone; blockListUrl=https://adaway.org/hosts.txt; domain=ads.google.com)
; EDE: 15 (Blocked): (source=block-list-zone; blockListUrl=https://raw.githubusercontent.com/bigdargon/hostsVN/master/hosts; domain=ads.google.com)
; EDE: 15 (Blocked): (source=block-list-zone; blockListUrl=https://blocklistproject.github.io/Lists/ads.txt; domain=ads.google.com)
; EDE: 15 (Blocked): (source=block-list-zone; blockListUrl=https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts; domain=ads.google.com)
;; QUESTION SECTION:
;ads.google.com. IN A
;; AUTHORITY SECTION:
google.com. 30 IN SOA techdns.lair.lan. hostadmin.techdns.lair.lan. 1 14400 3600 604800 30
;; Query time: 1 msec
;; SERVER: 10.193.120.5#53(10.193.120.5) (UDP)
;; WHEN: Mon Jul 21 23:02:54 CEST 2025
;; MSG SIZE rcvd: 730
Last modified: Mon Jul 21 23:04:23 2025