Mangle 规则用于拦截来自特定 IP 的 DNS 流量并重定向到另一个 DNS 服务器 - openwrt

Mangle 规则用于拦截来自特定 IP 的 DNS 流量并重定向到另一个 DNS 服务器 - openwrt

我的网络中有媒体盒,它经过硬编码以使用特定的 DNS 服务器(例如 Google DNS)。但我想强制此设备使用我自己的 DNS 服务器而不是硬编码的 DNS。我认为唯一可以将来自该媒体盒 IP 的 DNS 请求破坏为 DNAT 到我的 DNS 服务器 IP 的方法。但我不太确定如何在规则中同时提及源端口和源 ip

我使用的是 openwrt 路由器,上面有 openwrt 15.0 混沌平静器。

iptables -t nat -A PREROUTING -p tcp --sport 53 -j DNAT --to-destination 192.168.1.153

上面的查询将完成这项工作,但它会破坏所有端口 53 请求。我如何使用 IP 地址指定此规则。或者还有其他方法可以做到吗?

答案1

我用

iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT
iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT

重定向只是将请求重定向到路由器。

答案2

-d a.b.c.d只需紧随其后添加tcp即可将规则限制为具有目标地址的数据包a.b.c.d

并添加-s e.f.g.h也按源地址进行限制。

相关内容