Releases: AdguardTeam/AdGuardHome
AdGuard Home v0.99.0
It took us a while to publish a new release of AdGuard Home... 😴
The good news is, it may take you even longer to read through the changelog, that's how many improvements there are in this update! So we'd better kick things off asap.
Login page
Do you know the two most important pieces of advice for dating? 🤔
- Be attractive.
- Don't be unattractive.
Turns out, they are applicable to software development as well! Finally, we have a beautiful login page instead of the ugly standard browser authentication window. HTTP basic auth is still around and will be useful for those who are using our API (yes, we have an API! Didn't you know?).
Whois data for the DNS clients
There's never too much data. You can now see more information about your DNS server clients. AdGuard Home gets country and the organization name from the whois data on the client IP.
Please note that this feature makes sense only for those who run AdGuard Home on a VPS.
Canary domain for Firefox: #988
Mozilla is going to make a questionable move and enable Cloudflare DNS for all Firefox 🦊 users from the US by default. We're not saying Cloudflare DNS is bad, but it's obvious to us that people should be able to choose what they want when it comes to DNS providers. Fortunately, there's an option to opt-out by blocking a special "canary" domain, and that's what AdGuard Home does.
Rework of the statistics screen and the query log: #415 #776
AdGuard Home had always been storing statistics and the query log just for the last 24 hours. It had been due to some implementation peculiarities, and certainly not because we were too lazy to undertake such a serious rework, no-no. 🙅 Long story short, it's much different now. See:
You can not only choose the query logs retention period in the settings; it's now possible to disable or clear it right from there.
You can also change the statistics retention period or clear statistics separately.
Also, we conducted small research, and it clearly tells that the most interesting events usually lie between requests 5001-10000. So the query log is no more limited to the last 5000 records!
Using the certificate & private key from a file instead of copy/pasting it: #634
You too are tired of replacing the 'c' and 'v' letters on your keyboard due to the amount of copy/pasting it takes every time when the certificate is renewed? 🤬 Not any longer, simply specify the path to the cert & the private key once and forget about it.
New translations: #1043
Now, huge thanks to everyone who's been helping us translate AdGuard! You people seriously rock! 🤟
Thanks to your efforts, today we're adding the following languages:
- Czech
- Danish
- German
- Indonesian
- Korean
- Italian
- Polish
- Slovak
- Portuguese (pt-BR)
- Dutch
- Slovenian
- Turkish
Notable bugfixes and improvements
- [Added] Encrypt/hash password in config: #394
- [Added] Option to set time span when filter lists must be checked for updates: #641
- [Added] Add response information to the "filtered" query log items: #912
- [Added] Allow configuring DNS cache size: #947
- [Added] Add TikTok and Epic Games to Blocked services: #950 #1010 (thanks to @onedr0p for the contribution!)
- [Added] Add option to instantly expire a DHCP lease: #833
- [Changed] Change the way AdGuard Home registers a system service: #1048
- [Fixed] DNS cannot function during Filter update: #928
- [Fixed] Using DoH upstream causes DNS timeout on WAN failover: #875
- [Fixed] Static DHCP lease disappears after the device connects: #1016
- [Fixed] DHCP static lease is not applied when the client reconnects: #1015
- [Fixed] No answer in AAAA log if set to DNS redirects: #989
- [Fixed] DHCP leases need to be added to the "Clients (runtime)" list: #979
- [Fixed] DHCP Range check: #848
- [Fixed] First-time run wizard won't work on
[::]
: #953
API: BREAKING CHANGES
There are some incompatible changes in the API in this version. Please read the changelog to learn more:
https://github.com/AdguardTeam/AdGuardHome/blob/master/openapi/CHANGELOG.md
AdGuard Home v0.98.1
A quick hotfix for a release is like a cherry on top of a tasty cake. And it turns out we are darn good cooks! 👨🍳
After this hotfix, the "Blocked services" settings won't reset every time you restart AG Home. You know, like they should have done in the first place. Bon appetit! 👌
AdGuard Home v0.98.0
Welcome AdGuard Home v0.98!
We're rapidly approaching the psychological milestone of v0.100 which may or may not mean something special. 🤔 For now, we have a couple of new big features to play with, and they are quite special in and of themselves. There are boring bugfixes too but who cares, let's look at pretty pictures! 🤩
DNS Rewrites: #818
This is a long-awaited feature requested by lots of users. In the previous versions, adding your own domain was only possible via custom filtering rules, but this has an obvious drawback: the domain appeared as blocked in the query log. 🤷♀️
Now there's no drawbacks, only upsides: query log stays tidy, and it's much easier to understand what's going on just by glancing over the Rewrites table.
Blocking access to popular services: #819
Here's a scenario: you tell your kid there will be no YouTube or Twitch until they do their homework. 😨 Instead of watching over their shoulder so that they don't sneak a fortnite stream on their phone, you can simply make a few clicks in AG Home and disable these apps just for a specific client. Parenting done right!
And that's only one example. Configure any client individually (by IP or MAC) or all at once, block access to specific web services or take no prisoners and block them all. Just don't have too much fun playing God! 🤪
Bugfixes and minor improvements
When composing an AG Home announcement, we operate by a simple rule: no screenshot -- no spotlight 🙅♂️
For the full list of other (minor) changes and bugfixes, go here: https://github.com/AdguardTeam/AdGuardHome/milestone/13?closed=1
AdGuard Home v0.97.1
What time is it? It's a hotfix time! 🌶 Just to be clear, we're not exactly happy about it, but it needed to be done asap.
By the way, fun fact: the more beta testers, the fewer hotfixes! 😮 So if you feel like moving to a beta build is a good idea (absolute madman!), get over to this page. We have beta builds for everything!
AdGuard Home v0.97.0
Hope you didn't get used to all these flashy look-at-all-these-new-features-and-pretty-screenshots types of releases because this time all you get is honest to God bug fixes. 🐞🔨 Well, almost: there have been a few spare [Added]
tags lying around so we've found some use for them. We promise with the next release the changelog will be less like this 🐴 and more like this 🦄.
- [Added] Print DOH/DOT addresses if it's configured: #761
It is now a little bit easier to figure out how to configure your devices to use AdGuard Home as a DOH or DOT server.
- [Added] User-friendly client names -- using
arp -a
command: #826 - [Added] FreeBSD releases: #873
- [Added] An article about regexp usage in own filters: #721
- [Added] An option to check for updates forcibly: #815
- [Fixed] AGH does not notify about expiring certificate until the user opens encryption settings: #851
- [Fixed] panic: runtime error: invalid memory address or nil pointer dereference: #831
- [Fixed] Auto-update: remove backup directory after successful update: #801
- [Fixed] Allow URLs with IP addresses when adding a new filter subscription: #832
- [Fixed] Race on stop when running as a service: #799
- [Fixed] data race in dnsfilter: #807
- [Fixed] Error while making an rDNS lookup for 127.0.0.1: #838
AdGuard Home v0.96-hotfix
We have a good tradition 🎂 Whenever a new version of AdGuard Home gets released, it is required to wait one day and then release a hotfix. Because having bugs in AGH releases is a tradition, too. Hm, now that I think of it, it's not that good of a tradition 🤔 In fact, I don't like it at all! 😡 And you can help us get rid of it forever, now that Beta update channel is available 🎉
Let me now get serious for a minute and describe what was fixed in this update:
- [Fixed] An issue with forcing parental control for specific clients: #727#issuecomment-499593806
- [Fixed] Bootstrapping DOH and DOT uses system resolver on Windows: #770
- [Fixed] Wrong URL in the certificate expiration alert: #806
P.S. One a bright side, if you are using v0.96, you can now check out how the built-in update works. Please note that the update check is performed once in 8 hours.
AdGuard Home v0.96
Hi everyone, we are finally ready to please you with a new version of AdGuard Home! 🎉
This seems to be the biggest update since AdGuard Home first appeared half a year ago, so prepare yourself for a long read. As of usual, I'll explain every major feature in detail.
Beta update channel: #773
If you wanted to contribute to AdGuard Home development but didn't know how - there is an easy option for you now. Use the beta version and report any issues to us (and believe me, there will be 😉).
And for the toughest and bold, there is another option. This is true hardcore. Try using our Docker image from the edge
branch which is synced with this repo's master
branch. You'll be the first to receive all the good stuff we're baking! And the other end of it too... ☯️
Here you can learn more about these options.
Built-in update: #428
Updating AdGuard Home now is as easy as pie 🥧 Whenever a new version is available, AdGuard Home will indicate this in the UI.
If you click on the "Update" button, AdGuard Home will automatically download the new version, install it, and restart itself. It barely even needs you now :)
Please note that auto-update is disabled in the Docker image. You should use the standard Docker Hub procedure instead.
User-friendly client name -- Using Reverse DNS lookup: #706
Tired of seeing faceless IP addresses? 😶 Reverse DNS lookup to the rescue! AdGuard Home will try to resolve a human-readable name for every client IP.
Not human-readable enough? Not a problem! Name them as you wish in the "Client settings". What? Oh, yeah, no big deal, just a completely new settings section.
Client settings: #727
Yeah, you heard it right! Don't want your kids to read gross YouTube comments on their iPads? But also want to read them yourself for whatever reason? We are not judging you! ⚖️ Head to the Client settings and do as you wish.
Add Access settings: #728
You can now control who can use your AGH DNS server 🚦 This one might not seem important to happy people who use AdGuard Home on their home network. However, if you are running a public resolver on a VPS (as I do, for example), you must be familiar with the pain of those pesky hackers trying to use your resolver for their DNS amplification attacks 🤬 The usual course of action was to block them with iptables
which is tedious and takes a lot of time. Especially for a person like me who, despite years of using them, cannot remember the simplest iptables
commands.
Other improvements and bugfixes
- [Added] Static DHCP Lease Configuration: #687
- [Added] Implement NULL blocking in addition to NXDOMAIN: #742
- [Added] Add a link to the list of known DNS providers to Upstream DNS settings: #734
- [Improved] Split settings page into several pages: #726
- [Improved] Optimize memory usage of hosts filters: #714
- [Improved] Use
https
for web services connections: #646 - [Fixed] API does not decode form parameters correctly: #785
- [Fixed] Error processing blocklist: #786
- [Fixed] 303 status code on getting favicon.ico: #766
- [Fixed] We cannot handle hosts files records with an IPv6 address: #735
- [Fixed] Installation wizard: UI doesn't show "port not available" error: #729
Big thanks to all the contributors!
- Thanks to everyone who helped to translate AdGuard Home!
- Thanks to @alexzeitgeist @javabean @frenck @adrianrudnik who open pull requests and contribute to the code!
- Additionally, huge thanks to @frenck for making python AdGuard Home API client, and creating the AGH integration for Home Assistant! Impressive job!
AdGuard Home v0.95-hotfix
Bad things happen even to the best of AdGuard products. Yesterday's release contained a very bad, but thankfully easy-to-fix bug. Hotfixing it right away!
- [Fixed] AGH can be stuck in an infinite loop if both parental control and browsing security are enabled: #732
AdGuard Home v0.95
As we all know, AdGuard Home is almost perfect (haha... no 🙃), so we had no other option for this update than to go with quality of life improvements.
Well, actually, we managed to scrape up some bugs for our devs to fix, so there are bugfixes if you are into them so much. Weirdo.
🧙♂️ Initial configuration wizard
- [Changed] It now checks for root access and solves some known issues automatically: #685
- [Fixed] Do not show 'port 443 is not available' error notification if encryption is not enabled: #700
- [Fixed] 'All Interfaces' redirects Wizard to 0.0.0.0 instead of the proper IP: #655
🌐 DHCP
- [Added] AdGuard Home now suggests setting static IP address when the user tries to enable DHCP: #686
- [Fixed] "Enable DHCP server" is always inactive in some cases: #704
- [Fixed] DHCP Lease Table - Mobile View Compatibility: #688
Minor improvements
- [Added] Enable gzip compression for static files in the admin interface: #626
- [Added] --pidfile argument: #609
- [Added] Enforce safe search on 🦆 DuckDuckGo: #603
- [Added] Prepare and publish a Privacy policy for AG Home: #393
- [Changed] Increase the default timeout used for downloading filters updates: #643
- [Changed] Disable SSL 3.0 and TLS 1.0 and 1.1: #651
Fixed some annoying bugs
AdGuard Home v0.94
Over the last weeks and even months, we've been receiving (mostly) very positive feedback. Unfortunately, our 🤖 developers are not exactly known for their prowess with words, but they for sure know their 0s and 1s. So they express their gratefulness towards the users the only way they were taught: through the product. And as a result of the hard work they've put in last month, we have this new version of AdGuard Home! 💃💃💃 Hope you'll like it too! Let's have a look at what's inside:
User-friendly client name -- using hosts file: #637
🙈 If you don't like seeing nameless IP addresses in the query log and AGH dashboard, you can now define some user-friendly client names for them. Learn how to do it from our wiki.
Parallel DNS Resolution: #596
👆👇 There is now a new option in AdGuard settings that allows you to enable "parallel" DNS resolution. If you enable it, AdGuard Home will send queries to all configured upstream servers simultaneously and return the reply from the server which answers first.
Ability to set upstream DNS per domain/TLD: #445
👨💻 This improvement is for those running a private nameserver on their network to deal with intranet domains. AdGuard Home now provides dnsmasq-like syntax for configuring DNS servers for specific domains/TLDs. You can read the configuration instruction here.
Built-in DHCP server bugs
We fixed the most pressing issues of our built-in DHCP server, and we're quite close to stop calling it "experimental" 😉. Here is what is fixed in this release.
- [Fixed] DHCP - IP Address bug: #567
- [Fixed] DHCP - Duplicate IP Address assigned on more than one device: #539
- [Fixed] DHCP server leases an IP that is already occupied: #584
Other improvements and bugfixes
- [Added] Binaries for MIPS, MIPSLE and Windows x86: #593 #589
- [Added] Add "Bootstrap DNS resolver" setting to the "upstreams" settings section: #542
- [Added] Start using GO 1.12 and enable TLS 1.3: #595
- [Added] Add "Setup guide" menu item: #605
- [Added] Bulgarian language: #612
- [Improved] "Check for update" button should forcibly check updates and ignore last time updated value: #537
- [Fixed] Unnecessary memory allocations when loading filters metadata: #604
- [Fixed] Service restart is required after disabling a filter: #620
- [Fixed] Filter update interval is too frequent: #644
- [Fixed] Config yaml does not support symbol link: #610
- [Fixed] Windows - Cannot specify absolute path in log_file: #606
- [Fixed] favicon.ico is fetched from Adguard servers: #625
- [Fixed] Windows: register service to work under "Local system" user: #598
- [Fixed] Change the default MalwareDomainList filter URL from HTTP to HTTPS: #621
- [Fixed] Empty domain gets to the "Top Queried" domains: #597