You're running Pi-Hole wrong! Setting up your own Recursive DNS Server!

You're running Pi-Hole wrong! Setting up your own Recursive DNS Server!

Setting up PiHole as a DIY DNS Server

In this tutorial, the speaker explains how to install and set up PiHole as a recursive DNS server, eliminating the need to forward DNS requests to third parties like Google or your internet service provider.

Installing PiHole and Understanding its Functionality

  • PiHole is a self-hosted DNS server that blocks ads when visiting web pages.
  • By default, PiHole is a forwarding DNS server with a specific list of websites it has IP addresses for. If it doesn't have an address, it forwards the request to the next configured DNS server.
  • PiHole filters out ad-containing websites from loading when requests go through it.
  • We can configure PiHole as a recursive DNS server, which seeks out authoritative domain servers for website resolution. This improves speed and eliminates reliance on third-party DNS servers.

Building the PiHole Server

  • The speaker creates a new virtual machine using Proxmox but mentions that you can use a Raspberry Pi or any hypervisor of your choice.
  • Selecting Ubuntu 20.04 as the operating system for the virtual machine.
  • Allocating resources such as CPU cores and RAM for the virtual machine.
  • Opening the console to install Ubuntu on the virtual machine.

Configuring Ubuntu Installation

  • During installation, selecting English as the main language and a US keyboard layout.
  • Setting a server name, username, password, and installing OpenSSH server for easier installation later on.

Obtaining the IP Address

  • After Ubuntu is installed and running, logging in with the credentials set during installation.
  • Using the ip address command to find the IP address of the PiHole server.

The transcript provided does not include timestamps for some parts of the video.

Installing Pi-hole

In this section, the speaker explains how to install Pi-hole using a script.

Installing Pi-hole

  • Use the provided script from either the GitHub or Pi-hole websites to install Pi-hole.
  • Open the terminal and type sudo paste followed by the script.
  • Press Enter to start the installation process.

Introduction to Video Sponsor - Linode

The speaker introduces Linode as the video sponsor and highlights its benefits for hosting personal cloud services.

Introduction to Linode

  • Linode is a hosting service that allows users to set up their own cloud services on Linux.
  • It offers various hosting plans starting from shared CPU options to high-performance virtual machines.
  • Users can deploy and manage their own cloud services easily with Linux.
  • Linode provides solutions for ad-blocking recursive DNS servers and personal VPN tunnels.

Setting Up Pi-hole Web Interface

The speaker explains the setup process for the Pi-hole web interface.

Setting Up Pi-hole Web Interface

  • During installation, select default settings unless specified otherwise.
  • Set up an upstream DNS server (e.g., Google) for DNS forwarding within Pi-hole.
  • Choose to block ads over IPv4 and IPv6.
  • Decide whether to convert DHCP address into a static address (temporary solution).
  • Install the web admin interface, web server, and required PHP modules.
  • Choose whether or not to log queries (consider privacy concerns).
  • Select different modes for logging queries based on preferences.
  • Default mode shows everything (client and accessed website).
  • After installation, wait for about 60 seconds for Pi-hole setup completion.

Accessing Pi-hole Web Interface and Setting Password

The speaker explains how to access the Pi-hole web interface and set a custom password.

Accessing Pi-hole Web Interface and Setting Password

  • Most users can access the web interface using the IP address followed by "/admin" (e.g., 192.168.1.99/admin).
  • Take note of the provided password or reset it from the SSH session.
  • To set a custom password for the Pi-hole web interface, use the command hole -a -p followed by the desired password.
  • Verify correct setup by logging into the web interface with the set password.

Installing Unbound for Recursive DNS Server

The speaker introduces Unbound as a tool to transform Pi-hole into a full recursive DNS server.

Installing Unbound

  • Update app repository using sudo apt update.
  • Install Unbound to enable recursive DNS server functionality in Pi-hole.

For more detailed instructions, refer to the full written tutorial on the Pi-hole website linked in the video description.

Setting up the Configuration File

In this section, the speaker explains how to create and configure the necessary files for setting up Pi-hole as a DNS server.

Creating the Configuration File

  • Use sudo nano to open a new file.
  • Copy and paste the configuration file from the Pi-hole website into the editor.
  • Save and exit by pressing Ctrl + X, then confirming with 'y' and hitting enter.

Changing DNS Port

  • The speaker explains that it is necessary to change the DNS port from 53 to 5335 in order to avoid conflicts with Pi-hole already listening on port 53.
  • This change allows Pi-hole to act as a DNS server while forwarding requests to Unbound via port 5335.

Updating DNS Settings in Pi-hole

  • Open the Pi-hole main page and go to settings.
  • Click on the "DNS" tab at the top.
  • Uncheck any Google DNS servers previously set up during installation.
  • Scroll down to "Upstream DNS Servers" and check "Custom 1 (IPv4)".
  • Enter "127.0.0.1#5335" as the custom upstream DNS server address.
  • Scroll down and click on save.

Testing Pi-hole as an Ad Blocker and Recursive DNS Server

In this section, the speaker demonstrates how Pi-hole can be used as both an ad blocker and a recursive DNS server.

Testing Ad Blocking

  • The speaker shows their Pi-hole logging on one side of their screen and visits msn.com, a heavily ad-laden website, on another side of their screen.
  • They point out various ads that are blocked by Pi-hole, including banners, sponsored headlines, and video players.

Configuring Network Interfaces

  • The speaker opens the network interfaces settings and selects their Ethernet connection.
  • They go to properties, then IPv4 connections, and specify the Pi-hole server's IP address (e.g., 192.168.1.99) as the DNS server.

Testing Pi-hole as a Recursive DNS Server

  • The speaker revisits msn.com after configuring their network interface.
  • They note that while some ads are still present due to Microsoft hosting their own ads, many have been blocked by Pi-hole.

Understanding Pi-hole Logs

In this section, the speaker explains how to interpret the logs generated by Pi-hole.

Forwarding Requests to Unbound

  • In the log history, requests that say "forward it on to localhost 5335" indicate that Pi-hole is forwarding DNS queries to Unbound for resolution.

Cached Results

  • Results labeled as "OK (cached)" indicate that Pi-hole has cached the IP addresses of certain websites and can directly serve those queries without forwarding them to Unbound.

Blocked Requests

  • The speaker points out blocked requests in the log, which indicates that Pi-hole has identified them as part of its ad repository and prevented access.

Local DNS Queries with Pi-hole

In this section, the speaker discusses how Pi-hole can respond to local DNS queries without manual configuration.

Simplified Local DNS Configuration

  • Previously, adding local DNS queries required manually editing the hosts file in Pi-hole.
  • Now there is a dedicated tab for local DNS records where users can create records based on internal services running on their server stack.

Conclusion

Pi-hole can be set up as a recursive DNS server and ad blocker. It forwards requests to Unbound for resolution and blocks ads effectively. Additionally, it offers simplified local DNS configuration for internal services.

New Section

The speaker discusses joining a community and invites viewers to engage with them on a different platform.

Joining the Community

  • The speaker encourages viewers to join their ever-growing community on another platform.
  • This provides an opportunity for viewers to interact and ask questions without using Twitter DMs.

New Section

The speaker introduces the beer they will be reviewing in this video.

Beer Review: Elf Schneider Hoppy German Style Hefeweizen Ale

  • The beer is from Fry Geist Beer Culture, based in St. Louis, Missouri.
  • It is a hoppy German-style hefeweizen ale with 6.0% alcohol content.
  • Fry Geist may be a gypsy brewer as it is brewed and canned by Urban Chestnut Brewing Company for Fry Geist.
  • The speaker describes an interesting smell of the beer but does not provide specific details about the hops used.

New Section

The speaker shares information about Fried Ice's mission and their approach to brewing.

Fried Ice's Mission and Brewing Approach

  • Fried Ice was founded in 2009 with the aim of reviving Germany's lost artisanal ales.
  • They offer bold American-influenced twists on traditional German beer styles.
  • This particular beer incorporates generous editions of Cascade and Mosaic hops, giving it tropical fruity notes and an extra burst of American-style bitterness.

New Section

The speaker shares their initial impressions of the beer's taste profile.

Taste Profile Impressions

  • The speaker compares the taste experience to doing a shandy with grapefruit soda and lager, even though it is an IPA and hefeweizen combination.
  • They describe the tropical flavor as more melon-like rather than citrusy.
  • The beer has a rich banana flavor from the German malt, which is typical of hefeweizens.
  • However, the speaker notes that they are missing some of the usual spices and tastes associated with hefeweizens.
  • Overall, they find the beer interesting but not entirely satisfying.

New Section

The speaker reflects on their overall impression of the beer and its balance between being a hefeweizen and an Americanized IPA.

Balancing Hefeweizen and American IPA

  • The speaker finds the beer interesting but feels conflicted about it.
  • They express a preference for it to lean more towards being a traditional hefeweizen rather than an Americanized version.
  • On the other hand, they also feel that it is not quite Americanized enough in terms of hop flavor.
  • In conclusion, while not disappointed with the beer, it does not fully meet their expectations as either a hefeweizen or an American IPA.