Homelab: pi-hole, pfsense, openvpn
Mobile Devices: openvpn client
Edit: spelling
It doesn't quite work well while on the road sometimes. For those cases, I have a docker running diginc/pi-hole (with some additional hosts file blocking going on), then I point my laptops DNS towards that and am good to go.