Au départ, je voulais créer une topologie complexe (plus de commutateurs connectés les uns aux autres), mais même cette simple ne fonctionne pas. Je ne suis pas en mesure d'obtenir une connexion de travail, par exemple. 'H1 ping h2'topologie personnalisée Mininet-wifi
Il est le script qui doit créer la topologie équivalente:
!/usr/bin/python
"""
Setting the position of Nodes (only for Stations and Access Points) and providing mobility.
"""
from mininet.net import Mininet
from mininet.node import Controller, RemoteController, OVSKernelAP
from mininet.link import TCLink
from mininet.cli import CLI
from mininet.log import setLogLevel
def topology():
"Create a network."
net = Mininet(controller=Controller, link=TCLink, accessPoint=OVSKernelAP)
print "*** Creating nodes"
h1 = net.addHost('h1', mac='00:00:00:00:00:01', ip='10.0.0.1/8')
h2 = net.addHost('h2', mac='00:00:00:00:00:11', ip='10.0.1.1/8')
sta1 = net.addStation('sta1', mac='00:00:00:00:00:02', ip='10.0.0.2/8', position='50,50,0')
sta2 = net.addStation('sta2', mac='00:00:00:00:00:03', ip='10.0.0.3/8', position='40,50,0')
sta3 = net.addStation('sta3', mac='00:00:00:00:00:04', ip='10.0.0.4/8', position='20,50,0')
ap1 = net.addAccessPoint('ap1', ssid= 'new-ssid', mode= 'g', channel= '5', position='25,50,0', range='35')
ap2 = net.addAccessPoint('ap2', ssid= 'new-ssid', mode= 'g', channel= '5', position='75,50,0', range='35')
c1 = net.addController('c1')
s1 = net.addSwitch('s1')
#net.runAlternativeModule('../module/mac80211_hwsim.ko')
print "*** Configuring wifi nodes"
net.configureWifiNodes()
print "*** Associating and Creating links"
net.addLink(ap1, s1)
net.addLink(ap2, s1)
net.addLink(s1, c1)
#net.addLink(ap1, ap2)
net.addLink(s1, h1)
net.addLink(s1, h2)
net.addLink(ap1, sta1)
net.addLink(ap1, sta2)
net.addLink(ap1, sta3)
print "*** Starting network"
net.build()
c1.start()
ap1.start([c1])
ap2.start([c1])
"""uncomment to plot graph"""
net.plotGraph(max_x=100, max_y=100)
net.startMobility(startTime=0)
net.mobility(sta1, 'start', time=1, position='0.0,50.0,0.0')
net.mobility(sta1, 'stop', time=30, position='100.0,50.0,0.0')
net.stopMobility(stopTime=31)
print "*** Running CLI"
CLI(net)
print "*** Stopping network"
net.stop()
if __name__ == '__main__':
setLogLevel('info')
topology()
Comme déjà dit, je ne suis pas en mesure de même ping h1 et h2 :( J'ai même essayé d'utiliser RemoteController mais on m'a donné le même résultat. Toute idée de ce qui pourrait être erroné?