linux就该这么学吧 关注:12,622贴子:3,480
  • 0回复贴,共1

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

只看楼主收藏回复

使用mininet构建一个简单的路由实验
网络拓扑结构如下:

Mininet的拓扑定义代码:
from mininet.topo import Topoclass 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 routermininet> neth1 h1-eth0:s1-eth1h2 h2-eth0:s1-eth2 h2-eth1:s2-eth1h3 h3-eth0:s2-eth2s1 lo: s1-eth1:h1-eth0 s1-eth2:h2-eth0s2 lo: s2-eth1:h2-eth1 s2-eth2:h3-eth0
为节点配置路由功能:
mininet> h1 ifconfig h1-eth0 192.168.12.1 netmask 255.255.255.0mininet> h2 ifconfig h2-eth0 192.168.12.2 netmask 255.255.255.0mininet> h2 ifconfig h2-eth1 192.168.23.2 netmask 255.255.255.0mininet> h3 ifconfig h3-eth0 192.168.23.3 netmask 255.255.255.0mininet> h1 route add default gw 192.168.12.2mininet> h3 route add default gw 192.168.23.2mininet> h2 sysctl net.ipv4.ip_forward=1
h1看ping通h3了:
mininet> h1 ping -c 1 192.168.23.3


IP属地:北京1楼2017-11-05 22:57回复