Google Chrome недавно был обновлен для поддержки асинхронного DNS, что имеет побочный эффект, заключающийся в взломе блокировщиков рекламы на основе DNS. См. здесь исправление.
Недавно Google добавил поддержку функции, известной как асинхронный DNS. в Google Chrome, целью которого является ускорение загрузки страниц за счет определения IP-адреса веб-сайта до того, как вы нажмете на ссылку. Он работает путем сканирования веб-страницы при ее загрузке, поиска всех связанных доменных имен и использования сервера доменных имен (DNS) для поиска IP-адреса, связанного с каждым из них. Google заявляет, что должен уважать DNS-сервер, который пользователь настроил на устройстве, но в некоторых случаях это не так. Пользователи сообщают, что блокировщики рекламы на основе DNS, такие как AdHell и DNS66, больше не работают корректно в последней версии Chrome.
Как выяснилось, Google не всегда соблюдает DNS, настроенный на устройстве, и возвращается к своему собственному, поэтому пользователи снова начинают видеть рекламу. Считается, что это не влияет на блокировщики рекламы, которые не используют DNS для блокировки рекламы, например NetGuard, который вместо этого использует собственный брандмауэр.
Однако младший участник XDA терсоно обнаружил, что существует исправление, которое можно довольно легко применить изнутри самого приложения. Он включает в себя редактирование флага Chrome для отключения асинхронного DNS. Обратите внимание: вполне возможно, что загрузка веб-сайтов может занять немного больше времени, учитывая, что функция, которую мы будем использовать, отключение используется для того, чтобы веб-страницы могли запускаться быстрее, но это будет иметь лишь незначительное влияние — если оно есть. совсем.
Исправление блокировщиков рекламы на основе DNS в Google Chrome
Шаг 1. Отключение функции асинхронного DNS в Chrome
Сначала вам нужно перейти к хром://флаги в строке URL-адреса, где вы попадете в меню, в котором сможете включать и отключать функции Chrome. Найдите «DNS» и отключите функцию «Асинхронный преобразователь DNS».
Шаг 2. Очистка кэша DNS
Далее нам нужно очистить кэш DNS. Это связано с тем, что Google по-прежнему будет иметь множество разных доменных имен, сопоставленных с их IP-адресами, и сохранять их в файле. Это означает, что переключения этой функции недостаточно, поскольку, если вы до сих пор сталкивались с какой-либо рекламой, IP-адрес Google Chrome все равно будет сохранен. Мы можем довольно легко очистить этот кеш, просто перейдите к хром://сетевые-внутренности. Перейдите на вкладку DNS и нажмите «Очистить кеш хоста».
Шаг 3. Перезапустите Chrome.
Действительно просто: просто перезапустите Chrome, смахнув его в меню «Последние» или принудительно остановив приложение в настройках приложения вашего устройства.
Почему мои блокировщики рекламы на основе DNS теперь работают с Google Chrome?
Благодаря недавним изменениям Google он часто будет использовать DNS Google и не учитывать никакую другую работающую службу DNS на устройстве. Это затрагивает не только DNS-блокировщики рекламы, но и всех, кто использует VPN, поскольку любые DNS-запросы будут просачиваться. Для многих это представляет собой проблему конфиденциальности, а не просто неприятность для тех, кто не хочет видеть рекламу.
Мы отключили эту новую функцию, реализованную в Google Chrome, отключив флаг, и поэтому приложение будет вынуждено использовать любой DNS-сервер, который использует остальная часть системы Android. Неизвестно, будет ли это исправление работать в будущем, поскольку возможно, что флаг может быть полностью удален, когда эта функция станет включенной по умолчанию в будущей версии Chrome.