使用mininet构建一个简单的路由实验

k">网络拓扑结构如下:

使用mininet构建一个简单的路由实验

Mininet的拓扑定义代码

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())
}

登录后复制

利用上面的脚本生成网络拓扑:

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

登录后复制

为节点配置路由功能:

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看ping通h3了:

mininet> h1 ping -c 1 192.168.23.3

登录后复制

以上就是用mininet搭建一个基础的路由实验的详细内容,更多请关注小闻网其它相关文章!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。