Ryu是一款开源SDN?控制器,完全由Python?语言实现,用户可以用Python?语言在其上实现自己的应用。Ryu?目前支持所有版本的Openflow协议。
安装Ryu
先安装依赖
sudo ?apt-get install ?python-eventlet
sudo ??apt-get install? python-routes
sudo ??apt-get install? python-webob
sudo ??apt-get install? python-paramiko
下载源码
git clone git://github.com/osrg/ryu.git
执行安装
sudo pip3 install -r tools/pip-requires
sudo python3 setup.py install
mininet连接
先打开ryu控制器
cd xx/ryu/ryu/app
ryu-manager --verbose ryu.app.simple_switch_13
用mininet连接
mn --controller=remote,--ip=xxx.xxx.xxx.xxx --mac --nat --topo=tree,depth=2,fanout=3 --nat
连接之后在打开ryu控制器的地方会输出一些表项就代表连接成功。
错误处理
添加 --nat选项后报错:没有/etc/network/interfaces文件 新建文件添加以下内容:
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
iface nat0-eth0 inet manual
添加 --nat选项后在mininet中仍然无法访问外网:
方法:修改:/etc/resolv.conf 的域名服务器为主机的DNS服务器 可以利用traceroute命令简单查询域名服务器地址
traceroute www.baidu.com
返回的第一个地址替换上述文件中的域名服务器地址即可。
|