网络环境描述
ADSL路由器 wan pppoe拨号,LAN 192.168.1.1/24
自己的PC OS ubuntu 7.04 eth0 192.168.1.101 tap0 192.168.0.1/24(创建的虚拟适配器,后面介绍)
虚拟机(guest) windows xp sp2 适配器:ip 192.168.0.13 mask 255.255.255.0 默认网关 192.168.0.1(也就是tap0)
互联网--ADSL路由器--Ubuntu主机--虚拟机
需要准备的软件 :
Virtualbox 1.4.0,windows XP, User Mode Linux utilities package (uml-utilities)
设置步骤
Virtualbox下的xp安装可以参考论坛上的虚拟机专区的帖子,不做详细介绍。
步骤1、uml-utilities的安装设置。
a 安装uml-utilities
b 添加虚拟网卡sudo apt-get install uml-utilities
编辑配置文件
在文中添加sudo gedit /etc/network/interfaces
说明:此处添加的是静态ip地址,你可以根据自己的需要设置。username是指可以启动tunctl的用户,当然是填自己的用户名了。auto tap0
iface tap0 inet static
address 192.168.0.1
netmask 255.255.255.0
tunctl_user username
c 配置/etc/default/uml-utilities文件使uml_switch连接到此接口。
也就是在此配置文件中添加
UML_SWITCH_OPTIONS="-tap tap0"行。
d 启动 tap0接口:
e 重新启动uml守护进程:sudo /sbin/ifup tap0
现在可以测试一下tap0接口是否可用了,ping 192.168.0.1试试,如果不行的话重新启动计算机看看行不行。至此虚拟网卡配置完成。sudo /etc/init.d/uml-utilities restart
步骤2:虚拟机设置
虚拟机的安装及设置就不详细介绍了,这里仅说明网络设置。
在确保客户机没有启动的情况下,选中需要设置的虚拟机,选择设置启动设置界面
在网络选项下的各项设置如下:
A:选项 设置
启用网络适配器 选中
连接到 host interface
mac地址 随机生成的
主机网络界面名称 tap0(此处应该是主机网络接口名称,没见过英文版,应该是host interface name,想必是翻译错误)
设置完以后启动客户机,自xp里面设置客户机的网络适配器。按照前面介绍的
设置完客户机以后,可以在客户机上测试一下能不能访问主机的虚拟适配器ip 192.168.0.13(自己的ip地址)
掩码 255.255.255.0
默认网关 gateway 192.168.0.1
dns 你的dns服务器地址。
也可以在主机上测试能否访问虚拟机ping 192.168.0.1
步骤3 进行路由相关设置ping 192.168.0.13
在主机上开启路由转发
此处使用sudo -i是因为重定向的时候sudo没有办法操作当前用户没有权限操作的文件,不知道有什么办法可以避免使用sudo -isudo -i
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -p FORWARD ACCEPT
最后在你的路由器上设置静态路由,将192.168.0.1/255.255.255.0的路由指向你的客户机。因为各人的ADSL路由器各不相同,操作方法可能大相径庭,我只能以我的tp-link 402r为例,想必道理都是一样的。
登录路由器web界面,选中左侧的路由功能,静态路由表,在右边设置如下
ID 目的IP地址 子网掩码 网关 启用
192.168.0.0 255.255.255.0 192.168.1.101 选中
进行上述设置以后可以看看自己的虚拟机能不能访问互联网。
注 在virtualbox的帮助里有介绍如何建立桥接网络,大家可以参考一下。
关于uml-untiles我不是很了解,大家可以参考下面的帮助文件.
/usr/share/doc/uml-utilities/README.Debian