TL;DR

Chrome has a new feature “Async DNS resolver” which might use other DNS servers than configured. This breaks DNS based blockers like Pi-hole.

Disable it on Android open chrome://flags/ in chrome browser

search for dns

disable Async DNS resolver

restart browser (browser will suggest it on the bottom) go to chrome://net-internals/#dns

Async DNS should be disabled

clear Host resolver cache Before (192.167.77.7 is Pihole as DHCP and DNS server)

Disabling

After



Disable it on Desktop Create a link to Chrome on your Desktop Right click - then Properties In Shortcut Tab - append --disable-async-dns to Target

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-async-dns Start Chrome from that link

go to chrome://net-internals/#dns

Async DNS should be disabled

Clear Host resolver cache (optional) you can right click the link and pin it to taskbar

Disable it on Mac Run Terminal.app then use the following command: open /Applications/Google\ Chrome.app --args --disable-async-dns This will launch it once using the parameter. From there you could make an alias to make it easier to launch from the terminal or write an AppleScript to make it double clickable.

I use Pi-hole on my network. Recently I got Google Ads on my smartphone despite Pi-hole. After opening the same website on Firefox the Ads were not there. This had to be something with Chrome.

After some research I found out that Chrome is using IPv6 DNS servers. This prevents Pi-hole from blocking those requests.

Async DNS resolver

Recently, Google added support for a feature known as asynchronous DNS to Google Chrome, which aims to speed up page loading times by resolving the IP address of a website before you click the link. It works by scanning a web page as it loads, finding any domain names linked and using a Domain Name Server (DNS) to find the IP address associated with each of them. Google says it should respect the DNS server that the user has configured on-device, but on some occasions, this seems not to be the case. Users are reporting that DNS based ad-blockers like Pi-hole no longer function correctly on the latest version of Chrome.

Fixing DNS-Based Ad Blockers in Google Chrome

Disable Chrome’s Asynchronous DNS Feature

Clear the DNS Cache

Restart Chrome

See detailed steps after TL;DR on top of the post