当“桥接”模式下的虚拟机必须通过不同 IP 地址的适配器时,它如何恢复其流量?

当“桥接”模式下的虚拟机必须通过不同 IP 地址的适配器时,它如何恢复其流量?

假设虚拟机通过主机 Virtualbox 创建的虚拟适配器连接到网络。以下是 IP 地址:

192.168.1.1 网关

192.168.1.2 运行 Virtualbox 的主机

192.168.1.3 Virtualbox 中的虚拟机

192.168.1.3/VM 发出一个数据包,开始与 Internet 上某个远程 Web 服务器进行握手(步骤 1)。它必须经过主机的物理适配器。(步骤 2)另一端的数据包返回。即使主机具有不同的 IP,网关如何知道将其发送到主机?主机的网卡如何知道“拦截”数据包并将其发送到客户虚拟机?

就像你想向 Alice(虚拟机)发送一条消息,但 Alice 在 Bob 后面(运行 Virtualbox 的主机“虚拟化”了 Alice),所以你是把消息发给 Bob,然后相信他会把消息发给 Alice,还是你(作为网关)做什么?到达 Alice 的一切都必须经过 Bob,对吗?

我猜想路由器有一个路由表,它知道 192.168.1.2 和 .3 位于同一个接口上(我假设是路由器端口上的同一个物理端口),然后它会将数据包发送到那里。从那里,主机上的 NIC 卡(它在第 2 层工作,因此它会忽略 IP 地址)查看数据包的 MAC 地址,然后就知道将其发送到虚拟主机。

再次,我希望这是有意义的!如果没有,请原谅。我会澄清任何事情。我承认我的网络知识有点生疏。谢谢。

答案1

在桥接模式下,主机就像一座桥梁。这意味着虚拟机有自己的第 2 层硬件地址。

虚拟机中需要在物理网络上发送的数据包来自虚拟机的硬件地址。在物理网络上发送到虚拟机的数据包将被发送到虚拟机的硬件地址。如果没有防火墙阻止这种情况,则除 TCP/IP 之外的以太网协议应该可以工作,因为所有桥接都发生在第 2 层。

相关内容