根据此处找到的文档。 https://help.ubuntu.com/community/Internet/ConnectionSharing
我可以使用单个主机专用适配器、vbox 内的静态 IP 和我的 UFW 设置为我的 vbox 建立临时互联网访问,使用以下命令:
$sudo iptables -A FORWARD -o wg0 -i vboxnet5 -s 192.168.61.0/24 -m conntrack --ctstate NEW -j ACCEPT
$ sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
$ sudo iptables -t nat -F POSTROUTING
$ sudo iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
但是,这些命令是暂时的,重启后就会消失。我可以采取快捷方式并设置一个 bash 脚本在启动时运行,但我宁愿学习正确的方法来做到这一点。
有什么建议吗?谢谢
答案1
这里的解决方案非常简单。
sudo nano /etc/ufw/before.rules
在该文件的这一部分中:
#NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]
添加:
-A POSTROUTING -s 192.168.61.0/24 -j MASQUERADE
现在,所有流量 192.168.61.0 都将通过主机主网络接口发送,即使它发生变化(即 wifi 与 lan)