Проект github.com/StevenBlack/hosts предлагает простой подход для блокировки
рекламы и вредоносных сайтов, не требующий установки дополнений и работающий в
любых операционных системах и браузерах. Суть метода в размещении черного
списка с доменами рекламных сетей в файле /etc/hosts. При попытке загрузки
рекламного блока имя связанного с ним домена резолвится в несуществующий адрес
0.0.0.0 и реклама не отображается из-за недоступности сервера.
Адрес 0.0.0.0 используется вместо обычно практикуемого 127.0.0.1 так как
попытка соединения с ним сразу возвращает ошибку без ожидании истечения
таймаута. В настоящее время в БД находится более 27 тысяч записей, составленных
на основе популярных публичных списков блокировки, в том числе adaway.org, mvps.org,
malwaredomains.com, someonewhocares.org и yoyo.org. При этом
разработчики пытаются добиться разумного компромисса, избежать ложных
срабатываний и слишком большого разрастания базы (например, похожий список
http://hosts-file.net содержит более 300 тысяч записей).
Список постоянно обновляется, поэтому для поддержания /etc/hosts в актуальном
состоянии предлагается специальный скрипт updateHostsFile.py, который можно
прописать в crontab, а можно время от времени запускать вручную.
После обновления /etc/hosts следует перезапустить службу резолвинга:
Debian/Ubuntu
sudo /etc/rc.d/init.d/nscd restart
Fedora Linux, Arch Linux, Manjaro:
sudo systemctl restart NetworkManager.service
Другие Linux с systemd:
sudo systemctl restart network.service
OS X:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
Windows:
ipconfig /flushdns
|