Installing Pi-hole on an Orange Pi One
I recently integrated Pi-hole into my home network using an Orange Pi One and my TP-Link Archer C7 V2 router. I decided to outline my steps in case somebody else is wondering how to do it with that exact hardware.
Pi-Hole is an open source project that claims to be "a black hole for Internet advertisements", which means it is basically a local DNS with loopbacks for known ad servers. When you're done with this article, you'll have an ad-free experience for all the devices on your home network. Installing everything is a fairly easy process that will leave you feeling like a renegade from big data tracking.
For this example, I'm going to use two devices that I already had available: a TP-Link Archer C7 V2 router, and an Orange Pi One micro-computer.
The choice of router is just out of convenience. It's probably discontinued by now, but it was affordable and serviceable when I was last shopping for a home router. I have the latest firmware from the factory, which is good enough for the purposes of this article.
The Orange Pi One is a little computer that offered a significant CPU advantage over the previous generation Raspberry Pi. It's got a quad-core CPU, 512MB of RAM, no WiFi, and a strange proprietary power plug. It costs $15, and if you buy it from the company I bought it from, they'll ship it to you twice and tell you to keep both of them. For this example, I suggest using the second one you receive — it's luckier.
For the micro-SD card, I just buy SanDisk SDSDQUIP-016G cards for ~$10 from WalMart. I have no idea how long they'll last, but they're available in stores, Class 10, and large enough to do the job.
I got my Orange Pi One(s) a few years ago, back when most of the information about it was written in Chinese. I struggled with their official operating system builds, and could never really find a use for them. Every few months I'd stumble across a fun looking open source project using Pis, only to find that the latest official Orange Pi image was still very outdated and unsupported. Raspbian was supported by most open source projects, but didn't work on the Orange Pi's esoteric hardware.
What I didn't know was that the official images are widely regarded as total garbage, and that you should completely disregard them. I suspected this from the get-go, but I couldn't seem to be able to get a stable OS running on them on my own.
Of course, as I struggled in a void, people much more skilled than me had already solved all my problems.
Armbian is an open source project that has specific builds for the Orange Pi One. It's a perfect fit. You just flash the disk, use the user/password to log in, and everything else is handled automatically. It gives you a command line interface that you can SSH into and do anything your heart desires. I kind-of can't believe how easy it was to get up and running.
Anyway, now that we've got our hardware and choice of operating system selected, let's get to installing everything!
Installing the Operating System
Flash the Armbian Stretch ISO to the SD card and put it into the Orange Pi One.
During set up, your user is
root and the password is
1234, which it will require you to change.
Anecdotally, I had to do this a few times before it worked. That may have been due to an insufficient power supply, or maybe I was really just terrible at typing my password twice.
After that, you create a user that has sudo privileges. I called mine "orangepione" and SSH'd into it using the command
Armbian comes with a config application that can install third-party applications like Pi Hole for you. You get to it with the command
If you prefer to do it manually (or, um, you overlooked the fact that Armbian came with an installer), then you'll want to run
apt-get update &
apt-get upgrade, and then run this command:
curl -sSL https://install.pi-hole.net | bash
In the interest of security, please check https://github.com/pi-hole/pi-hole and make sure the command hasn't changed. There are other manual installation methods you may prefer, as well.
The setup process for the Pi Hole is verbose and includes a nice throwback command-line interface for setting your DNS server, network settings, blocklists, etc. I used the default settings for all of them, knowing they would be easily changeable using the web interface afterward.
Copy the password that it generates for you. You'll need that to log into the web interface.
Setting Up Your Network
Log into your router's admin page. Click on the DHCP section, and then go to DHCP Clients List. Find the orangepione device and copy its MAC address. Go to the 'Address Reservation' page and click the 'Add New...' button. Paste the MAC address, and type in a permanent IP address for the Orange Pi One. Personally, I used 192.168.0.224.
Reboot the router.
Log back into the router admin. Go to your DHCP Settings section. Change the Primary DNS field to the IP address of your Orange Pi.
Hey, you did it! Your Pi Hole DNS server is now live and actively blocking ads. Now you can visit http://192.168.0.###/admin to see a lovely dashboard with instant views and a full-powered settings section. You can see in real-time exactly how many ads are attempting to be loaded with every page refresh. Amazon.com is scary.
I hope you enjoyed this article on setting up Pi Hole on an Orange Pi One and a TP-Link Archer C7 V2 router. If you are a weirdo that somehow has the exact same hardware as me, leave a comment or hit me up on Twitter. I'm sure we can talk at length about our love of vanilla ice cream or how Citizen Kane really is a great movie.