在Ubuntu VirtualBox中实现虚拟机间通信,可通过以下两种网络模式配置,需确保虚拟机IP在同一网段且防火墙允许相关流量:
一、桥接模式(Bridged Adapter)
适用场景:虚拟机需与主机及局域网其他设备通信(如访问互联网、局域网共享)。
配置步骤:
- 设置虚拟机网络:
- 打开VirtualBox → 选中虚拟机 → 设置 → 网络 → 适配器1 → 选择桥接适配器,选择主机物理网卡(如Wi-Fi或以太网)。
- 配置IP地址:
- 虚拟机内执行
sudo ip addr add 192.168.1.x/24 dev enp0s3(enp0s3为网卡名,IP需与主机同网段,如192.168.1.100)。 - 若需永久生效,编辑
/etc/netplan/*.yaml文件,添加静态IP配置后执行sudo netplan apply。
- 虚拟机内执行
- 测试连通性:
- 虚拟机间执行
ping 192.168.1.x(替换为目标IP),验证是否互通。
- 虚拟机间执行
二、仅主机模式(Host-Only Adapter)
适用场景:仅限虚拟机与主机通信,隔离外部网络(安全测试场景)。
配置步骤:
- 创建Host-Only网络:
- VirtualBox主界面 → 管理 → 主机网络管理器 → 点击 创建,生成
vboxnet0适配器(默认网段192.168.56.x)。
- VirtualBox主界面 → 管理 → 主机网络管理器 → 点击 创建,生成
- 设置虚拟机网络:
- 虚拟机 设置 → 网络 → 适配器1 → 选择仅主机适配器,关联
vboxnet0。
- 虚拟机 设置 → 网络 → 适配器1 → 选择仅主机适配器,关联
- 配置IP地址:
- 虚拟机内执行
sudo ip addr add 192.168.56.x/24 dev enp0s8(enp0s8为Host-Only网卡名,IP需与vboxnet0同网段)。
- 虚拟机内执行
- 测试连通性:
- 虚拟机间执行
ping 192.168.56.x,主机执行ping 192.168.56.x,验证虚拟机与主机、虚拟机间的通信。
- 虚拟机间执行
关键注意事项
- 防火墙:临时关闭虚拟机防火墙(
sudo ufw disable)以排除拦截问题。 - IP冲突:确保虚拟机IP在对应网段内唯一,可通过
arp -a(主机)或ip neigh(虚拟机)检查。 - 多网卡配置:若需同时访问外网和主机,可添加NAT网卡(适配器1)+ Host-Only网卡(适配器2),分别配置不同IP段。
以上配置可快速实现虚拟机间通信,根据实际需求选择模式即可。