实验参考:
本实验需要安装支持OpenFlow1.3协议的Mininet镜像。
实验操作
步骤1:命令行创建拓扑
sudo mn --topo minimal #最小的网络拓扑,一个交换机下挂两个主机。
#sudo mn --topo linear,4 #每个交换机连接一个主机,交换机间相连接。本例:4个主机,4个交换机。
#sudo mn --topo single,3 #每个主机都连接到同一个交换机上。本例:3个主机,一个交换机。
#sudo mn --topo tree,fanout=2,depth=2 #定义深度和扇出形成基于树的拓扑。本例:深度2,扇出2。
1.--topo linear,4。
(1).在装有mininet镜像的虚拟机中添加新建文件linear.py,添加以下内容:
from mininet.net import Mininet
from mininet.topo import LinearTopo
Linear4 = LinearTopo(k=4)
net = Mininet(topo=Linear4)
net.start()
net.pingAll()
net.stop()
(2).修改文件linear.py为可执行文件,并运行。
(3)运行脚本。
结果如下:
2 --topo single,3。
- 在装有Mininet镜像的虚拟机中新建文件single.py,添加以下内容:
from mininet.net import Mininet
from mininet.topo import SingleSwitchTopo
Single3 = SingleSwitchTopo(k=3) #一个交换机下挂3个主机
net = Mininet(topo=Single3)
net.start()
net.pingAll()
net.stop()
(2)修改文件single.py为可执行文件。
(3)运行脚本。
结果如下:
3 --topo tree,depth=2,fanout=2。
- 在装有Mininet镜像的虚拟机中新建文件tree.py,添加以下内容:
from mininet.net import Mininet
from mininet.topolib import TreeTopo
Tree22 = TreeTopo(depth=2,fanout=2)
net = Mininet(topo=Tree22)
net.start()
net.pingAll()
net.stop()
- 修改文件tree.py为可执行文件。运行脚本
结果如下:
4 如果是非上述三种类型的拓扑,那么下面介绍一种适合各种拓扑形式的脚本创建模式。本例:1个交换机,2个主机,并且赋予主机IP地址。
结果如下:
步骤3:交互式界面创建主机、交换机等
1 添加主机h3:
2 添加link:
3 给交换机s1添加端口eth3用于连接h3:
4 给h3赋予IP(10.0.0.3))
5 h1 ping h3
步骤4:测试网络
1 展示所有的网络信息。
2 所有节点的ping测试。