mininet
//sudo mn --topo single,3 --mac --switch ovsk --controller remote
sudo mn之后可以创建如下图所示默认网络拓扑
mininet>nodes
查看全部节点
mininet>net
查看链路信息
h1 ping h2
h1 ping -c 3 h2 //h1 ping h2 3次
快捷测试:Sudo mn --test pingpair
--topo设置拓扑结构
--mac使机器MAC地址与ID相同
--swith user/ovsk 使用用户态交换机/使用OpenvSwitch
--controller 指定控制器
--innamespace 使所有节点拥有各自的名字空间
启动参数总结:
-h, --help 打印帮助信息
--switch=SWITCH 交换机类型,包括 [kernel user ovsk]
--host=HOST 模拟主机类型,包括 [process]
--controller=CONTROLLER 控制器类型,包括 [nox_dump none ref remote nox_pysw]
--topo=TOPO,arg1,arg2,...argN 指定自带拓扑,包括 [tree reversed single linear minimal]
-c, --clean清理环境
--custom=CUSTOM 使用自定义拓扑和节点参数
--test=TEST 测试命令,包括 [cli build pingall pingpair iperf all iperfudp none]
-x, --xterms 在每个节点上打开 xterm
--mac 让MAC 地址跟 DP ID 相同
--arp 配置所有 ARP 项
-v VERBOSITY, --verbosity=VERBOSITY [info warning critical error debug output] 输出日志级别
--ip=IP 远端控制器的IP地址
--port=PORT 远端控制器监听端口
--innamespace 在独立的名字空间内
--listenport=LISTENPORT 被动监听的起始端口
--nolistenport 不使用被动监听端口
--pre=PRE 测试前运行的 CLI 脚本
--post=POST 测试后运行的 CLI 脚本
进入xterm命令
1.sudo mn -x//这样会在每个节点上自动打开一个xterm
2.xterm s1 h2
链路操作:
link s1 h2 down
常用命令总结:
help 默认列出所有命令文档,后面加命令名将介绍该命令用法
dump 打印节点信息
gterm 给定节点上开启 gnome-terminal。
注:可能导致 Mininet 崩溃
xterm 给定节点上开启 xterm
intfs 列出所有的网络接口
iperf 两个节点之间进行简单的 iperf TCP测试
iperfudp 两个节点之间用指定带宽 udp 进行测试
net 显示网络链接情况
noecho 运行交互式窗口,关闭回应(echoing)
pingpair 在前两个主机之间互 ping 测试
source 从外部文件中读入命令
dpctl 在所有交换机上用 dptcl 执行相关命令,本地为 tcp 127.0.0.1:6634
link 禁用或启用两个节点之间的链路
nodes 列出所有的节点信息
pingall 所有 host 节点之间互 ping
py 执行 Python 表达式
sh 运行外部 shell 命令
quit/exit 退出
sudo mn -c进行清理配置操作
exit 退出Mininet的CLI
py cmd使用Pthon来执行cmd
sudo mn --testnone测试Mininet启动后立刻关闭的时间
dpctl show tcp:127.0.0.1:6634查看交换机的端口等基本情况,tcp端口6634是默认的交换机监听端口
dcptl dump-flows tcp:127.0.0.1:6634可以看到更详细的流表信息