使用Mininet的Python API addHost()方法

时间:2016-11-03 12:54:31

标签: python mininet

通过调用Mininet的addHost()方法将主机添加到拓扑中时遇到连接问题。主机无法互相ping通,也无法通过任何外部IP地址(通过NAT)。我想要做的一个简单示例如下:

from mininet.net import Mininet
from mininet.cli import CLI

net = Mininet()
h1 = net.addHost('h1')
h2 = net.addHost('h2')
s1 = net.addSwitch('s1')

net.addLink(s1,h1)
net.addLink(s1,h2)
net.addNAT().configDefault()
net.build()

CLI(net)  

在向Mininet类构造函数提供拓扑时,我也没有遇到过这个问题,但是对于我正在做的事情,我需要能够在实例化Mininet实例后添加主机(如上例所示) 。我做错了吗?

编辑:我应该注意到我在提供的VM映像中使用Mininet 2.2.1。

2 个答案:

答案 0 :(得分:0)

将订单ngAfterViewInit更改为net.addLink(s1,h1) 第一个主机比交换机, 中级API:Network object

答案 1 :(得分:0)

我弄明白了这个问题。如果您将Mininet构造函数传递给拓扑,它将自动为您添加控制器实例。但是,如果在实例化Mininet实例后构建拓扑(如上例所示),则必须使用

手动添加控制器
net.addController('c0')