温馨提示×

如何在Ubuntu上配置VirtualBox网络桥接

小樊
40
2025-11-08 15:07:42
栏目: 智能运维

一、桥接网络概述

桥接模式(Bridged Adapter)是VirtualBox中常用的网络模式之一,其核心特点是虚拟机与宿主机处于同等网络地位,二者通过虚拟交换机(如VirtualBox的vnet0)直接连接到物理网卡,共享同一局域网(LAN)。虚拟机可获得与宿主机同一网段的IP地址,能直接访问外网(如互联网),也能与同一网段内的其他设备(包括宿主机、其他虚拟机)通信。

二、Ubuntu主机配置VirtualBox桥接网络的步骤

1. 查看宿主机可用物理网卡

在配置桥接前,需确认宿主机用于桥接的物理网卡(如以太网卡eth0、无线网卡wlan0)。打开终端,执行以下命令:

ip addr show

输出中会列出所有网络接口,找到状态为UP(已激活)的物理网卡(如eth0),记录其名称。

2. 在VirtualBox中设置虚拟机为桥接模式

  • 打开VirtualBox管理器,选中需要配置的Ubuntu虚拟机,点击顶部菜单栏的设置
  • 在设置窗口中,选择网络选项卡。
  • 适配器1标签下,将连接方式从默认的“NAT”改为“桥接适配器”。
  • 界面名称下拉菜单中,选择步骤1中确认的物理网卡(如eth0)。
  • (可选)勾选启用混杂模式(仅用于网络监控,普通使用无需开启)。
  • 点击确定保存设置。

3. 配置虚拟机内部网络(静态IP/动态IP)

桥接模式下,虚拟机可通过DHCP自动获取IP(推荐,需物理网络有DHCP服务器),也可手动配置静态IP(需确保与宿主机同一网段)。以下分别说明:

(1)动态IP(DHCP自动获取)

多数情况下,物理网络的DHCP服务器会自动为虚拟机分配IP地址。只需确保虚拟机网络配置为自动获取:

  • 启动Ubuntu虚拟机,打开终端,编辑网络配置文件(Ubuntu 22.04及以上版本使用Netplan,文件路径通常为/etc/netplan/01-network-manager-all.yaml):
    sudo nano /etc/netplan/01-network-manager-all.yaml
    
  • 确保配置内容类似以下示例(以DHCP为例):
    network:
      version: 2
      renderer: NetworkManager
      ethernets:
        enp0s3:  # 网卡名称(通过`ip addr show`查看)
          dhcp4: yes  # 启用DHCP
    
  • 保存文件(Ctrl+OEnterCtrl+X),应用配置:
    sudo netplan apply
    
  • 验证IP获取:
    ip addr show enp0s3
    
    输出中应显示虚拟机已获取到与宿主机同一网段的IP地址(如192.168.1.100/24)。
(2)静态IP(手动配置)

若需固定虚拟机IP,需手动配置。确保静态IP与宿主机同一网段(如宿主机IP为192.168.1.72,则虚拟机可设为192.168.1.100),且不与网内其他设备冲突。

  • 编辑Netplan配置文件:
    sudo nano /etc/netplan/01-network-manager-all.yaml
    
  • 修改为以下内容(以静态IP为例):
    network:
      version: 2
      renderer: NetworkManager
      ethernets:
        enp0s3:  # 网卡名称
          dhcp4: no  # 关闭DHCP
          addresses: [192.168.1.100/24]  # 静态IP及子网掩码
          gateway4: 192.168.1.1  # 网关(与宿主机一致)
          nameservers:
            addresses: [8.8.8.8, 8.8.4.4]  # DNS服务器
    
  • 保存并应用配置:
    sudo netplan apply
    
  • 验证网络连通性:
    ping 8.8.8.8  # 测试外网连通性
    ping 宿主机IP  # 测试与宿主机的连通性
    ```。  
    
    
    

4. 验证桥接网络功能

  • 测试外网访问:在虚拟机中执行ping 8.8.8.8,若返回响应,说明虚拟机可访问外网。
  • 测试与宿主机的通信:在虚拟机中执行ping 宿主机IP(如ping 192.168.1.72),若返回响应,说明虚拟机与宿主机可通信。
  • 测试与其他设备的通信:在虚拟机中执行ping 同一网段内其他设备IP(如局域网内的手机、电脑),若返回响应,说明虚拟机已融入局域网。

三、常见问题排查

  • 虚拟机无法获取IP:检查物理网卡是否连接正常(如网线是否插好、Wi-Fi是否连接),确认VirtualBox的桥接网卡选择正确,确保物理网络的DHCP服务器正常工作。
  • 虚拟机无法访问外网:检查虚拟机的IP地址是否与宿主机同一网段,确认网关和DNS配置正确,检查防火墙是否阻止了虚拟机的网络流量(如Ubuntu的ufw防火墙,可通过sudo ufw allow all临时开放)。
  • 虚拟机间无法通信:确保所有虚拟机的IP地址在同一网段,检查防火墙设置(如虚拟机内部的ufwiptables),确认VirtualBox的桥接模式配置正确。

0