Pi-hole
Use with conditions
A DNS filtering service on your own Linux host that blocks specified domains for devices using the service.
View project →A DNS service on your own device that filters queried domains for devices using it.
AdGuard Home is a DNS filtering service run on a device controlled by its administrator. When clients use it for DNS, their domain requests are processed according to its configuration, filtering advertising and tracking sources at that layer. Operating a local instance and using the public AdGuard DNS service are distinct ways of obtaining DNS filtering.
The management interface supports blocklists, custom rules, activity monitoring and settings for individual clients. The project also lists encrypted upstream DNS protocols, optional DHCP and a REST API. Domain rules, client configuration and upstream resolution together determine how requests are handled, while the interface and API provide different routes for managing the running service.
Filtering at the domain level does not modify individual elements inside a webpage. The project explicitly documents a limitation when advertising and normal content share the same domain: DNS cannot readily separate them. Examples include some video platform advertising and sponsored social content. Understanding that domain structure is therefore part of interpreting what this filtering method can and cannot block.
An always-on supported device and administrator permissions; Available DNS port 53 and initial setup port 3000; Listen only on appropriate local or LAN interfaces; A local administrator account; this does not require registration with a cloud service; Record original DNS/DHCP settings and prepare recovery beforehand; Confirmed requirements: Command line, An always-on device or service, Account
Home network users willing to maintain an always-on host and understand DNS configuration
Judgment: Users requiring guaranteed removal of all video advertising or unwilling to maintain a network service