mininet中的异常错误
Exception Error in mininet
我已经使用 Mininet 创建了一个简单的自定义拓扑。当我第一次使用它时 运行 它工作正常,但之后我收到以下错误消息:
异常:创建接口对 (s1-eth1,h1-eth0) 时出错:RTNETLINK 回答:文件存在
这是什么问题,我该如何解决?
这是我的拓扑结构:
from mininet.topo import Topo
from mininet.net import Mininet
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
net = Mininet(topo)
net.start()
topos = {'mytopo': CustomTopo}
有关更多信息,我使用 Mininet 2.3.0d1
我运行它在没有遥控器的情况下通过以下命令收到另一个错误:
sudo mn --custom /home/bob/Desktop/Mtopo.py --topo=mytopo --mac
错误是:
异常:请关闭端口 6653
上 运行ning 的控制器
我检查了 netstat -nl | grep 6653 但端口 6653 上没有活动会话,也没有其他控制器要关闭。
使用这个库:
from mininet.link import TCLink, Intf
当你添加一个 link:
self.addLink(s1, h1, cls=TCLink)
你实际上启动了 Mininet 两次。一次在您的脚本中,另一个在命令行中。
将您的脚本更改为:
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.cli import CLI
from mininet.node import RemoteController
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
net = Mininet(topo, controller=lambda name: RemoteController(name, ip='127.0.0.1', protocol='tcp', port = 6633), autoSetMacs=True)
net.start()
CLI(net)
net.stop()
保存到 start_topology.py 和 运行 为
sudo python start_topology.run
或将您的脚本更改为
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.cli import CLI
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
topos = {'mytopo': CustomTopo}
保存到 mytopo.py 和 运行 为
sudo mn --custom mytopo.py --topo=mytopo --mac --controller=remote,ip=127.0.0.1,port=6633
(相应地更改控制器的 IP 和端口)
我已经使用 Mininet 创建了一个简单的自定义拓扑。当我第一次使用它时 运行 它工作正常,但之后我收到以下错误消息:
异常:创建接口对 (s1-eth1,h1-eth0) 时出错:RTNETLINK 回答:文件存在
这是什么问题,我该如何解决?
这是我的拓扑结构:
from mininet.topo import Topo
from mininet.net import Mininet
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
net = Mininet(topo)
net.start()
topos = {'mytopo': CustomTopo}
有关更多信息,我使用 Mininet 2.3.0d1
我运行它在没有遥控器的情况下通过以下命令收到另一个错误: sudo mn --custom /home/bob/Desktop/Mtopo.py --topo=mytopo --mac
错误是: 异常:请关闭端口 6653
上 运行ning 的控制器我检查了 netstat -nl | grep 6653 但端口 6653 上没有活动会话,也没有其他控制器要关闭。
使用这个库:
from mininet.link import TCLink, Intf
当你添加一个 link:
self.addLink(s1, h1, cls=TCLink)
你实际上启动了 Mininet 两次。一次在您的脚本中,另一个在命令行中。 将您的脚本更改为:
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.cli import CLI
from mininet.node import RemoteController
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
net = Mininet(topo, controller=lambda name: RemoteController(name, ip='127.0.0.1', protocol='tcp', port = 6633), autoSetMacs=True)
net.start()
CLI(net)
net.stop()
保存到 start_topology.py 和 运行 为
sudo python start_topology.run
或将您的脚本更改为
from mininet.topo import Topo
from mininet.net import Mininet
from mininet.cli import CLI
class CustomTopo (Topo):
def build(self):
S1 = self.addSwitch('s1')
H1 = self.addHost('h1')
H2 = self.addHost('h2')
self.addLink(S1, H1)
self.addLink(S1, H2)
topo = CustomTopo()
topos = {'mytopo': CustomTopo}
保存到 mytopo.py 和 运行 为
sudo mn --custom mytopo.py --topo=mytopo --mac --controller=remote,ip=127.0.0.1,port=6633
(相应地更改控制器的 IP 和端口)