Heim >System-Tutorial >LINUX >Verwenden Sie Mininet, um ein einfaches Routing-Experiment zu erstellen

Verwenden Sie Mininet, um ein einfaches Routing-Experiment zu erstellen

王林
王林nach vorne
2024-01-16 16:18:201177Durchsuche

Erstellen Sie ein einfaches Routing-Experiment mit Mininet

Die Netzwerktopologie ist wie folgt:

Verwenden Sie Mininet, um ein einfaches Routing-Experiment zu erstellen

Mininets Topologie-Definitionscode:

from mininet.topo import Topo

class Router_Topo(Topo):
    def __init__(self):
        "Create P2P topology."

        # Initialize topology
        Topo.__init__(self)

        # Add hosts and switches
        H1 = self.addHost('h1')
        H2 = self.addHost('h2')
        H3 = self.addHost('h3')
        S1 = self.addSwitch('s1')
        S2 = self.addSwitch('s2')

        # Add links
        self.addLink(H1, S1)
        self.addLink(H2, S1)
        self.addLink(H2, S2)
        self.addLink(H3, S2)

topos = {
        'router': (lambda: Router_Topo())
}

Verwenden Sie das obige Skript, um eine Netzwerktopologie zu generieren:

sudo mn --custom /home/mininet/Router.py --topo router
mininet> net
h1 h1-eth0:s1-eth1
h2 h2-eth0:s1-eth2 h2-eth1:s2-eth1
h3 h3-eth0:s2-eth2
s1 lo: s1-eth1:h1-eth0 s1-eth2:h2-eth0
s2 lo: s2-eth1:h2-eth1 s2-eth2:h3-eth0

Routing-Funktionen für Knoten konfigurieren:

mininet> h1 ifconfig h1-eth0 192.168.12.1 netmask 255.255.255.0
mininet> h2 ifconfig h2-eth0 192.168.12.2 netmask 255.255.255.0
mininet> h2 ifconfig h2-eth1 192.168.23.2 netmask 255.255.255.0
mininet> h3 ifconfig h3-eth0 192.168.23.3 netmask 255.255.255.0
mininet> h1 route add default gw 192.168.12.2
mininet> h3 route add default gw 192.168.23.2
mininet> h2 sysctl net.ipv4.ip_forward=1

h1 hat h3 gepingt:

mininet> h1 ping -c 1 192.168.23.3

Das obige ist der detaillierte Inhalt vonVerwenden Sie Mininet, um ein einfaches Routing-Experiment zu erstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen