使用Virtual-Box安装Mininet看上去简单,但其中也暗藏许多坑。我自己装了多次Mininet,但每次都有缺陷:
- mininet访问不了网络
- 用宿主机访问不了mininet虚拟机
最后,终于在这篇博文的帮助下,安装了一个比较满意的mininet虚拟机实例。但这篇博文是在mac系统上进行安装,我自己是在ubuntu上进行安装,虽说大同小异但也略有不同。
因此,为了方便大家安装Mininet,笔者将自己安装的全过程记录于此,以便以后查阅。
安装的操作系统:ubuntu 13.10
1.安装virtual-box
我用的是最新版的virtual-box-4.3.10,已经装好的童鞋可以绕过这一步。
1
2
3
|
sudo apt- get
install dkms fakeroot libsdl-ttf2.0-0
wget http: //dlc.sun.com.edgesuite.net/virtualbox/4.3.10/virtualbox-4.3_4.3.10-93012~Ubuntu~raring_amd64.deb
sudo dpkg -i virtualbox-4.3_4.3.10-93012~Ubuntu~raring_amd64.deb |
2.在virtual-box设置全局网络
因为待会儿需要用到一个Host-Only网络,因此需要在新装好的Virtual-Box中设置一下。
(吐槽一下,ubuntu13.10的配置alt+printScreen总是出错。弄了半天才把alt快捷键改到别的地方去了。)
3.下载mininet的镜像包
当前有两个版本2.1.0和2.0.0,但由于GFW的存在基本上下不动2.1.0。这里直接下载2.0.0:
http://cloud.github.com/downloads/mininet/mininet/mininet-2.0.0-113012-amd64-ovf.zip
我用的是2.1.0的安装包
4.安装mininet镜像
解压mininet包进入mininet目录
unzip mininet-2.1.0-130919-ubuntu-13.04-server-amd64-ovf.zip
此时有两种方法导入镜像文件,一是双击解压目录里面的mininet-vm.ovf文件然后下一步下一步,但这种方式在我机器上会出错。
因此我选择的是另外一种导入方式,具体过程如下所示:
5.修改mininet实例的网络配置
由于我们既需要mininet能够访问外网,又希望自己的宿主机能ssh登录到mininet上,因此我们需要设置双网卡来解决这两个需求。
添加第二块网卡Host-Only Adapter,如图所示:
6.启动并登录mininet虚拟机
使用默认账号登陆:mininet/mininet
7.登陆进去后运行命令检查网络配置是否完整
运行ifconfig后得到如下结果
首先验证一下公网是不是通的。
ping www.baidu.com
其次,执行下面命令启用eth1网卡
1
|
sudo dhclient eth1 |
这时再次运行ifconfig -a就会看到两块网卡
可以看到这边dhcp分配的ip地址是192.168.56.102,因此我们就可以用这个ip地址从宿主机上进行ssh登录了。话说vitrual-box自带的登录界面真心不好用,唉~
8. 手动更新网络配置
最后我们还需要将第二块网卡的配置加入到mininet的网络配置文件中,这样我们重启之后总是会看到两块网卡了。
1
|
sudo vi /etc/network/interfaces |
然后加入
1
2
|
auto eth1 iface eth1 inet dhcp |
保存后就OK了。
至此,安装Mininet的工作就全部完成。
在后续文章中,我将继续介绍如何使用Mininet来完成SDN的实验。:)