HOW TO SETUP ADGUARD HOME SERVER
Hello, Everyone Adguard Home is a Network wide Domain Name System resolver. Without going too much into details it converts the websites your computer ask for (e.g. google.com.au) into IPv4/IPv6 addresses, at Top domain level. It is avaible on many different Platforms like Linux, Windows, Docker, etc. If you would like a introduction you may watch this video- https://www.youtube.com/watch?v=B2V_8M9cjYw. You should ideally have this platform up and running all the time, (consider a mini PC for its operation, or a raspberry pi).
A. INSTALLATION Steps for a Windows Server
- Navigate to latest release respository from Github- AdGuard Home v0.108.0-b.53 (https://github.com/AdguardTeam/AdGuardHome/releases)
- Click on Assets and download your respective file, for windows, it should be βAdGuardHome_windows_amd64.zipβ.
- Extract the β AdGuardHome β Folder inside the downloaded file into C drive (you can extract at other locations as well but for simplicity I would extract the folder to C Drive, as it would change the CMD command for installation later on.)
- Upon extractaction of βAdGuardHomeβ to C drive, open Windows Terminal as Admin (Tip- for ease press β Windows + X β then select β Terminal (Admin) β)
- Type β cd C:\AdGuardHome β to navigate to the downloaded and extracted folder directory. If you downloaded and extracted to another location, you should change this command accordingly.
- Type β .\AdGuardHome.exe β to run the adguard home.
- Allow the connections with firewall in windows
- Press β Ctrl + C β or something else anything to stop the current terminal script command in the open Windows Terminal.
- Type β .\AdGuardHome.exe -s install β.
- Congratulations Adguard home is now installed on your windows system. However it is not configured on the network fully yet (to do so continue further).
- Open a webrowser on the same windows machine and go to β http://localhost:3000/ β or β http://localhost/ β
B. SETUP AFTER INSTALLATION
- This should now bring up Adguard Home user setup menu, Follow the prompts on the screen, to setup username and password, and any other specific requirements like changing Adguard home web UI port from 3000 to another port 80 or any other port if you do not like default port 3000.
After completing the setup, verify acccess to adguard by going to β http://localhost/ β or β http://localhost:3000/ β and access main dashboard.
On the Adguard Home dashboard, Go to β Setup Guide β near top right. Note down the DNS servers that Adguard Home is listening from. Especially one that is a IPv4 format (for IPv6 it will be a different format, but most likely you aint gonna need it) something like β 127.0.X.Y β or β 192.168.0.0 β 192.168.255.255 β, or β 10.0.0.0 β 10.255.255.255 β or β172.16.0.0 β 172.31.255.255 β. Either one of these IP address is going to be needed later to verify that adguard home server can listen to dns queries from other devices. (Tips - I personally would like to note these address somewhere handy for now, and in my opinion β 192.168.X.Y β or β 127.0.0.1 β is going to be best for most people. The local host (127.0.0.1) will not change on this machine, however the other address on there can change depending on your router/modemβs DCHP configurationβs (its best to set this machineβs local IP address to Static instead of DCHP default to avoid IP changes). The 127.0.0.1 will only be accessable from this particular Machine and other ones should allow you to access the dashboard from any device connected on the same router/modem Locally on the same subnet/VLAN.)
Importantly now, you should locate the Local IPv4 and IPv6 address of this machine, it should be β 192.168.0.0 β 192.168.255.255 β, or β 10.0.0.0 β 10.255.255.255 β or β172.16.0.0 β 172.31.255.255 β however, in case you are unable to locate it, you may run command β ipconfig /all β and see your WIFI/ethernet adaptor details, and it should have your local IPv4/IPv6 address there. (Tip- you are generally not going to see or use IPv6, but if you do and IPv4 is unavailable you must use IPv6).
Now that you have gotten the Local IP address of your machine, verify you are able to access the Adguard Home dashboard on another device on same network by going to the IP address of the adguard home server and your designated adguard home Web UI port (it will be port 3000 by default, so http://ADGUARDSERVERIPADDRESS:3000).
- Edit the Adguard home server to your preferences now, Take full advantage of it, and customise it to your likings, like have custom Adblock lists (or Ad Whitelists) to it, or perhaps custom DNS rewrites (say to make modem.net/ go to your modem page). If you really want to make more advanced networking, you can pair it up with a reverse proxy (but be careful of risk that come with it) to change ports on requests, like make http://web.address:3947/ be simply http://web.app:80/ which would also be http://web.app/. You can also use it to block DNS resolving for certain devices (that could possibly block their internet access, if they use this server for DNS resolving). And thereβs heaps more customisations available to do, so its your turn to look up your needs and implement them.
LOCAL NETWORK WIDE DNS
- Now only thing left is to send your device dns queries to this DNS resolver (adguard home server), the most preferred approach is to change the DNS settings on the main modem/router on the network (as by deafult all devices connected to that modem/router will ask the router to resolve the DNS, unless they are using another DNS resolver like through a VPN etc.). This DNS setting on the router varies from device to device, (so its best to search up your modem details on internet and find out how to change its DNS settings). Once in that DNS settings page, change the DNS 1 to adguard home serverβs Local IP address, and Leave the DNS 2 empty. Keep in mind that incase your router is set to use this IP for DNS resolving and your server is not ON, then very likely your internet access is going to be disrupted. Hence you should have your adguard DNS server on all the time (24/7). If you are not going to have it on 24/7 you should add another common DNS provider there on DNS 2, (such as Quad 9, 9.9.9.9, or cloudflare 1.1.1.1) Save these settings and restart your modem, and any other network equipment for new DNS to take effect. If however, you do not like such modem changes, you may only choose to do device specific DNS (say Android, IOS, Linux, Windows) changes like below (so only that devies uses adguard home to resolve DNS).
DEVICE Specific DNS changes (NOT LOCAL NETWORK WIDE)
Setup on Windows: Now we need to change the DNS of the windows OS, to do that open β Control Panel β > select β Network and Internet β > select β Network and Sharing Centre β > select β Change adapter settings β on the top left > Right click on your active connection (e.g. Wifi adapter, or Ethernet ) > select β Properties β > select β Internet Protocol Version 4 (TCP/lPv4) β > Select β Use: the following DNS server addresses: β type there DNS address you got from your adguard configration page (the one from Step 14) as the β Preferred DNS server: β You dont need to put fill the β Alternative DNS server: β but you may use another one of the iP addresses you got from Step 14 here. Select β Validate settings upon exit β and Click β Okay β, you might find troubleshooter running for slight while, just close it after sometime. Adguard home should now be serving this windows machine for its DNS resolving. You should now verify it, by going to some websites, and should also expect to see these domain requests on Adguard Home Dashboardβs Queries page.
Similar instructions are available on Adguard homeβs Setup page for setting up other devices like Android, IOS, Linux (but itβs similar case there, just need to change IP settings for a custom resolver). With certain devices like Android you might also need to change the IP to Static (in Android, not in the modem) for getting an option to change the DNS resolver.
If you require setup instructions for running Adguard home on a Debian based Linux Server, or Docker (in Debian based Linux), I have guides for it too, send me a query to meet me virtually or in person and I will happily give you the guide (or may be make it public here).
If you have any questions feel free to email [email protected] for queries, and I will get back to you whenever possible.