Ads blocken met je eigen DNS server (3)

Door Tomba op donderdag 12 december 2013 14:29 - Reacties (15)
CategorieŽn: Linux, Systeembeheer, Views: 4.735

In mijn eerdere blogposts heb ik al uit de doeken gedaan hoe ik er thuis voor zorg dat onze internet ervaring zo reclamevrij mogelijk is.
Helaas blijkt mijn oplossing niet meer te werken sinds 6 december! Wat blijkt? MSMVPS heeft een aanpassing gedaan in hun hosts file:
Important Note: This update contains a change in the prefix in the HOSTS entries to "0.0.0.0" instead of the usual "127.0.0.1".This was done to resolve a slowdown issue with the new Win8.1/IE11 and the HOSTS file.

I'm not sure what Microsoft changed in the new version, although I suspect it has something to do with the new "TCP loopback interface" in Win8.1 ... this change in the prefix should not affect users.

If this proves to be a permanant fix ... I will update the website to reflect the changes.
Het resultaat is, dat geen enkele ad meer geblokkeerd wordt! Gelukkig is dit niet moeilijk te ondervangen, door 1 regel in het script aan te passen (127.0.0.1 moet gewijzigd worden naar 0.0.0.0 anders komen er geen resultaten uit de grep!) werkt alles weer helemaal naar behoren.

code:
1
2
3
4
5
6
7
8
9
10
11
# Automatic ad blacklist by Tomba based on Gjs script (http://tomba.tweakblogs.net/blog/9171/ads-blocken-met-je-eigen-dns-server.html#r_127502 )
# 2013-12-12 Changed due to different syntax in MSMVP hostfile

# Make backup of current zone file
cp /etc/bind/adservers /etc/bind/adservers.backup

# Get newest MVPS HOSTS File Update and write it to /etc/bind/adservers
curl -s http://winhelp2002.mvps.org/hosts.txt |grep -v localhost| grep ^0.0.0.0 |awk '{print $2}' |awk '{ sub(/\r$/,""); print "zone \""$0"\" { type master; notify no; file \"null.zone.file\"; };" }' > /etc/bind/adservers

# Restart Bind to make sure it picks up the new zonefile
service bind9 restart



Voor de rest is er aan de procedure niets veranderd, dus je moet zorgen dat het script uitvoerbaar is en dat ie gescheduled wordt mbv cron, zie daarvoor mijn 2e blogpost over deze oplossing :)