我最近安裝了dnscrypt-proxy
.它的設定檔/etc/dnscrypt-proxy/dnscrypt-proxy.toml
有一個我目前正在使用的黑名單部分:
[blacklist]
## Path to the file of blocking rules (absolute, or relative to the same directory as the executable file)
blacklist_file = '/etc/dnscrypt-proxy/CustomIgnores.txt'
我想知道這個選項是否取代了 /etc/hosts 處的重定向?還是兩者都用?
/etc/hosts 檔案到底屬於什麼? dnscrypt 的黑名單選項是如何運作的(我假設它也只是重新導向到本機)?謝謝。
答案1
進行 DNS 查詢時,查找順序是Name Service Switch
透過/etc/nsswitch.conf
.您可以透過以下方式檢查您的:
cat /etc/nsswitch.conf | grep -i hosts
例如,它可能輸出以下內容:
hosts: files dns
這裡files
指的是本地的hosts檔案( /etc/hosts
),dns指的是.dns中指定的伺服器/etc/resolv.conf
。查找按照寫入的順序進行處理,因此/etc/hosts
在這種情況下將首先處理。如果在文件中沒有找到域名,那麼它將嘗試/etc/resolv.conf
.
回到您的案例,如果您的nsswitch.conf
檔案files
在 之前具有值,並且特定網域同時在和中dns
列出,則 中的網域將排在前面。另外,如果對應的實體不存在於,但存在於 dnscrypt-proxy 中,則會產生反應。引用 dnscrypt-proxy GitHub wiki 頁面:/etc/hosts
blacklist
dnscrypt-proxy.toml
/etc/hosts
/etc/hosts
blacklist
refused
黑名單:將導致查詢立即收到拒絕回應的名稱或模式。
參考: