`
phpxiaoxin
  • 浏览: 252960 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

opensuse 11.1 linux VirtualBox 网络配(Host Interface)

    博客分类:
  • os
阅读更多
http://www.lupaworld.com/16811/viewspace_16967.htmVirtualBox Host Interface
上面文章全部使用命令完成,大体步骤可分为如下:

1.建立网桥并指向系统默认的网卡一般就是eth0

这里我们可以通过suse yast2 来图形化操作完成:

进入yast2 - 网络设备- 网络设置

点界面下方的添加-设备类型选择“网桥”设备名称默认就可以,但是要记住。如果是0那么这个网桥的名称就是br0
下一步中桥接设备会有一个eth0(就是默认的网卡),将其勾选,点下一步完成。

2.添加虚拟网络接口(tap)
再次点添加-设备类型选择“TAP”,下一步,这里有个持久密道,不明白什么意思,我分别填写的是:密道持有者 sunshine(vbox的使用用户),密道组我填写的是br0就是前面创建的网桥。
估计这里不重要,而且我也没填写正确,因为你编辑一下就会发现,这个地方的值没有。这里需要注意的还是一个名字默认会是tap0,你需要自己看一下配置名称,并且记下。
在这一部如果提示要安装程序,那说明缺少一些包,让他装就可以了。

3.添加设备(这个名字我不确定,就是需要在启动文件中加在一些命令)

编辑文件,执行一下命令:
sudo vim /etc/init.d/rc
在最后的exit0之前,加入以下两行代码(vim不会使用的,需要自己查一下)
chmod 0666 /dev/net/tun
tunctl -t tap0 -u username //这里的username我使用的是在vbox组和前面一致的sunshine

4.添加启动和关闭脚本

启动脚本up.sh
#!/bin/sh
ifconfig tap0 up
brctl addif br0 tap0

关闭脚本dowm.sh

#!/bin/sh
brctl delif br0 tap0
ifconfig tap0 down

切换到root
chmod u+x up.sh
chmod u+x down.sh

然后执行up.sh
./up.sh

这个时候ifconfig 应该至少能看到三组内容

br0 / eth0 / tap0 看到这个说明配置成功了

到此网卡配置部分完毕。

打开安装好的virtualbox,假设现在已经建好了一个系统,打开设置,进入网络选项:

网络连接一里面attached to选项,一般都是使用NAT 经过nat转换后,就无法方便的访问到虚拟机了。因此我们需要选择Host Interface,让虚拟系统与局域网机器一样设置,直接连接路由器,动态获取ip地址(当然也可以设置静态,这里不详细说明)。

选择Host Interface后,下面会多出几个输入项目:
首先勾选接入网线,
interface name填写:tap0就是上面配置好的虚拟网络接口的名称。
下面两个分别对应上面些的两个脚本up.sh/down.sh,但是这里不能对应选择。原因在于,上面的脚本如果运行,需要root权限。虽然可以通过sudoers进行配置,但是我始终没有成功。所以就无法全自动的完成,当需要启动虚拟机之前,需要手动执行up.sh并且以root的身份。还有一种解决方案就是将up.sh代码加入到前面2步骤中提到的/etc/init.d/rc文件中,但是这样作的后果可想而知。不过觉得不会影响多少东西。所以如果频繁使用加进去也无所谓。

至此就可以使用了。启动起来,然后看看系统的ip是不是和普通机器一样了呢?
通过ssh(linux) 或者window的\\ip 就可以互相访问了。

以下为参考文献以及对上面的解释说明:

VirtualBox Host Interface 这个文章全是命令,但是文章的配置文件,无法在 suse 11中完全对应找到。因此我使用图形替代了命令。

本文步骤2中的创建tap0,有的文章通过VBoxAddIF命令创建虚拟网络接口,这个命令我自己实验了一下,始终无法找到其可以执行的路径,所以也使用了yast2方式替代。
参考:

本文3.添加设备中添加的脚本代码,大家自己看会发现与VirtualBox Host Interface一文中不太一样:本文添加在 /etc/init.d/rc文件中,原文添加到了/etc/rc.local中,这两个的区别,大家可以参考下面的帖子:
http://www.linuxsir.org/bbs/showthread.php?t=309601

4中的脚本主要问题在于内部命令普通用户无法执行。而切换到root用户脚本中又无法设置密码。虽然sudoers好像可以解决,但是我实验了,没解决。参考文章下文中In the virtual machine network settings, do the following changes处:
http://hi.baidu.com/oscarbj/blog/item/604a777f4d06100e28388aa9.html

对于windows 系统下的配置参考下面文章,应该可以搞定:
http://blog.sina.com.cn/s/blog_4362a99e0100bto2.html
http://developers.sun.com.cn/blog/ada/entry/virtualbox_%E8%99%9A%E6%8B%9F%E5%8C%96%E5%BA%94%E7%94%A8_%E4%BA%8C
http://blog.chinaunix.net/u/5391/showart_1084701.html

另外关于Linux 网络接口配置文件及相关工具,给予一下参考文章:
http://www.linuxsir.org/main/?q=node/224
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics