在测mininet内部自带控制器测链路带宽时,运行时报Could not connect to iperf on port 5001,查了资料说是h1和h2ping不同导致的。运行结果如下:
root@lll-QiTianM410-N000:~/pythonProject/venv/pythontest# sudo python2.7 mininet-init.py 100 10 0
*** Iperf: testing TCP bandwidth between h1 and h2
no route to 10.0.0.2:
内核 IP 路由表
目标 网关 子网掩码 标志 跃点 引用 使用 接口
10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 h1-eth0
Traceback (most recent call last):
File "mininet-init.py", line 47, in <module>
print(net.iperf(hosts=[h1,h2]))
File "/usr/local/lib/python2.7/dist-packages/mininet/net.py", line 832, in iperf
% port )
Exception: Could not connect to iperf on port 5001
我的解决方法是换了控制器的启动命令,我开始用的是
./pox.py samples.pretty_log web messenger messenger.log_service messenger.ajax_transport openflow.of_service poxdesk
或 sudo ./pox.py forwarding.l2_learning openflow.of_01 --address=127.0.0.1 --port=6653 misc.gephi_topo openflow.spanning_tree --no-flood --hold-down host_tracker info.packet_dump samples.pretty_log log.level --DEBUG
他们能开启控制器,也能连接上但是不知道什么原因ping不同,我就换了一个启动命令:
./pox.py openflow.of_01 forwarding.l2_learning
然后就可以ping通了。
方法比较笨拙希望对你们有帮助,如果那位大神有好的方法,希望可以留言提点以下,不胜感激!!!