如何使用 Vagrant 在 Virtualbox 中通过来宾隧道传输主机流量

How to tunnel host traffic through guest in Virtualbox using Vagrant

我有一位 Ubuntu 房东和一位 Ubuntu 房客。我想实现我的主机流量通过我的来宾隧道传输。从而使我能够对来自来宾的主机流量进行分析。我正在为来宾分配两个接口(除了 Vagrant 提供的内置 NAT 接口之外)。我正在主机上创建一个名为 br0 的网桥接口。其中一个访客接口通过桥接连接到 eth0(连接到互联网的主机接口),另一个访客接口通过桥接连接到主机 br0 接口。在主机上,我正在删除我的默认网关并添加一个新网关:

route del default
route add default dev br0

之后我可以将 vagrant ssh 连接到我的来宾中并在那里设置桥接接口。

brctl addbr br0
brctl addif br0 eth1
brctl addif br0 eth2

完成此设置后,主机流量应通过来宾进行路由。如果我 运行

tcpdump -vni br0

在来宾中我可以看到数据包,但无法连接到 Internet。有什么东西不见了。有什么想法吗?

我必须在来宾中启用 IPv4 转发。

编辑 /etc/sysctl.conf 以永久启用转发:

net.ipv4.ip_forward = 1

运行 无需重启即可激活设置:

sysctl -p /etc/sysctl.conf