IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 基于SDN的DDoS攻击检测与防御 -> 正文阅读

[系统运维]基于SDN的DDoS攻击检测与防御

1、概述

1.1 什么是SDN

软件定义网络(英语:software-defined networking,缩写作 SDN)是一种新型网络架构。它利用OpenFlow协议将路由器的控制平面(control plane)从数据平面(data plane)中分离,改以软件方式实现。该架构可使网络管理员在不更动硬件设备的前提下,以中央控制方式用程序重新规划网络,为控制网络流量提供了新方案,也为核心网络和应用创新提供了良好平台。Facebook与Google都在他们的数据中心中使用OpenFlow协议,并成立了开放网络基金会来推动这个技术。

1.2 什么是mininet

Mininet是一个强大的网络仿真平台,通过这个平台,我们可以很方便的模拟真实环境中的网络操作与架构。特别是SDN,在真实网络中进行相关的网络实验有一定难度,自然需要一个仿真平台可以学习这种新型的网络架构,而Mininet就应运而生,承担了这个光荣而艰巨的使命。
Mininet自带交换机(switchs)、主机(hosts)、控制器(controllers),同时,在mininet上可以安装OpenvSwitch、多种控制器(NOX\POX\RYU\Floodlight\OpenDaylight等),同时,Mininet可以运行在多种操作系统上(windows\linux\Mac OS),具有很强的系统兼容性。最令人兴奋的一点是:在Mininet上进行的实验,可以无缝的移到真实的环境中去

在这里插入图片描述

1.3 什么是RYU

RYU是一款基于python的控制器,你可用Ryu实现各种想要实现的网络功能,它可以下发或接收流表进行各种路由运算。

2 实验流程

2.1 构建拓扑

构建的拓扑图

在这里插入图片描述
实验代码进行解决

在这里插入图片描述

命令解释

sudo:以管理员权限运行,因为mininet要调用内核的东西
mn:就是mininet的命令简写
--controller=remote:使用远程的控制器
ip,port:控制器的ip和端口
--topo:指定拓扑类型,single 就是单一拓扑,就是最简单的交换机下面接主机,后面的3 表示,三台主机。

当你看到 mininet> 标识符,表示拓扑创建完成,我们可以输入一些指令查看网络拓扑。
nodes 指令显示节点信息:
links 指令显示节点信息:
在这里插入图片描述

2.2 ryu控制器配置

通过ryu-manager命令启动ryu控制器,并且打开ofctl_rest.py和simple_switch.py,作为交换机的转发规则,因为之后要用到restAPI,即控制器的北向接口(postamn连接使用),所以需要打开ofctl_rest.py。

在这里插入图片描述

2.3 sFlow-RT 使用

安装sFlow-RT,命令wget http://www.inmon.com/products/sFlow-RT/sflow-rt.tar.gz,然后解压到当前目录下,输入命令cd sflow-rt,然后启动:./start.sh,看到下列信息证明启动成功。其中 6343 是sFlow Collector 的默认端口,8008 则是 sFlow 的WebUI端口。(注意:执行sflow-rt需要先配置好jdk,否则会报Java不存在的错误)

在这里插入图片描述
其中 6343 是sFlow Collector 的默认端口,8008 则是 sFlow 的WebUI端口
在这里插入图片描述

其中sFlow-RT的ddos-blackhole(https://github.com/sflow-rt/ddos-blackhole

配置sFlow Agent
我们需要在虚拟交换机配置sFlow Agent,这样sFlow Collector 才能收集到流量信息进行分析和呈现。
键入以下指令部署sFlow Agent :

在这里插入图片描述
指令说明:

1)agent:监控 eth0 网卡产生的流量;
2)target:sFlow-RT的IP,默认端口6343;
3)bridge:需要开启sFlow的网桥;
4)sampling:采样率,表示每隔N个Packet就取样一次
5)polling:轮询时间,每隔N秒polling一次
提示:如果有N个网桥,就需要执行N次部署 sFlowAgent
的指令,我们本次实验中只有一个网桥,所以执行一次就可以了。

通过如下指令可以查看已经配置的 sFlow Agent信息:

在这里插入图片描述
使用命令ip link,可以查看虚拟交换机端口与端口编号的映射,可以看见s1 交换机对应的编号是7:在这里插入图片描述
接下来,查看sFlow Agent 是否配置成功,我们可以通过其WebUI进行查看,在浏览器中输入网址localhost:8008/html/index.html,可以看见各项监控状态。
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-08-17 15:47:33  更:2021-08-17 15:48:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 9:51:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码