Ubuntu Linux下,用virtualbox ,桥接虚拟的Linux系统
实验环境:
主机操作系统:?Ubuntu Linux 10.10 alternative amd64
虚拟机软件:?Virtualbox 3.2.12(可以从ubuntu aptitude里面自动安装)
虚拟操作系统:?WinXP?
实验目的: 让虚拟机里面的WinXP和外部的ubuntu能够桥接,处于一个局域网内。
一. 安装必备的软件包
先安装uml-utilities,该工具包含建立虚拟网络设备(所谓的“TAP interfaces”)的工具,然后是桥接工具bridge-utils,2个一起装就是了,最后有个启动的提示,成功的话会提示OK。命令:
?
sudo apt-get install uml-utilities
sudo apt-get install bridge-utils
?
二. 为了使你的虚拟机能够访问网络接口,你必须将运行虚拟主机的用户的用户名(通常是你的ubuntu登录用户名)添加到uml-net用户组。比如我这里,ubuntu用户名是 solar,命令写出来就是:
?
sudo gpasswd -a keer2345 uml-net?
?
三. 修改interfaces文件,添加虚拟网络设备:
?
sudo mousepad /etc/network/interfaces?
在打开的文件后面添加下面的内容(用你ubuntu的用户名替换其中的“用户名”,比如我用的keer2345),保存好:?
auto tap0?
iface tap0 inet manual?
up ifconfig $IFACE 0.0.0.0 up?
down ifconfig $IFACE down?
tunctl_user 用户名
auto br0?
iface br0 inet static?
address 192.168.1.102
netmask 255.255.255.0?
network 192.168.1.0?
broadcast 192.168.1.255?
gateway 192.168.1.1?
bridge_ports all tap0?
上面第一部分的大概意思是将虚拟网络接口命名为“tap0”,指定该接口IP配置方法为手动,并指定使用该接口的用户。第二部分的大概意思是建立一个名叫“br0”的网桥,该桥的IP配置方法为通过DHCP配置,主机中的所有网络接口,也包括tap0这个虚拟网络接口,都将建立在这个桥之上。?
?
四. 激活刚才建立的虚拟网络接口和网络桥,命令如下(2条命令分别输入):
?
sudo /sbin/ifup tap0?
sudo /sbin/ifup br0?
?
?
注:这个步骤只需要做一次,以后主机启动时,这个接口和桥将自动激活。?
五. 启动virtualbox,在主界面上选中要使用刚才建立的虚拟网络接口tap0的虚拟机,点“设置”,在弹出的窗口中选“网络”,选中以Bridged方式连接网络,然后在“主机网络界面名称”中填入刚才建立的虚拟网络接口的名字“tap0”,确定。
?
好了,经过上面的配置后,主机和虚拟机就成了局域网中地位相同的两台机器了,想怎么共享就可以怎么共享了!当然,你可以自己为宿主机(ubuntu)和 虚拟系统(WinXP)来分别配置固定IP,也可以都从DHCP动态获取IP地址。看看我的winXP吧,IP地址是: 192.168.1.102。
?
五、撤销网络桥
1. 禁用网桥和虚拟网卡:
sudo /sbin/ifdown br0
sudo /sbin/ifdown tap0
2. 将前面修改的 /etc/network/interfaces 文件还原。
附:
在xp中,如果按照如上设置以后,可能其他机器访问不了XP,这主要是xp中的防火墙开启了,在控制面板中禁用防火墙即可。
?
?