一种网络管理平面地址的随机跳变方法及装置与流程

文档序号:11156616阅读:778来源:国知局
一种网络管理平面地址的随机跳变方法及装置与制造工艺

本发明涉及预防网络信息窃听的技术领域,尤其是一种网络管理平面地址的随机跳变方法及装置。



背景技术:

作为一项可有效预防网络信息窃听的技术,网络安全领域对地址和端口跳变技术的研究愈发深入。地址和端口跳变是指网络节点拥有随机变化本身地址和端口,或者地址和端口在传输过程中不断变化的能力。

在地址、端口跳变技术研究方面,目前出现了包括APOD,DyNAT和NASR等在内的研究成果,APOD使用基于地址和端口随机的“跳变隧道”伪装目标主机,在IP地址跳变过程中需要客户端与服务器端的协作;DyNAT提供一种在数据包进入核心网或公共网之前进行IP变化的机制,以避免中间人攻击;NASR是一种LAN级别的基于DHCP更新的网络地址随机跳变策略,用以防范Hitlist worms攻击。另外,Ehab Al-Shaer等人提出了一种具有高速变化和难以预测特性的IP地址变化技术,简称RHM(Random Host Mutation),RHM需要通过增添中心式的实体Moving Target Controller和分布式实体Moving Target Gateway来进行实际地址rIP和虚拟地址vIP的转变。之后,Ehab Al-Shaer等人在RHM的基础上结合新出现的OpenFlow技术对RHM作了进一步地改进,得到OF-RHM(OpenFlow Random Host Mutation)模型,相对于RHM,OF-RHM由于SDN灵活的基础架构可以更为有效以及以更小的处理开销开发和管理主机地址随机跳变功能。

其中,APOD,DyNAT和NASR等技术均没有提供一种无需改变终端主机配置即可防范内外部侦听攻击的IP跳变机制;而RHM和OF-RHM技术通过控制器维护的实际地址到虚拟地址的映射,在通信过程中实现了一次性地地址跳变,并没有在数据传输过程中实现IP地址的多次可变。



技术实现要素:

本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种网络管理平面地址的随机跳变方法及装置。不必要对源、目的主机固有IP地址和端口进行重新配置。相比于上述RHM模型和OF-RHM模型,本模型将地址、端口跳变的过程从主机终端迁移到数据传输的路径上,在数据流经过每一跳交换机后,包头的地址、端口均会发生随机变化,而在OF-RHM模型中,地址从rIP(实际IP)与vIP(虚拟IP)之间的变化发生在第一跳OpenFlow交换机和最后一跳OpenFlow交换机,相比上述两种模型,本模型可以使得地址的跳变具有更高频率以及地址更加难以预测的特点,从而使得网络的两项属性——网络节点地址、端口不断发生变化,提升了网络攻击的复杂度和花费,降低网络被成功攻击的风险。

本发明采用的技术方案如下:

一种网络管理平面地址的随机跳变方法包括:

步骤1:控制器根据某一交换机发送PacketIn消息获取主机数据流的包头信息;执行步骤2;

步骤2:控制器根据该主机包头信息的源、目的IP地址判断通信双方主机是否在一个OpenFlow域内;如果不在一个OpenFlow域内,则执行泛洪操作;如果在一个域内,则执行步骤3;

步骤3:控制器根据通信主机的源、目的IP地址从路由引擎获取源、目的主机之间的路由;如果没有可达路由,则执行泛洪操作;如果获取到可用路由,则执行步骤4;

步骤4:控制器根据路由上的交换机数量,假设该路由上交换机数量为n,生成随机IP地址列表,并保存实际源、目的IP地址;随机IP地址列表共n-1项,每项包括随机生成的源、目的IP地址对;

步骤5:控制器遍历路由上所有交换机,向每台交换机下发流表;所选路由上交换机根据下发的流表进行数据流的匹配和包头IP地址的更改、转发动作,通过IP地址在传输路径上的不断跳变,完成源主机与目的主机之间的数据传递。

进一步的,所述OpenFlow域是指一台OpenFlow控制器管辖控制的范围。

进一步的,所述步骤5具体过程是:

步骤51:控制器遍历路由上所有交换机,向未下发流表的交换机下发流表,执行步骤52:

步骤52:若所选路由上交换机是与源主机直接连接的交换机,即首交换机,则下发的流表Match匹配项为匹配实际源、目的IP地址,流表Actions项将更改数据流的源、目的IP为随机IP地址列表的第一项源、目的IP地址对,以及从相应端口转发,然后执行步骤51;

若所选路由上交换机是第i跳交换机,即除过首交换机以及末交换机之外的交换机,则下发流表Match匹配项为匹配随机IP地址列表的第i-1项源、目的IP地址对,流表Actions项将更改数据流的源和目的IP为随机IP地址列表的第i项源、目的IP地址对,以及从相应端口转发,然后执行步骤51;

若所选路由上交换机是与目的主机直接连接的交换机,即末交换机,则下发的流表Match匹配项为匹配随机IP地址列表的第n-1项源、目的IP地址对,流表Actions项将更改数据流的源和目的IP为实际源、目的IP地址,以及从相应端口转发,执行步骤53;

步骤53:通过IP地址在传输路径上的不断跳变,完成源主机与目的主机之间的数据传递。

进一步的,所述当n为4时,源主机IP地址r1、目的主机IP地址为r2;随机IP地址列表分别为v1到v6;v1、v2是第一交换机与第二交换机之间的第一项源、目的IP地址对;v3、v4是第二交换机与第三交换机之间的第二项源、目的IP地址对;v5、v6是第三交换机与第四交换机之间的第三项源、目的IP地址对;

控制器Controller向第一交换机、第二交换机、第三交换机、第四交换机分别下发流表;各个交换机下发的流表内容如下:

第一级交换机下发流表Match项为匹配源IP地址为r1、目的IP地址为r2的数据流,Actions项为执行修改源地址为v1、目的地址为v2,并向与第二交换机连接的端口转发的动作;

第二交换机下发流表Match项为匹配源IP地址为v1、目的IP地址为v2的数据流,Actions项为执行修改源地址为v3、目的地址为v4,并向与第三交换机连接的端口转发的动作;

第三交换机下发流表Match项为匹配源IP地址为v3、目的IP地址为v4的数据流,Actions项为执行修改源地址为v5、目的地址为v6,并向与第四交换机连接的端口转发的动作;

第四交换机下发流表Match项为匹配源IP地址为v5、目的IP地址为v6的数据流,Actions项为执行修改源地址为r1、目的地址为r2,并向与目的主机H2连接的端口转发的动作。

一种网络管理平面地址的随机跳变装置包括:

控制器,用于根据某一交换机发送PacketIn消息获取主机数据流的包头信息;然后根据该主机包头信息的源、目的IP地址判断通信双方主机是否在一个OpenFlow域内;如果不在一个OpenFlow域内,则执行泛洪操作;如果在一个域内,则控制器根据通信主机的源、目的IP地址从路由引擎获取源、目的主机之间的路由;如果没有可达路由,则执行泛洪操作;如果获取到可用路由,则控制器根据路由上的交换机数量,假设该路由上交换机数量为n,生成随机IP地址列表,并保存实际源、目的IP地址;随机IP地址列表共n-1项,每项包括随机生成的源、目的IP地址对;控制器遍历路由上所有交换机,向每台交换机下发流表;

所选路由上交换机根据下发的流表进行数据流的匹配和包头IP地址的更改、转发动作,通过IP地址在传输路径上的不断跳变,完成源主机与目的主机之间的数据传递。

进一步的,所述OpenFlow域是指一台OpenFlow控制器管辖控制的范围。

进一步的,所述控制器遍历路由上所有交换机,向每台交换机下发流表;所选路由上交换机根据下发的流表进行数据流的匹配和包头IP地址的更改、转发动作,通过IP地址在随机IP地址列表上的跳变具体过程是:

控制器遍历路由上所有交换机,向未下发流表的交换机下发流表;

然后若所选路由上交换机是与源主机直接连接的交换机,即首交换机,则下发的流表Match匹配项为匹配实际源、目的IP地址,流表Actions项将更改数据流的源、目的IP为随机IP地址列表的第一项源、目的IP地址对,以及从相应端口转发,然后控制器遍历路由上所有交换机,向未下发流表的交换机下发流表;

若所选路由上交换机是第i跳交换机,即除过首交换机以及末交换机之外的交换机,则下发流表Match匹配项为匹配随机IP地址列表的第i-1项源、目的IP地址对,流表Actions项将更改数据流的源和目的IP为随机IP地址列表的第i项源、目的IP地址对,以及从相应端口转发,然后控制器遍历路由上所有交换机,向未下发流表的交换机下发流表;

若所选路由上交换机是与目的主机直接连接的交换机,即末交换机,则下发的流表Match匹配项为匹配随机IP地址列表的第n-1项源、目的IP地址对,流表Actions项将更改数据流的源和目的IP为实际源、目的IP地址,以及从相应端口转发,通过IP地址在随机IP地址列表上的跳变。

进一步的,所述当n为4时,源主机IP地址r1、目的主机IP地址为r2;随机IP地址列表分别为v1到v6;v1、v2是第一交换机与第二交换机之间的第一项源、目的IP地址对;v3、v4是第二交换机与第三交换机之间的第二项源、目的IP地址对;v5、v6是第三交换机与第死交换机之间的第三项源、目的IP地址对;

控制器Controller向第一交换机、第二交换机、第三交换机、第四交换机分别下发流表;各个交换机下发的流表内容如下:

第一级交换机下发流表Match项为匹配源IP地址为r1、目的IP地址为r2的数据流,Actions项为执行修改源地址为v1、目的地址为v2,并向与第二交换机连接的端口转发的动作;

第二交换机下发流表Match项为匹配源IP地址为v1、目的IP地址为v2的数据流,Actions项为执行修改源地址为v3、目的地址为v4,并向与第三交换机连接的端口转发的动作;

第三交换机下发流表Match项为匹配源IP地址为v3、目的IP地址为v4的数据流,Actions项为执行修改源地址为v5、目的地址为v6,并向与第四交换机连接的端口转发的动作;

第四交换机下发流表Match项为匹配源IP地址为v5、目的IP地址为v6的数据流,Actions项为执行修改源地址为r1、目的地址为r2,并向与目的主机H2连接的端口转发的动作。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

本发明旨在提升网络数据传输过程中的安全性,通过地址和端口等网络参数在数据传输过程中不断变化的方式隐藏数据流,对于网路中存在的数据窃听、嗅探、信息篡改、中间人攻击等恶意网络攻击方式有着较强的抵抗能力。通过仿真实验验证,本发明可有效提升网络攻击的复杂度和花费,降低网络被成功攻击的风险。

本发明一种在SDN网络架构下,利用SDN下的一种名为OpenFlow协议实现了一种网络地址和端口跳变的方法。本专利的目的是为了提升网络通信过程中的安全性,对于网络窃听等攻击具有较强的防御作用。创新点主要可认为是以网络地址、端口等属性在传输过程中的跳变预防网络嗅探、窃听等攻击的这种思路。

附图说明

本发明将通过例子并参照附图的方式说明,其中:

图1是本发明地址跳变具体流程图。

图2是本发明地址跳变过程示意图。

具体实施方式

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

本发明相关说明:

1、源、目的IP地址对指的是源IP地址与目的IP地址形成的一对信息值。

2、路由引擎指的是一种实现路由寻找的功能模块。

PacketIn消息是交换机接收到某一主机的数据流,但是无匹配流表而向控制器上报的请求解析消息。

关于流表与随机IP地址列表的说明:

随机IP地址列表是本专利定义的控制器维护的针对一对通信主机或终端的数据结构,包含n-1项(n是路由上的交换机数量),每一项有两个值,分别是源、目的IP地址值,第一列的数字只是表示项数(即该项是表中第几项)。流表是OpenFlow协议定义的由控制器发送给交换机,交换机维护的一种数据结构,包括几个部分:Match Fields(匹配项)、Counters(计数器)、Instructions(执行指令)、Priority(优先级)、Timeout(超时)。交换机根据匹配项匹配数据流,比如具有相同源IP地址的数据包可看做一条数据流,具有相同目的MAC地址和VLAN ID的数据包看作另一条数据流,一条流表就对应一条数据流(这也是为什么这个东西叫流表,这个匹配规则可根据图中最下面一行的参数可以自己定义);计数器维护了一些计数信息;执行指令就是Actions,包括输出、丢弃、重设包头信息(set-field)等动作,本专利主要是依靠Set-Field动作实现地址和端口等信息的变化;Priority是数据流的优先级等级;timeout是超时信息,指示该流表何时失效。

实施例一:

当主机H1向主机H2发送消息时,经过如下的过程实现传输过程中的地址跳变。

1)主机H1通过某种方式预先获知主机H2的IP地址后,组包向主机H2发送信息,该数据流首先到达与主机H1相连的交换机Switch1;

2)交换机Switch1收到该数据流的第一个数据包时,查找流表,由于是第一次接收到该流,故没有匹配的流表。交换机Switch1会将该流的信息(源、目的IP地址,端口等)提取组成PacketIn消息发往控制器Controller;

3)控制器Controller根据交换机Switch1发送的PacketIn消息获取该数据流的包头等信息;

4)控制器Controller根据包头的源、目的IP地址判断通信双方主机在一个OpenFlow域内(图中可知主机所连的交换机均与控制器Controller相连);

5)控制器Controller根据主机的源、目的IP地址(即r1和r2)从路由引擎获取源、目的主机之间的路由,本例中按最短路由策略获取到路由为H1—Switch1—Switch2—Switch3—Switch4—H2;

6)控制器Controller根据交换机数量生成随机IP地址列表,本例路由上共4台交换机,故列表共有3项内容,图2中随机IP地址列表中可看出随机IP地址分别为v1-v6;

7)控制器Controller向Switch1、Switch2、Switch3、Switch4分别下发流表。各个交换机下发的流表内容如下:

a)交换机Switch1下发流表Match项为匹配源IP地址为r1、目的IP地址为r2的数据流,Actions项为执行修改源地址为v1、目的地址为v2,并向与Switch2连接的端口转发的动作;

b)交换机Switch2下发流表Match项为匹配源IP地址为v1、目的IP地址为v2的数据流,Actions项为执行修改源地址为v3、目的地址为v4,并向与Switch3连接的端口转发的动作;

c)交换机Switch3下发流表Match项为匹配源IP地址为v3、目的IP地址为v4的数据流,Actions项为执行修改源地址为v5、目的地址为v6,并向与Switch4连接的端口转发的动作;

d)交换机Switch4下发流表Match项为匹配源IP地址为v5、目的IP地址为v6的数据流,Actions项为执行修改源地址为r1、目的地址为r2,并向与主机H2连接的端口转发的动作;

8)流表下发之后,路由上各个交换机根据流表对该数据流执行相应动作,以致图2中所示数据包经过每一跳交换机之后,源、目的IP(图中为SrcIP、DstIP)均会发生变化,达到IP地址发生跳变的功能。

本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1