Initialize project with clean ignore rules
This commit is contained in:
108
content/projects/Pihole/index.md
Normal file
108
content/projects/Pihole/index.md
Normal file
@@ -0,0 +1,108 @@
|
||||
---
|
||||
title: pihole
|
||||
description: pihole
|
||||
author: wompmacho
|
||||
date: 2024-04-27T23:53:26.059Z
|
||||
lastmod: 2025-02-08
|
||||
editor: markdown
|
||||
showHero: false # needed to hide "hero banner"
|
||||
---
|
||||
|
||||
The Pi-hole is a DNS sinkhole that protects your devices from unwanted content,
|
||||
without installing any client-side software. Useful for blocking ad services at
|
||||
a DNS level. It uses a list of known ad services stored on github, can add your
|
||||
own. It can also operate as a internal dns router and dhcp server.
|
||||
|
||||
## Pihole Setup
|
||||
|
||||
If you have a raspberry-pi or another device, its super easy to get things
|
||||
going.
|
||||
|
||||
- [pihole setup](https://github.com/pi-hole/pi-hole/?tab=readme-ov-file#one-step-automated-install).
|
||||
|
||||
Any debian based system should be able to get things going quickly. Then all you
|
||||
need to do is set your devices to use your pihole as the **primary** dns server.
|
||||
|
||||
**Debian based one-step install**
|
||||
|
||||
``` bash
|
||||
curl -sSL https://install.pi-hole.net | bash
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> I find this to be a little flaky when it comes to DNS, often times OS will need reboots and cache to be cleared in order to actively start using pihole DNS.
|
||||
>
|
||||
> Browsers also store dns info so many things can conflict before your DNS
|
||||
switches over. I find that using Pihole as primary DHCP server forces your
|
||||
devices to use the correct DNS server and fixes a lot of problems.
|
||||
>
|
||||
> Also keep in mind that **ipv6** can interfere if you are like me and have a ISP
|
||||
provider that tries to force their DNS
|
||||
|
||||
|
||||
---
|
||||
|
||||
## Setup on Proxmox VM
|
||||
|
||||
My pihole is operating as a Debian GNU/Linux 12 (bookworm) virtual machine
|
||||
running on Proxmox. I use it as a internal DNS router & DHCP server which makes
|
||||
dns much easier in my case - due to my internet provider trying to force me to
|
||||
use there dns servers. This setup is a little weird and in-order to get
|
||||
everything to work a couple extra steps are need.
|
||||
|
||||
Will need to setup your pihole as a dhcp server, disable the existing dhcp
|
||||
server on the router, reserve static ip addressed for proxmox and pihole so that
|
||||
it can connect to the gateway, set the pihole as primary dns server on proxmox,
|
||||
set proxmox to use dhcp rather than static ip and finally set pihole VM to
|
||||
automatically boot first so that when it connects to the gateway devices
|
||||
connected to the gateway are issued ip address from the pihole.
|
||||
|
||||
> [!WARNING]
|
||||
> If you are using pihole for DHCP / DNS, keep in mind if the device goes down
|
||||
that is hosting your pihole server, so will your DNS / DHCP. This May prevent
|
||||
you from connecting to your network until you re-enable a dhcp server such as
|
||||
the one in your router.
|
||||
|
||||
- reserve a ip address in router/gateway for proxmox server & pihole
|
||||
|
||||

|
||||
|
||||
- set pihole to enable DHCP
|
||||
|
||||

|
||||
|
||||
- set proxmox to get DHCP on boot rather than Static IP which is default
|
||||
|
||||
``` bash
|
||||
root@laptop-proxmox:~# cat /etc/network/interfaces
|
||||
auto lo
|
||||
iface lo inet loopback
|
||||
|
||||
iface enp3s0 inet manual
|
||||
|
||||
auto vmbr0
|
||||
iface vmbr0 inet dhcp
|
||||
bridge-ports enp3s0
|
||||
bridge-stp off
|
||||
bridge-fd 0
|
||||
|
||||
iface wlp4s0 inet manual
|
||||
```
|
||||
|
||||
- set proxmox default DNS server to pihole reserved address
|
||||
|
||||

|
||||
|
||||
- set pihole to automatically start on boot with highest priority boot order
|
||||
|
||||

|
||||
|
||||
- set sattic ip and gateway info for pihole netwoking configuration '
|
||||
|
||||

|
||||
|
||||
- Disable DHCP server in gateway / router settings
|
||||
|
||||

|
||||
|
||||
- If router has option to set default DNS, set to pihole reserved address
|
||||
BIN
content/projects/Pihole/pihole_boot_order.png
Normal file
BIN
content/projects/Pihole/pihole_boot_order.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
BIN
content/projects/Pihole/pihole_dhcp_example.png
Normal file
BIN
content/projects/Pihole/pihole_dhcp_example.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 46 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
BIN
content/projects/Pihole/proxmox_dns_example.png
Normal file
BIN
content/projects/Pihole/proxmox_dns_example.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
BIN
content/projects/Pihole/reserved_ip_example.png
Normal file
BIN
content/projects/Pihole/reserved_ip_example.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.1 KiB |
BIN
content/projects/Pihole/router_disable_dhcp_example.png
Normal file
BIN
content/projects/Pihole/router_disable_dhcp_example.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 19 KiB |
Reference in New Issue
Block a user