有关 iptables DNAT/REDIRECT 到本地的信息

有关 iptables DNAT/REDIRECT 到本地的信息

我在用着Qubes 操作系统,基于的系统西恩微内核,让您轻松运行多个虚拟机并划分您的数字生活。所有域默认(通过虚拟接口)连接到 FirewallVM,该虚拟机连接到 NetworkVM,该机器管理您的网卡并提供真正的互联网连接。

我试图(在 FirewallVM 上)将来自某些域的 DNS 请求重定向到本地 DNS 缓存服务器(而不是 NetworkVM),我发现我必须使用DNAT重定向外部请求(通过虚拟接口从 ApplicationVM 进入)到本地主机,如下所述:iptables 将外部请求重定向到 127.0.0.1

iptables -t nat -A PREROUTING -i vifX -p udp --dport 53 -j DNAT --to-destination 127.0.0.1:5353

重点是,当我使用像 Debian 这样的系统(没有虚拟机)通过本地代理(如 Privoxy(在 127.0.0.1 上运行)重定向 HTTP 流量)时,我可以使用REDIRECT

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8118


我不明白为什么这不适用于我的实际情况,因为在这两种情况下,我们谈论的是外部数据包,一种情况下来自网卡,另一种情况下来自虚拟接口,需要重定向到本地端口。
这种行为有可能是接口特定的吗?

相关内容