A black hole for Internet advertisements
Find a file
jacobsalmela 9d700d75b6 Update to reflect #20
You can add your own config file to permanently set variables used in
the gravity script.  If the file exists, gravity.sh will detect it and
apply your custom variables.  This is useful so when there is an update
to the gravity script, you do not need to adjust the variables every
time.
2015-06-21 07:53:29 -05:00
advanced Add local-ttl to dnsmasq config so that queries are cached by the requesting device. 2015-06-19 14:10:48 -07:00
automated install misspelled "install" 2015-06-16 17:23:48 -05:00
block hulu ads preparing files for merge and for testing automated install 2015-06-16 11:15:15 -05:00
gravity.sh Use double brackets for the test. 2015-06-19 17:54:12 -07:00
LICENSE Initial commit 2014-06-08 10:02:55 -05:00
README.md Update to reflect #20 2015-06-21 07:53:29 -05:00

Raspberry Pi Ad Blocker

A black hole for ads, hence Pi-hole

Pi-hole

The Pi-hole is a DNS/Web server that will block ads for any device on your network.

Coverage

Featured on MakeUseOf and Lifehacker!

Automated Install

Make sure to set a static IP address before running this!!

On a clean installation of Raspbian, you can run this command to auto-install the Pi-hole. Once installed, configure any device to use the Raspberry Pi as your DNS server and the ads will be blocked.

curl -s "https://raw.githubusercontent.com/jacobsalmela/pi-hole/master/automated%20install/basic-install.sh" | bash

Gravity

The gravity.sh does most of the magic. The script pulls in ad domains from many sources and compiles them into a single list of over 900,000 entries.

Custom Config File

If you want to use your own variables for the gravity script (i.e. storing the files in a different location) and don't want to have to change them every time there is an update to the script, create a file called /etc/pihole/pihole.conf. In it, you should add your own variables in a similar fashion as shown below:

origin=/var/run/pihole
adList=/etc/dnsmasq.d/adList

See this PR for more details.

Whitelist and blacklist

You can add a whitelist.txt or blacklist.txt in /etc/pihole/ and the script will apply those files automatically.

How It Works

A technical and detailed description can be found here!

Other Operating Systems

This script will work for other UNIX-like systems with some slight modifications. As long as you can install dnsmasq and a Webserver, it should work OK. The automated install only works for a clean install of Raspiban right now since that is how the project originated.