我正在使用 VirtualBox 运行多个 Debian 12(主机和来宾)虚拟机。突然间,今天他们开始出现连接问题(即我无法 ping 通 8.8.8.8)。我最近从 Debian 11 升级到 Debian 12。
所有虚拟机都有两个网络适配器:
- 1个NAT网络适配器
- 1 个仅主机网络适配器
经过一些测试,我发现删除仅主机网络适配器可以恢复连接。可能是什么问题?这就像系统忽略 NAT 网络适配器并使用没有连接的仅主机网络适配器。
我该如何调试呢?
我正在使用 VirtualBox 运行多个 Debian 12(主机和来宾)虚拟机。突然间,今天他们开始出现连接问题(即我无法 ping 通 8.8.8.8)。我最近从 Debian 11 升级到 Debian 12。
所有虚拟机都有两个网络适配器:
经过一些测试,我发现删除仅主机网络适配器可以恢复连接。可能是什么问题?这就像系统忽略 NAT 网络适配器并使用没有连接的仅主机网络适配器。
我该如何调试呢?
问题解决了。我无法解释原因和方式(如果有人可以,请编辑我的答案)。
编辑
/etc/networking/interfaces
以前的损坏版本:
新的工作版本:
之后重新启动或发出问题
service networking restart
编辑:
假设 eth1 是连接到仅主机网络的接口,您永远不应该
gateway
在其上配置 a (在另一种意义上,使用它的默认路由),因为它通常不用于 Internet 流量(尽管 AFAIK从技术上讲,你可以设置一些东西并使用它),显然,你从来没有打算这样做。我不知道内核在具有相同“覆盖范围”和相同指标的多个路径之间选择一条路径时的启发式是什么,但我很确定从用户的角度来看,该行为可能或多或少是不确定的,更不用说无论如何,来自 dhcp 的甚至可能会添加更高的度量值(即更低的优先级)。