Pi-hole® - 在DNS層面擋掉廣告及追蹤

PikachuEXE
·
·
IPFS
·
順便簡單解釋一下DNS是甚麼

這篇文不會包括Proxmox/Pi-hole的安裝/設定等
網上很多文章/影片可以看啦

官網:https://pi-hole.net

從https://github.com/pi-hole/pi-hole抓的Logo

本文概要

  • 為甚麼我要使用Pi-hole

  • DNSDNS伺服器簡介

  • Pi-hole運作原理

  • 我個人Pi-hole及其他相關設定

  • Pi-hole網頁介面截圖


為甚麼我要使用Pi-hole

雖然我本身有一直使用VPN服務(它有自己的DNS伺服器以免用戶因傳送DNS查詢而被追蹤),但不是所有裝置都可以/需要使用該VPN服務(例如家中的電視機)

所以要令不使用VPN服務的裝置都能免於被追蹤,其中一種方法就是使用Pi-hole作為DNS伺服器啦


DNSDNS伺服器簡介

DNS全名是Domain Name System,即是把網域名(較易讓人使用的字串,例如matters.town)變成IP地址(各種網絡裝置上實際被使用的地址,例如1.1.1.1

DNS伺服器就是負責把網域名轉為IP地址,不過通常都會設定一或多個「上游伺服器」,自身不能回應的查詢(例如答案不在快取中)會根據自身規則/設定把查詢丟到某個上游伺服器,該上游伺服器也有可能再一次把查詢丟到它的上游直至有一個伺服器回應(不論該查詢的域名有沒有答案)

詳細直接看https://www.cloudflare.com/zh-tw/learning/dns/what-is-dns/


Pi-hole運作原理

其實上一章已提及部分內容
Pi-hole也只是包含一種容易改變設定DNS伺服器,還有網頁介面方便用家加入各種Blocklist(阻擋清單)及各種自訂規則(黑白名單)

當任何裝置傳送DNS查詢而Pi-hole設定中又有任何設定令Pi-hole判斷該域名需要被阻擋,那它就不會再傳送該查詢到任何上游伺服器,並根據阻擋模式立即傳送某種回應到傳送DNS查詢的裝置

有點舊的介紹影片:

https://youtu.be/KBXTnrD_Zs4

我個人Pi-hole及其他相關設定

Pi-hole設定:

  • 安裝在OPNSense那部電腦上

  • .zip.mov兩個TLD都擋了(之前那篇文提過的)

  • 只使用Pi-hole預設的Blocklist
    (實際上大部分時間只有電視機在用,不用那麼講究)

  • 上游伺服器為OPNSense(上一篇文的主角,家中的新路由器)裡的Unbound DNS
    Unbound DNS是要手動啟用的,因為不一定每個用家都會用路由器作本地的DNS伺服器(有些人直接用遠端DNS伺服器)

OPNSense設定:

  • .zip.mov兩個TLD都擋了(未設定Pi-hole前設定的,也作為後備阻擋)

  • 啟用DNS over TLS以防止被中間人追蹤、篡改或偽造
    詳看https://www.cloudflare.com/zh-tw/learning/dns/dns-over-tls/

  • DHCP伺服器中設定主要DNS伺服器為Pi-hole,次要為OPNSense裡運行的Unbound DNS
    防止因為Pi-hole停掉了就一堆東西不能用(OPNSense通常沒事不會停掉)

DHCP是甚麼(從維基抄的):

動態主機設置協定(英語:Dynamic Host Configuration Protocol,縮寫:DHCP),又稱動態主機組態協定,是一個用於IP網絡的網絡協定,位於OSI模型的應用層,使用UDP協定工作,主要有兩個用途:
- 用於內聯網或網絡服務供應商自動分配IP位址給用戶
- 用於內聯網管理員對所有電腦作中央管理

或者直接看影片

https://youtu.be/e6-TaH5bkjo

Pi-hole網頁介面截圖

首頁 - 有各種統計數字及過去24小時的統計圖表
首頁(再向滾下一點) - 被阻擋最多的域名
長期統計圖表
查詢紀錄(但Pi-hole可以設定不紀錄查詢)
自訂黑白名單

因為Pi-hole是用作阻擋廣告追蹤等,所以下圖應該最適合:


CC BY-NC-ND 4.0 授权

喜欢我的作品吗?别忘了给予支持与赞赏,让我知道在创作的路上有你陪伴,一起延续这份热忱!