Mininet VM是为了加快Mininet安装,而且可以很容易在linux平台上运行。 VM运行在Windows,Mac,Linux,通过VMware、VirtualBox,QEMU和KVM。
下载虚拟机之后,您将运行几个步骤来定制您的设置。 这不会花很长时间。
虚拟机设置
下载Mininet VM
下载Mininet VM https://github.com/mininet/mininet/wiki/Mininet-VM-Images。
VM出来1 gb压缩和未压缩的~ 2 gb。 这是一个OVF(Open Virtualization Format)虚拟机映像 可进口的大多数虚拟机监视器。
下载并安装虚拟化项目如: VMware工作站对于Windows或Linux, VMware Fusion比如苹果电脑, VirtualBox( 免费的! 、GPL)任何平台或 qemu
( 免费的! Linux,GPL)。 如果你已经有VMware,我们发现它运行比VirtualBox Mininet有点快。 然而,VirtualBox是免费下载和分发,这是一个明确的优势!
启动虚拟机
添加虚拟机并开始,在您所选择的虚拟化项目:
VirtualBox :
-
通常你可以双击
. ovf
文件并导入它。 -
如果你得到错误导入
. ovf
文件,您可以简单地创建一个新的虚拟机的适当的类型(例如Linux,Ubuntu 64位)和使用.vmdk
的虚拟硬盘文件作为新VM。 -
选择“设置”,并添加一个额外的 您的网络适配器 ,你可以 使用登录到虚拟机映像。 启动虚拟机。
在设置网络VirtualBox的更多信息, 你可能想看看这些 VirtualBox特定指令
VMware :导入OVF文件,然后启动VM。
VMware VM上可能要求你安装VMware工具——如果它要求,下降。 所有图形的教程是通过X转发通过SSH(事实上,虚拟机没有安装桌面管理器),因此,VMware工具是不必要的,除非你想安装一个X11 / Gnome /等。 在你的虚拟机环境。
Qemu / KVM :
对于Qemu,类似以下工作:
qemu-system-i386 -m 2048 mininet-vm-disk1.vmdk -net nic,model=virtio -net user,net=192.168.101.0/24,hostfwd=tcp::8022-:22
KVM的:
sudo qemu-system-i386 -machine accel=kvm -m 2048 mininet-vm-disk1.vmdk -net nic,model=virtio -net user,net=192.168.101.0/24,hostfwd=tcp::8022-:22
上面的命令将设置 ssh
从8022年VM主机端口转发。
相似之处 :用运输机将类似 .vmdk
文件一个 .hdd
形象的相似之处可以使用,然后创建一个新的虚拟机使用 .hdd
图像作为其虚拟驱动器。 启动虚拟机。
登录到虚拟机
登录到虚拟机,使用下面的用户名和密码:
mininet-vm login: mininet
Password: mininet
(一些年长的虚拟机镜像可以使用 openflow
/ openflow
相反) 的 根
不启用帐户登录,您可以使用 sudo
以超级用户特权运行一个命令。
SSH到虚拟机
首先,发现虚拟机的IP地址,这为VMware可能是192.168.x.y范围。 在虚拟机控制台:
ifconfig eth0
注意:VirtualBox用户设置您的网络 eth1
应该使用
sudo dhclient eth1 # make sure that eth1 has an IP address
ifconfig eth1
您可能想要将地址添加到您的主机电脑的/etc/hosts文件能够通过SSH访问的名字,如果是类unix。 例如,添加一个这样OS X行:
192.168.x.y mininet-vm
192.168.x的地方。 取而代之的是虚拟机的IP地址。
SSH到VM。 我们假设本地运行的VM,额外的预防措施 ssh - x
是不必要的。 ssh - y
也没有验证默认超时。
ssh -Y mininet@mininet-vm
如果你运行VM在QEMU / KVM净用户和 hostfwd
选择上面推荐的,虚拟机的IP地址是无关紧要的。 相反你告诉SSH连接到端口8022上的主持人:
ssh -Y -p 8022 mininet@localhost
可选的VM定制
这些命令是可选的,可能对你有用的设置:
建立SSH自动登录
这些步骤允许您通过登录 ssh
无需输入密码。 如果你从本地虚拟化软件使用控制台,然后就不需要这一步。
检查 ~ / . ssh / id_rsa
或 ~ / . ssh / id_dsa
。 如果你不能找到这些文件,然后你会想生成一个SSH密钥。
在类unix系统上(OS X和Linux -你需要其他指令为Windows)——在主机,而不是虚拟机:
ssh-keygen -t rsa
加快未来SSH连接,添加您的主机的公钥到新的虚拟机。 还在主机,而不是虚拟机:
scp ~/.ssh/id_rsa.pub openflow@openflow:~/
现在,在VM(SSH第一):
cd ~/ && mkdir -p .ssh && chmod 700 .ssh && cd .ssh && touch authorized_keys2 && chmod 600 authorized_keys2 && cat ../id_rsa.pub >> authorized_keys2 && rm ../id_rsa.pub && cd ..
现在你应该可以不输入密码登录。