2014-05-15 11 views

Odpowiedz

10

Polecam, aby przeczytać this mail form mininet's mailing list archives, aby mieć pojęcie o tym, jak zrobić to samemu. Mam nadzieję, że już znasz API Pythona dla minineta. Znajdź poniżej kod Pythona, który napisałem. Możesz go zamortyzować:

#!/usr/bin/python 

from mininet.net import Mininet 
from mininet.node import Controller, RemoteController 
from mininet.cli import CLI 
from mininet.log import setLogLevel, info 

def myNet(): 


    #OpenDayLight controller 
    ODL_CONTROLLER_IP='10.0.0.4' 

    #Floodlight controller 
    FL_CONTROLLER_IP='10.0.0.5' 

    net = Mininet(topo=None, build=False) 

    # Create nodes 
    h1 = net.addHost('h1', mac='01:00:00:00:01:00', ip='192.168.0.1/24') 
    h2 = net.addHost('h2', mac='01:00:00:00:02:00', ip='192.168.0.2/24') 

    # Create switches 
    s1 = net.addSwitch('s1', listenPort=6634, mac='00:00:00:00:00:01') 
    s2 = net.addSwitch('s2', listenPort=6634, mac='00:00:00:00:00:02') 

    print "*** Creating links" 
    net.addLink(h1, s1,) 
    net.addLink(h2, s2,) 
    net.addLink(s1, s2,) 

    # Add Controllers 
    odl_ctrl = net.addController('c0', controller=RemoteController, ip=ODL_CONTROLLER_IP, port=6633) 

    fl_ctrl = net.addController('c1', controller=RemoteController, ip=FL_CONTROLLER_IP, port=6633) 


    net.build() 

    # Connect each switch to a different controller 
    s1.start([odl_ctrl]) 
    s2.start([fl_ctrl]) 

    s1.cmdPrint('ovs-vsctl show') 

    CLI(net) 
    net.stop() 

if __name__ == '__main__': 
    setLogLevel('info') 
    myNet() 

Miłej zabawy!

+0

Czy można ustawić adres IP przełącznika mininet? –

Powiązane problemy