我正在尝试重定向本地网络上的所有出站 DNS 请求。我有一些由电脑、手机等组成的设备。我将如何进行重定向(例如:www.domain.com至 192.168.1.80)。
基本上是欺骗www.domain.com到 192.168.1.80,这样网络上的任何人都无法连接到www.domain.com。
答案1
两种解决方案专门回答您的问题:
修改主机文件以反映您的愿望,文件本身中有有关如何使用此文件的示例。
配置本地DNS服务器来进行解析,大多数情况下,路由器可以作为DNS服务器。
如何配置所述 DNS 服务器将取决于哪个软件处理该服务器,假设您的路由器使用dnsmasq
,因为这对于小型路由器很常见,您需要在配置文件中添加此行。
address=/www.domain.com/192.168.1.80
如果您的计划是阻止连接到该域,您可以考虑使用它,因为这将使 DNS 服务器回复该域不存在。
server=/www.domain.com/
但最好的方法是在路由器上创建一个 netfilter 规则,以丢弃任何进出该域 IP 的内容,这与您的问题不同。
iptables -A INPUT -s SERVICE_IP_HERE -j DROP
iptables -A OUTPUT -d SERVICE_IP_HERE -j DROP
如果这是 IPv6,则需要替换iptables
为ip6tables
.如果域同时使用两者,则必须为两个堆栈创建规则。
答案2
配置本地 DNS 服务器:在 127.0.0.1:53 上设置 dnsmasq
配置网络过滤器:
iptables -t nat -A POSTROUTING -p udp --dport 53 -j REDIRECT