在 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 网页配置文件。
实验压缩包获取:
SDN环境压缩包 |
---|
上传文件: distribution-karaf-0.6.0-Carbon.zip mininet_2.2.2-4_amd64.deb
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程序:
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环境变量
root@IspSrv:~# echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64" >> /etc/profile
root@IspSrv:~# source /etc/profile
安装组件:
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)
http://ispweb.chinaskills.cn:8181/index.html
安装Mininet,Openvswitch:
root@IspSrv:~# dpkg -i mininet_2.2.2-4_amd64.deb
报错执行:
root@IspSrv:~# apt --fix-broken install -y
继续安装:
root@IspSrv:~# dpkg -i mininet_2.2.2-4_amd64.deb
安装openvswitch:
root@IspSrv:~# apt install openvswitch-switch -y
使用mn命令搭建拓扑:
root@IspSrv:~# mn --controller=remote,ip=81.6.63.100,port=6653 --topo=linear,3,1 --switch=ovs,protocols=OpenFlow10
pingall 测试:
mininet> pingall
web界面查看拓扑结构:
配置下发流表,开启HTTP-Server功能:
h2与h1、h3无法互通
mininet> sh ovs-ofctl add-flow s2 in_port=1,actions=drop
mininet> pingall
开启 http 服务:
mininet> h1 python -m SimpleHTTPServer 8080 &
mininet> sh ss -tunlp | grep 8080
安装测试工具:
mininet> sh apt install curl -y
mininet> sh apt install wget -y
测试下载:
mininet> h3 wget -O h1 http://10.0.0.1:8080
mininet> h3 curl http://10.0.0.1:8080