Untitled
unknown
plain_text
5 months ago
3.5 kB
3
Indexable
#!/usr/bin/python from mininet.topo import Topo from mininet.net import Mininet from mininet.cli import CLI from mininet.node import RemoteController class MyTopology(Topo): def __init__(self): Topo.__init__(self) s1 = self.addSwitch('s1') #core switch s2 = self.addSwitch('s2') s3 = self.addSwitch('s3') s4 = self.addSwitch('s4') s5 = self.addSwitch('s5') #fac lan facultyWS = self.addHost('facultyWS', mac='00:00:00:00:10:10', ip='10.0.1.2/24', defaultRoute="facultyWS-eth1") printer = self.addHost('printer', mac='00:00:00:00:10:20', ip='10.0.1.3/24', defaultRoute="printer-eth1") facultyPC = self.addHost('facultyPC', mac='00:00:00:00:10:30', ip='10.0.1.4/24', defaultRoute="facultyPC-eth1") #university data center examServer = self.addHost('examServer', mac='00:00:00:00:20:10', ip='10.100.100.2/24', defaultRoute="examServer-eth1") webServer = self.addHost('webServer', mac='00:00:00:00:20:20', ip='10.100.100.20/24', defaultRoute="webServer-eth1") dnsServer = self.addHost('dnsServer', mac='00:00:00:00:20:30', ip='10.100.100.56/24', defaultRoute="dnsServer-eth1") #it dept itWS = self.addHost('itWS', mac='00:00:00:00:30:10', ip='10.40.3.30/24', defaultRoute="itWS-eth1") itPC = self.addHost('itPC', mac='00:00:00:00:30:20', ip='10.40.3.254/24', defaultRoute="itPC-eth1") #student housing lan studentPC1 = self.addHost('studentPC1', mac='00:00:00:00:40:10', ip='10.0.2.2/24', defaultRoute="studentPC1-eth1") labWS = self.addHost('labWS', mac='00:00:00:00:40:20', ip='10.0.2.3/24', defaultRoute="labWS-eth1") studentPC2 = self.addHost('studentPC2', mac='00:00:00:00:40:30', ip='10.0.2.40/24', defaultRoute="studentPC2-eth1") #internet/external (not a subnet technically) trustedPC = self.addHost('trustedPC', mac='00:00:00:00:50:10', ip='10.0.203.6/32', defaultRoute="trustedPC-eth1") guest1 = self.addHost('guest1', mac='00:00:00:00:50:20', ip='10.0.198.6/32', defaultRoute="guest1-eth1") guest2 = self.addHost('guest2', mac='00:00:00:00:50:30', ip='10.0.198.10/32', defaultRoute="guest2-eth1") self.addLink(s2, s1, port1=2, port2=2) #faclan self.addLink(s1, s3, port1=3, port2=3) #student self.addLink(s1, s4, port1=4, port2=4) #it self.addLink(s1, s5, port1=5, port2=5) #data center self.addLink(s2, facultyWS, port1=3, port2=1) self.addLink(s2, printer, port1=4, port2=1) self.addLink(s2, facultyPC, port1=5, port2=1) self.addLink(s3, studentPC1, port1=4, port2=1) self.addLink(s3, studentPC2, port1=5, port2=1) self.addLink(s3, labWS, port1=6, port2=1) self.addLink(studentPC1, labWS, port1=2, port2=2) self.addLink(s4, itWS, port1=5, port2=1) self.addLink(s4, itPC, port1=6, port2=1) self.addLink(s5, examServer, port1=6, port2=1) self.addLink(s5, webServer, port1=7, port2=1) self.addLink(s5, dnsServer, port1=8, port2=1) self.addLink(s1, trustedPC, port1=6, port2=1) self.addLink(s1, guest1, port1=7, port2=1) self.addLink(s1, guest2, port1=8, port2=1) if __name__ == '__main__': topo = MyTopology() c0 = RemoteController(name='c0', controller=RemoteController, ip='127.0.0.1', port=6633) net = Mininet(topo=topo, controller=c0) net.start() CLI(net) net.stop()
Editor is loading...
Leave a Comment