pi-hole/虛擬化中心/社群光纖路由/用戶端 DNS

嗨——我是這個社群的新手。剛剛在虛擬化中心用 Ubuntu 設定了 pi-hole 並設了靜態 IP。我用的是 Community Fibre,已經把路由器設成指向 pi-hole 的 IP。不過,當我檢查客戶端的 ipconfig/all 時,DNS 還是顯示路由器的 IP。為什麼會這樣?

你有在你的 DHCP 伺服器中將 pi-hole 設為閘道嗎?

如果你的意思是我有沒有在路由器的 DNS 裡設置 pi-hole 的 IP 地址,那答案是有。我把路由器設為手動 DNS,將 pi-hole 的地址設為主要 DNS,然後把 8.8.8.8 設為次要 DNS。路由器顯示 192.168.1.222 為主要 DNS(pi-hole IP),8.8.8.8 為次要 DNS。然而,當我用 ipconfig/all 檢查客戶端時,顯示的卻是路由器地址——192.168.1.1。為什麼會這樣?

我還沒有將 Pi-hole 設定為 DHCP 伺服器,目前仍由社區光纖路由器管理。

PiHole 必須成為你的用戶端的 DNS 伺服器,而不是你的路由器,所以你需要在 DHCP 伺服器中設置它(這樣 DHCP 伺服器會把 DNS 伺服器資訊提供給用戶端)

請參考這裡的第 3 步

首先,你可以在 Container Station 中設置 pi-Hole,無需在完整的虛擬機(VM)中運行。這樣會佔用更少的系統資源。如果你需要,我有最新版本的 YAML 程式碼可以用來設置。

其次,你說得沒錯,你需要在路由器上設置 Pi-Hole 作為 DNS。不過,請不要設置第二個 DNS 位址。如果因某些原因 Pi-Hole 無法快速存取,你的路由器就會改用 Google DNS,這樣你就會看到廣告等內容。

還有,正如 @dolbyman 所說,請確保 pi-hole 位址已設為 DHCP 伺服器的 DNS。技術上來說,如果你只讓 pi-hole 作為路由器的 DNS 查詢來源,並且讓路由器作為 DNS 伺服器,你也可以使用路由器的位址。

我現在已經修復了這個問題。問題在於我配置了 pi-hole 並設置了來自 pi-hole 的 DNS 伺服器,但我的路由器(Community Fibre)——雖然已經設置為使用 pi-hole 裝置作為 DNS,卻不允許客戶端使用 pi-hole 作為 DNS——在客戶端(執行 ipconfig/all)中,DNS 的位址顯示的是路由器的位址,而不是 pi-hole 的 DNS 位址。最後,我通過讓 pi-hole 提供 DHCP 並關閉路由器的 DHCP 功能來解決這個問題。路由器上的另一個問題是 IPv6 似乎也造成了問題——現在已經在路由器上停用了 IPv6。目前一切正常,DHCP 和 DNS 都由 pi-hole 提供。