差異處
這裏顯示兩個版本的差異處。
兩邊的前次修訂版 前次修改 下次修改 | 前次修改 | ||
tech:pihole_unbound [2023/11/03 10:43] – [驗證成效] jonathan | tech:pihole_unbound [2025/02/22 07:34] (目前版本) – [FAQ] wildcard dns - pi-hole v6 之後, 需要再 GUI 勾選 misc.etc_dnsmasq_d jonathan | ||
---|---|---|---|
行 3: | 行 3: | ||
* 安裝環境 : | * 安裝環境 : | ||
* VM : 1vCore, 1G RAM, 16G SSD | * VM : 1vCore, 1G RAM, 16G SSD | ||
- | * OS : Alpine 3.18 + Docker Compose | + | * OS : Alpine 3.21 + Docker Compose |
* 參考 [[tech/ | * 參考 [[tech/ | ||
===== 安裝設定 ===== | ===== 安裝設定 ===== | ||
* 編輯 docker-compose.yml < | * 編輯 docker-compose.yml < | ||
- | version: ' | ||
- | |||
networks: | networks: | ||
dns_net: | dns_net: | ||
行 16: | 行 14: | ||
config: | config: | ||
- subnet: 172.22.0.0/ | - subnet: 172.22.0.0/ | ||
+ | external: false | ||
services: | services: | ||
行 22: | 行 21: | ||
hostname: pihole | hostname: pihole | ||
image: pihole/ | image: pihole/ | ||
+ | #shm_size: ' | ||
networks: | networks: | ||
dns_net: | dns_net: | ||
行 33: | 行 33: | ||
- ' | - ' | ||
- ' | - ' | ||
- | - 'DNS2=no' | + | - 'DNS2=1.1.1.1' |
+ | - ' | ||
+ | - ' | ||
+ | - ' | ||
+ | - ' | ||
+ | - ' | ||
+ | cap_add: | ||
+ | - NET_ADMIN | ||
+ | - SYS_NICE | ||
volumes: | volumes: | ||
- ' | - ' | ||
- ' | - ' | ||
- | restart: | + | |
+ | depends_on: | ||
+ | unbound: | ||
+ | condition: service_healthy | ||
+ | healthcheck: | ||
+ | test: [" | ||
+ | interval: 30s | ||
+ | timeout: 10s | ||
+ | retries: 3 | ||
+ | start_period: | ||
+ | #disable: true | ||
+ | | ||
unbound: | unbound: | ||
行 45: | 行 64: | ||
dns_net: | dns_net: | ||
ipv4_address: | ipv4_address: | ||
- | | + | volumes: |
#- ./ | #- ./ | ||
+ | - ./ | ||
ports: | ports: | ||
- " | - " | ||
- " | - " | ||
healthcheck: | healthcheck: | ||
- | disable: | + | disable: |
- | restart: | + | restart: |
</ | </ | ||
* 啟動服務 <cli> | * 啟動服務 <cli> | ||
行 65: | 行 85: | ||
* 使用 https:// | * 使用 https:// | ||
* 可以參考 https:// | * 可以參考 https:// | ||
+ | * 可以參考 https:// | ||
+ | * 可以參考 [[tech/ | ||
===== FAQ ===== | ===== FAQ ===== | ||
行 100: | 行 122: | ||
docker compose up -d | docker compose up -d | ||
</ | </ | ||
- | + | - 如何調整自動更新週期 | |
+ | * 參考 : | ||
+ | * < | ||
+ | * [[https:// | ||
+ | - 先確認可以在 host 執行更新< | ||
+ | docker exec pihole pihole updateGravity | ||
+ | </ | ||
+ | - 在 host 建立 crontab 定義更新週期 | ||
+ | - 如何增加一筆 wildcard 的 DNS 紀錄 Exp. *.lab.ichiayi.com -> 192.168.11.30 | ||
+ | * 參考網址 - https:// | ||
+ | * 參考網址 - https:// | ||
+ | * 其實是可以設定, | ||
+ | * 在 pi-hole v6 之後, 需要再 GUI 勾選 **misc.etc_dnsmasq_d** | ||
+ | * Settings-> | ||
+ | * 手動處理程序如下: | ||
+ | - 在 / | ||
+ | - 在檔案內加入 address=/ | ||
+ | - 重啟 pihole-FTL 服務 < | ||
+ | docker compose restart pihole | ||
+ | </ | ||
+ | - 透過 nslookup abc.lab.ichiayi.com 就可以看到回應的 IP 是 192.168.11.30 | ||
+ | - 如何增加一筆 MX 的 DNS 紀錄 Exp. mail.ichiayi.com -> mail.ichiayi.com , 50 | ||
+ | * 參考網址 - https:// | ||
+ | * 其實是可以設定, | ||
+ | - 在 / | ||
+ | - 在檔案內加入 mx-host=mail.ichiayi.com, | ||
+ | - 重啟 pihole-FTL 服務 < | ||
+ | docker compose restart pihole | ||
+ | </ | ||
+ | - 透過 nslookup set type=mx mail.ichiayi.com 就可以看到回應 | ||
+ | - 當發現 pi-hole 內的 nslookup 查詢速度很緩慢(/ | ||
+ | * 參考 - https:// | ||
+ | - 將 docker-compose.yml 內的< | ||
+ | : | ||
+ | ports: | ||
+ | - 53:53/udp | ||
+ | - 53:53/tcp | ||
+ | : | ||
+ | </ | ||
+ | : | ||
+ | ports: | ||
+ | - 172.16.0.245: | ||
+ | - 172.16.0.245: | ||
+ | : | ||
+ | </ | ||
+ | - 重啟 docker compse 即可解決 | ||
+ | - 當大量查詢 pi-hole DNS 服務, 結果出現 FTL is not running 異常狀況 | ||
+ | * 參考網址 - https:// | ||
+ | * docker compose logs -f 持續出現 Stopping pihole-FTL 的訊息 | ||
+ | * docker exec pihole df -h | grep shm 出現 100% 表示 Share Memory 已經被大量 query 的紀錄塞爆 | ||
+ | * 可以透過修改 docker-compose.yml 內將 shm_size(預設是 64MB)加大來解決, | ||
+ | - 將 docker-compose.yml 內 # | ||
+ | - 重新啟動 docker compose < | ||
+ | - 確認修改是否成功 < | ||
+ | pve-dns:~# docker exec pihole df -h | grep shm | ||
+ | shm | ||
+ | </ | ||
+ | - 當設定 LocalDNS 後查詢還會取用到外部 DNS 回傳的 IPv6 的 IP 問題的解法 | ||
+ | * 參考 - https:// | ||
+ | - 當 pi-hole diagnosis 出現 Maximum number of concurrent DNS queries reached (max: 150) 這警告訊息 | ||
+ | * 先查看發生時間時段 / | ||
+ | * 如果確認有 Client 會正常大量查詢 DNS Exp. 監控系統 可以先將 Rate-limiting 調大 | ||
+ | * 在 Settings-> | ||
+ | * 如果是出現大量內部 IP 反查紀錄 Exp. query[PTR] 51.173.43.10.in-addr.arpa from 10.20.2.218 可試著設定不要回覆私有 IP 的反查 | ||
+ | * 在 Settings-> | ||
===== 參考網址 ===== | ===== 參考網址 ===== | ||
* https:// | * https:// | ||
行 106: | 行 192: | ||
* https:// | * https:// | ||
- | {{tag> | + | {{tag> |