VirtualBox: 如何在Linux下使用Host Interface Network

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-02 05:38 点击:
VirtualBox, 我一直将其当作VMWare的替代软件,坚持使用,看到现在优秀的非商业软件已经越来越多了,着实让人欣慰。
 
但是,VirtualBox有个问题困扰了我很久,就是host system与guest system之间的通讯问题,即虚拟主机的虚拟网络与真实网络的通讯问题。VMWare在这个问题上解决得很好。对于VMWare来说,任何一种虚拟网络均不会影响虚拟主机网络的访问。但对于VirtualBox来说,其默认的NAT模式,却有着先天不足,包括无法转发ICMP、虚拟主机无法被真实网络访问等问题。不过VirtualBox的确提供了另外2种类型的虚拟网络,可以解决这个问题。
 
我时不时翻出VirtualBox的UserManual看一下,每次看到virtual networking的时候都很郁闷,因为看不懂,尝试着按上面的方法配置虚拟网卡,却均以失败告终。
 
正好昨天装了一个CentOS 5.0的虚拟系统,心想一定要把网络互通的问题解决,否则太不方便了。
 
几小时前,我再次按照手册上的方法操作了一遍,不出所料,又失败了。
 
刚才,启了dynamips做了个小实验,想到dynamips用到的虚拟网卡,灵机一动,若有所悟。
 
 
于是有了下面的解决方法,大致分为几步:
 
1)手工创建虚拟网卡
 
为了方便创建虚拟网卡,我写了一个脚本:
 
#!/bin/sh
 
 
if [ -z "$EUID" -a -x /usr/bin/id ]; then
   EUID=`id -u`
fi
 
if [ "$EUID" = "0" ]; then
 
   #----- vbox0 -------------------------------------------------------------
   /sbin/ifconfig vbox0 > /dev/null 2>&1
   if [ "$?" = "0" ]; then
      tunctl -d vbox0
      echo
      echo "*** vbox0 was removed! ***"
      echo
      exit 1
   else
      tunctl -u wandering -t vbox0
      ifconfig vbox0 172.16.0.1 netmask 255.255.255.0 up
      echo
      ifconfig vbox0
      echo
      echo "*** vbox0 was created with ip address of 172.16.0.1/24! ***"
      echo
   fi
 
else
 
   echo
   echo "*** Permission denied, please run this as root! ***"
   echo
   exit 1
 
fi
 
 
 
使用此脚本前记得将“tunctl -u wandering -t vbox0”中的wandering替换为自己系统上要运行VirtualBox的用户名。
 
 
 
2)在VirtualBox虚拟系统的配置文件中引用第1步所创建的虚拟网卡
 
<A> 打开VirtualBox虚拟系统的setting界面,进入"settings->NetWork->Adapter 2";
<B> 勾选"Enable Network Adapter";
<C> 在"Attached to"下拉框中选择"Host interface"项;
<D> 在"Interface Name"输入框中填写"vbox0"(这是手工创建的虚拟网卡的名字,根据实际创建情况而定);
<E> 点击按钮"OK"关闭保存配置;
 
 
 
3)在启动的虚拟系统中,为新网卡配置网络
 
以我安装的CentOS 5.0 为例:
 
# ifconfig eth1 172.16.0.2 netmask 255.255.255.0 up
 
 
在Host 系统中ping 虚拟系统的新网卡对应IP地址:
 
#
#
# ping 172.16.0.2
PING 172.16.0.2 (172.16.0.2) 56(84) bytes of data.
64 bytes from 172.16.0.2: icmp_seq=1 ttl=64 time=0.209 ms
^C
--- 172.16.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.209/0.209/0.209/0.000 ms
#
#
# ssh -l root 172.16.0.2
The authenticity of host '172.16.0.2 (172.16.0.2)' can't be established.
RSA key fingerprint is a9:15:3d:cf:f5:b1:5

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • VMware View 5.0从菜鸟到高手系列 -连接虚拟桌面
      • kvm中的windows使用Vmware的显示驱动
      • VMware Linux使用Xshell登陆
      • 虚拟机安装MAC查看电脑CPU是否支持VT技术
      • VMWare NAT Centos6.2静态ip设置
      • vmware虚拟机浅析-虚拟网卡
      • VirtualBox打开虚拟硬盘失败的问题
      • Virtual Box下同时配置host-only和bridge
      • 给虚拟机提速的方法

      快速直达

      操作系统导航

      LinuxWindows虚拟机
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1