前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux 中配置SDN服务

Linux 中配置SDN服务

作者头像
冷影玺
修改2024-09-13 16:01:12
2840
修改2024-09-13 16:01:12
举报
文章被收录于专栏:冷影玺

题目需求:

服务器IspSrv上的工作任务

在 IspSrv 上导入 OpenDayLight 软件包;

启动 OpenDayLight 的 karaf 程序,并安装如下组件:

feature:install odl-restconf

feature:install odl-l2switch-switch-ui

feature:install odl-mdsal-apidocs

feature:install odl-dluxapps-applications

使用 Mininet 和 OpenVswitch 构建拓扑,连接 ODL 的 6653 端口如下拓扑结构:

在浏览器上可以访问 ODL 管理页面查看网元拓扑结构;

通过 OVS 给 S2 下发流表,使得 H2 与 H1、H3 无法互通;

H1 启动 HTTP-Server 功能,WEB 端口为 8080,H3 作为 HTTP-Client,获取 H1 的 html 网页配置文件。

实验压缩包获取:

项目实施

上传文件: distribution-karaf-0.6.0-Carbon.zip mininet_2.2.2-4_amd64.deb

代码语言:javascript
复制
root@IspSrv:~# apt install lrzsz -y
root@IspSrv:~# ls -l
总用量 425160
-rw-r--r-- 1 root root 435235339 4月  12  2022 distribution-karaf-0.6.0-Carbon.zip
-rw-r--r-- 1 root root    124592 11月 10 11:41 mininet_2.2.2-4_amd64.deb
root@IspSrv:~#

安装jdk和加压Opendaylight,并启动karaf程序:

代码语言:javascript
复制
root@IspSrv:~# apt install openjdk-8-jdk -y
root@IspSrv:~# unzip distribution-karaf-0.6.0-Carbon.zip
root@IspSrv:~# ./distribution-karaf-0.6.0-Carbon/bin/karaf

注意:若不能执行则配置jdk环境变量

代码语言:javascript
复制
root@IspSrv:~# echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64" >> /etc/profile
root@IspSrv:~# source /etc/profile

安装组件:

代码语言:javascript
复制
opendaylight-user@root>
opendaylight-user@root>feature:install odl-restconf
opendaylight-user@root>feature:install odl-l2switch-switch-ui
opendaylight-user@root>feature:install odl-mdsal-all
opendaylight-user@root>feature:install odl-dluxapps-applications
opendaylight-user@root>

浏览器访问测试(登录密码和用户均为admin)

代码语言:javascript
复制
http://ispweb.chinaskills.cn:8181/index.html

安装Mininet,Openvswitch:

代码语言:javascript
复制
root@IspSrv:~# dpkg -i mininet_2.2.2-4_amd64.deb

报错执行:

代码语言:javascript
复制
root@IspSrv:~# apt --fix-broken install -y

继续安装:

代码语言:javascript
复制
root@IspSrv:~# dpkg -i mininet_2.2.2-4_amd64.deb

安装openvswitch:

代码语言:javascript
复制
root@IspSrv:~# apt install openvswitch-switch -y

使用mn命令搭建拓扑:

代码语言:javascript
复制
root@IspSrv:~# mn --controller=remote,ip=81.6.63.100,port=6653 --topo=linear,3,1 --switch=ovs,protocols=OpenFlow10

pingall 测试:

代码语言:javascript
复制
mininet> pingall

web界面查看拓扑结构:

配置下发流表,开启HTTP-Server功能:

h2与h1、h3无法互通

代码语言:javascript
复制
mininet> sh ovs-ofctl add-flow s2 in_port=1,actions=drop
mininet> pingall

开启 http 服务:

代码语言:javascript
复制
mininet> h1 python -m SimpleHTTPServer 8080 &
mininet> sh ss -tunlp | grep 8080

安装测试工具:

代码语言:javascript
复制
mininet> sh apt install curl -y
mininet> sh apt install wget -y

测试下载:

代码语言:javascript
复制
mininet> h3 wget -O h1 http://10.0.0.1:8080

代码语言:javascript
复制
mininet> h3 curl http://10.0.0.1:8080

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目需求:
    • 服务器IspSrv上的工作任务
    • 项目实施
    相关产品与服务
    云服务器
    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档