Mininet学习笔记

以下是在安装使用Mininet过程中遇到的问题以及解决方法

一、Mininet
mininet安装完全参考官方wiki。

  1. 在Windows环境下。
    在VMware workstation 里面安装Mininet VM虚拟机,wireshark启动时候遇到问题。
    通过在windows上下载Xming服务器,用putty进行X11连接得到了解决,后来发现好像可以忽略这个小问题。

  2. Linux环境。
    在EXSI中安装mininet的时候遇到了ping不通的情况。原因是ubuntu版本过高,又重新装成14.04版本。

二、mininet与外网互通

mininet创建的拓扑属于一个小型局域网,如果想与外网互通,需要利用它自带的函数。
参考mininet源码nat.py与hwinf.py,实现与外网互通。下面是实现代码:

1.  """Custom topology example 
2.   
3.  Two directly connected switches plus  hosts for each switch: 
4.   
5.     host --- switch --- switch --- host 
6.   
7.  """  
8.  import os  
9.  from mininet.net import Mininet  
10. from mininet.node import Controller, RemoteController  
11. from mininet.cli import CLI  
12. from mininet.link import Intf  
13. from mininet.log import setLogLevel, info  
14.   
15. def myNetwork():  
16.   
17.     net = Mininet( topo=None, build=False)  
18.   
19.     info( '*** Adding controller\n' )  
20.     net.addController(name='c0')  
21.       
22.     info( '*** Add switches\n')  
23.     s1 = net.addSwitch('s1')  
24.     s2 = net.addSwitch('s2')  
25.   
26.     info( '*** Add hosts\n')  
27.     h1 = net.addHost('h1')  
28.     h2 = net.addHost('h2')  
29.     h3 = net.addHost('h3')  
30.     h4 = net.addHost('h4')  
31.       
32.     info( '*** Add links\n')  
33.     net.addLink(h1, s1)  
34.     net.addLink(h2, s1)  
35.     net.addLink(h3, s2)  
36.     net.addLink(h4, s2)  
37.       
38.     Intf( 'eth0', node=s1 )  
39.     info( '*** Starting network\n')  
40.     net.start()  
41.      
42.     
43.     CLI(net)  
44.     net.stop()  
45.   
46. if __name__ == '__main__':  
47.     setLogLevel( 'info' )  
48.     myNetwork()  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值