5 29 2008
终于把VirtualBox的桥接模式给折腾好了
注意:VirtualBox 2.1.0后的版本又改了,这篇文章的方法不再适用。不过是变得简单了,看Ubuntugeek的教程吧
VirtualBox不像Vmware那样装好就有Bridge模式可用,很是不爽,早在Ubuntu 8.04 Beta就试过自行设置过,参考《VirtualBox桥接网络的配置》,可是总是失败,真机和虚拟机只能一台能上网。去请教作者,可是第二次问作者就不鸟我了,郁闷。还有网上几个方法居然都不相同,这个问题不了了之。
现在Ubuntu 8.04正式版,VirtualBox也升级到1.6.0,再按照那篇文章设置一下,还是那个问题,气啊,可能那个方法只适合Ubuntu 7.10。Goolge搜了一下,还好,Ubuntu官方维基现在有VirtualBox网络设置页面了(还是我当时没找到?),无视原理照抄命令按着做。结果问题解决。
简单记一下,免得以后又忘记要再去看英文,先安装几个包
sudo apt-get install bridge-utils uml-utilities
建立一个bridge
sudo tunctl -t tap1 -u `whoami`
接着
sudo chown root.vboxusers /dev/net/tun
sudo chmod g+rw /dev/net/tun
继续
sudo cp /etc/udev/rules.d/20-names.rules /etc/udev/rules.d/20-names.rules.backup
sudo vim /etc/udev/rules.d/20-names.rules
把最后一行的
KERNEL=="tun", NAME="net/%k"
修改为
KERNEL=="tun", NAME="net/%k", GROUP="vboxusers", MODE="0660"
继续命令,设置网卡为混杂模式
sudo brctl addbr br0
sudo ifconfig eth0 0.0.0.0 promisc
sudo brctl addif br0 eth0
开启DCHP就运行
sudo dhclient br0
如果用静态IP的就运行
sudo ifconfig br0 192.168.1.105 netmask 255.255.0.0
sudo route add default gw 192.168.1.1 br0
接下来就是
sudo brctl addif br0 tap1
sudo ifconfig tap1 up
最后在VirtualBox里的虚拟机网络设置“网络连接方式”选择“host interface”,“host interface 名称”为“tap1“就行了,大功告成。
补充:
重启之后又不行了,结果还是要运行一次上边的命令,写成script好了,然后加上sudo运行
#!/bin/bash
tunctl -t tap1 -u `whoami`
chmod 0666 /dev/net/tun
brctl addbr br0
ifconfig eth0 0.0.0.0 promisc
brctl addif br0 eth0
dhclient br0
brctl addif br0 tap1
ifconfig tap1 up
不知道修改“20-names.rules”有什么含义,我看其他教程也是不用修改的。

呵呵,看楼主也是老鸟了也有解决不了的问题,给个链接就是设置virtualbox桥接的,我找着作成功了,http://www.oceanboo.cn/read.php/55.htm
@gududehuo
我看了你给的网址,方法是跟我之前看的文章相似,不过在8.04下失败了,那篇文章的评论也有人反应。