強制在網路上使用特定的 DNS 供應商

強制在網路上使用特定的 DNS 供應商

OpenDNS 提供了一種非常簡單的按類別進行互聯網過濾的方法。當然,誰能獲得正確的IP位址就可以輕鬆繞過過濾器,但這已經足以滿足我的期望了。

更大的問題是在客戶端更改 DNS 提供者並不是什麼大問題。

所以我的問題是是否可以強制在本地網路中僅使用特定的 DNS 提供者。

目標裝置是配備 OpenWRT 的 WiFi 路由器。 (不過,我歡迎任何類似的簡單設定過濾解決方案,但主要問題是 DNS 提供者強制。)

答案1

使用 iptables 防火牆可以實現此功能(Openwrt 也使用 iptables):

iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p udp --dport 53 -j DNAT --to 192.168.1.1
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p tcp --dport 53 -j DNAT --to 192.168.1.1

在您的路由器上使用 Opendns 伺服器。192.168.1.1是Openwrt路由器的ip。192.168.1.0/24是 LAN 網路子網路。根據您的網路子網路設定修改上述規則。如果您在 openwrt 提示字元下嘗試上述規則,則替換-A-I.如果您將規則保存在啟動或重新啟動時載入的腳本中,則-A切換應該可以運作。透過此設置,無論用戶端電腦使用什麼 dns 伺服器,當 dns 請求到達路由器時,目標 ip 將變更為路由器的 ip。您可以在 Openwrt 上找到有關 iptables 的更多信息這裡。

答案2

是的,可以讓本機網路中的所有主機僅使用特定的 DNS 提供者。您可以透過配置代理伺服器來做到這一點,例如魷魚代理使本機網路中的所有主機只能透過該代理伺服器存取網路。所以每個請求無論是DNS請求還是HTTP請求或任何其他請求,都會先轉到代理伺服器。這樣,在設定代理伺服器時寫入的任何 DNS 項目都將被本機網路中的所有主機使用。

相關內容