我在Debian10的VirtualBox中有一个虚拟机,我正在尝试NAT伪装它的输出接口(enp0s8),以便它的客户端(连接到它的虚拟机)可以访问互联网。
系统中的所有接口都有一个IP。我已经通过以下方式启用了转发:
echo 1 > /proc/sys/net/ipv4/ip_forward
sysctl -w net.ipv4.ip_forward=1然后我执行了:
iptables -t nat -A POSTROUTING -o enp0s8 -j MASQUERADE但是,每当我执行上面的代码时,就会发生以下情况:

而且无论我iptables --flush -t nat并重复这个过程多少次,结果总是相同的。我想要应用的规则永远不会正确保存,客户端的I也永远不会被屏蔽。
这里的问题是什么?几乎所有的教程都说这是正确的伪装方法。我也尝试过使用nftables,但没有成功。
发布于 2020-03-23 13:30:42
它已经显示了正确的输出。要显示包含接口详细信息的规则,您需要使用
iptables -t nat -L -n -v顺便说一句,如果你已经设置了NAT网络,它已经被小心地连接到外部。
您是否已将客户端的默认网关设置为此框?
https://stackoverflow.com/questions/60782425
复制相似问题