主机标识追溯方法及系统、终端、中心服务器转让专利

申请号 : CN201210148900.1

文献号 : CN102685133B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 朱田田野马迪

申请人 : 中国科学院计算机网络信息中心

摘要 :

本发明提供主机标识追溯方法及系统、终端、中心服务器,方法包括:终端接收数据包,确定数据包中包含高危标识和摘要信息,高危标识和摘要信息为中心服务器在探测到数据包的发送主机的主机标识元组数据,验证主机标识元组数据为高危之后插入数据包的,发送主机的主机标识元组数据包括发送主机的物理地址、IP地址、连接的交换机端口号;向中心服务器发送查询请求,查询请求包括摘要信息,以使中心服务器查询摘要存储数据库获取与摘要信息匹配的物理地址、根据物理地址查询主机标识元组数据库、获取与物理地址匹配的主机标识元组数据;接收中心服务器返回的查询结果,查询结果中包含主机标识元组数据;解决了现有异构网络中IP地址追溯难的问题。

权利要求 :

1.一种主机标识追溯方法,其特征在于,包括:

终端接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述主机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址和连接的交换机端口号;

向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据;

接收所述中心服务器返回的查询结果,所述查询结果中包含有所述匹配的主机标识元组数据。

2.根据权利要求1所述的方法,其特征在于,所述确定所述数据包中包含有高危标识和摘要信息具体包括:若所述数据包为IPV4数据包,则查询所述数据包的包头选项,确定所述数据包的包头选项中包含有高危标识和摘要信息;

若所述数据包为IPV6数据包,则查询所述数据包的扩展包头选项,确定所述数据包的扩展包头选项中包含有高危标识和摘要信息。

3.一种终端,其特征在于,包括:

第一获取模块,用于接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述主机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址和连接的交换机端口号;

收发模块,用于向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据;接收所述中心服务器返回的查询结果,所述查询结果中包含有所述物理地址匹配的主机标识元组数据。

4.根据权利要求3所述的终端,其特征在于,所述第一获取模块,具体用于若所述数据包为IPV4数据包,则查询所述数据包的包头选项,确定所述数据包的包头选项中包含有高危标识和摘要信息;若所述数据包为IPV6数据包,则查询所述数据包的扩展包头选项,确定所述数据包的扩展包头选项中包含有高危标识和摘要信息。

5.一种主机标识追溯方法,其特征在于,包括:

中心服务器接收终端发送的查询请求,所述查询请求包括摘要信息;

查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;

根据所述物理地址查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号;

向所述终端发送查询结果,所述查询结果中包含有所述匹配的主机标识元组数据;

所述中心服务器接收终端发送的查询请求之前包括:

所述中心服务器接收数据包;

探测所述数据包的发送主机的主机标识元组数据,所述发送主机的主机标识元组数据包括发送主机的物理地址、IP地址和连接的交换机端口号;

验证所述发送主机的主机标识元组数据,若确定所述发送主机的主机标识元组数据是高危的,则生成所述数据包的摘要信息;

将所述数据包的摘要信息与所述发送主机的物理地址绑定后,储存到所述数据包的外部数据结构中,并将储存有所述数据包的摘要信息和所述发送主机的物理地址的外部数据结构保存到所述摘要存储数据库中;

在所述数据包中添加高危标识和所述数据包的摘要信息,并转发所述数据包。

6.根据权利要求5所述的方法,其特征在于,所述在所述数据包中添加高危标识和所述数据包的摘要信息具体包括:若所述数据包为IPV4数据包,则在所述数据包的包头选项中添加高危标识和所述数据包的摘要信息;

若所述数据包为IPV6数据包,则在所述数据包的扩展包头选项中添加高危标识和所述数据包的摘要信息;

所述中心服务器验证所述发送主机的主机标识元组数据具体包括:

所述中心服务器根据所述发送主机的物理地址,查询所述主机标识元组数据库,若查询不到与所述发送主机的物理地址匹配的主机标识元组数据,则确定所述发送主机的主机标识元组数据是高危的;

所述验证所述发送主机的主机标识元组数据具体还包括:

所述中心服务器根据所述发送主机的物理地址,查询所述主机标识元组数据库,获取到与所述发送主机的物理地址匹配的主机标识元组数据;

若所述匹配的主机标识元组数据中的IP地址与所述发送主机的IP地址不同,或者,所述匹配的主机标识元组数据中的交换机端口号与所述发送主机连接的交换机端口号不同,则确定所述发送主机的主机标识元组数据是高危的;

所述中心服务器验证所述发送主机的所述主机标识元组数据具体还包括:所述中心服务器根据所述发送主机连接的交换机端口号,查询所述主机标识元组数据库,获取与所述发送主机连接的交换机端口号匹配的主机标识元组数据;

若所述匹配的主机标识元组数据中的物理地址,与所述发送主机的物理地址不同,则确定所述发送主机的主机标识元组数据是高危的;

若所述主机标识元组数据中还包括第一指针信息,所述第一指针信息表示所述主机标识元组数据为正常;则所述确定所述发送主机的主机标识元组数据是高危之后还包括:所述中心服务器将所述发送主机的主机标识元组数据的第一指针信息修改为第二指针信息,所述第二指针信息表示所述主机标识元组数据为高危,且指向储存有所述数据包的摘要信息与所述发送主机的物理地址的外部数据结构;

将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中;

若所述主机标识元组数据中还包括生存期值,则将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中之后还包括:所述中心服务器根据系统当前时间,将所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值递增或递减;

若所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值等于预设的生存期阈值,则将所述发送主机的主机标识元组数据中的第二指针信息修改为第一指针信息。

7.一种中心服务器,其特征在于,包括:

接收模块,用于接收终端发送的查询请求,所述查询请求包括摘要信息;

第二获取模块,用于查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号;

发送模块,用于向所述终端发送查询结果,所述查询结果中包含有与所述匹配的主机标识元组数据;

探测模块,用于接收数据包;探测所述数据包的发送主机的主机标识元组数据,所述发送主机的主机标识元组数据包括发送主机的物理地址、IP地址和连接的交换机端口号;

验证模块,用于验证所述发送主机的主机标识元组数据,若确定所述发送主机的主机标识元组数据是高危的,则生成所述数据包的摘要信息;

第一储存模块,用于将所述数据包的摘要信息与所述发送主机的物理地址绑定后,储存到所述数据包的外部数据结构中,并将储存有所述数据包的摘要信息和所述发送主机的物理地址的外部数据结构保存到所述摘要存储数据库中;

添加模块,用于在所述数据包中添加高危标识和所述数据包的摘要信息,并转发所述数据包。

8.根据权利要求7所述的中心服务器,其特征在于,还包括:

所述添加模块,具体用于若所述数据包为IPV4数据包,则在所述数据包的包头选项中添加高危标识和所述数据包的摘要信息;若所述数据包为IPV6数据包,则在所述数据包的扩展包头选项中添加高危标识和所述数据包的摘要信息;

所述验证模块具体包括:

第一查询单元,用于根据所述发送主机的物理地址,查询所述主机标识元组数据库;

第一确定单元,用于若查询不到与所述发送主机的物理地址匹配的主机标识元组数据,则确定所述发送主机的主机标识元组数据是高危的;

所述第一查询单元,还用于根据所述发送主机的物理地址,查询所述主机标识元组数据库,获取到与所述发送主机的物理地址匹配的主机标识元组数据;

所述验证模块具体还包括:

第二确定单元,用于若所述匹配的主机标识元组数据中的IP地址与所述发送主机的IP地址不同,或者,所述匹配的主机标识元组数据中的交换机端口号与所述发送主机连接的交换机端口号不同,则确定所述发送主机的主机标识元组数据是高危的;

所述验证模块具体还包括:

第二查询单元,用于根据所述发送主机连接的交换机端口号,查询所述主机标识元组数据库,获取与所述发送主机连接的交换机端口号匹配的主机标识元组数据;

第三确定单元,用于若所述匹配的主机标识元组数据中的物理地址,与所述发送主机的物理地址不同,则确定所述发送主机的主机标识元组数据是高危的;

若所述主机标识元组数据中还包括第一指针信息,所述第一指针信息表示所述主机标识元组数据为正常;

所述中心服务器还包括:

修改模块,用于将所述发送主机的主机标识元组数据的第一指针信息修改为第二指针信息,所述第二指针信息表示所述主机标识元组数据为高危,且指向储存有所述数据包的摘要信息与所述发送主机的物理地址的外部数据结构;

第二储存模块,用于将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中;

若所述主机标识元组数据中还包括生存期值,所述中心服务器还包括:检测模块,用于根据系统当前时间,将所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值递增或递减;

所述修改模块,还用于若所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值等于预设的生存期阈值,则将所述发送主机的主机标识元组数据中的第二指针信息修改为第一指针信息。

9.一种主机标识追溯系统,其特征在于,包括:终端和中心服务器;

所述终端为如权利要求3-4中任一项所述的终端;

所述中心服务器为权利要求7-8中任一项所述的中心服务器。

说明书 :

主机标识追溯方法及系统、终端、中心服务器

技术领域

[0001] 本发明涉及网络技术,尤其涉及一种主机标识追溯方法及系统、终端、中心服务器。

背景技术

[0002] 互联网是信息社会重要的基础设施,关系到经济民生及社会发展的各个方面,然而当前互联网中的安全事件越来越多,各种恶意攻击和破坏行为层出不穷,给网络用户和网络运营商造成了巨大的损失,网络安全问题日益突出。
[0003] IP追溯技术是指攻击进行中或攻击结束后,通过各种技术获取相关路由器的IP地址信息,分析获取的信息,追溯到发送攻击数据包的源头。IP追溯技术能在一定程度和范围内追溯到攻击源头,威慑攻击者,从源头上遏制网络攻击行为,降低网络攻击的危害程度,是网络安全中一个重要的研究领域。
[0004] 随着互联网用户数量的增长和应用增多,IPv4地址数量已不能满足其增长需要,同时IPv4的缺陷也逐渐暴露,而IPv6在路由机制、自动配置和安全等方面进行了改进,是一种比较理想的IP协议。然而,IPv6的过渡并不是一蹴而就的,不仅需要解决大量的技术问题,更需要从网络建设,业务开发以及网站的升级等多方面进行,从而加快其过渡,在IPv4完全过渡到IPv6之前,IPv4和IPv6两种协议将长期存在。
[0005] 目前,比较流行的是采用IPv6翻译机制实现IPv4和IPv6混合网络的互联互通。图1为现有技术提供的IPv6翻译机制的应用场景示意图,如图1所示,PCA位于IPv6网络中,PCB位于IPv4网络中,IPv6翻译机制处于IPv6和IPv4网络的交界处,通过IPv6翻译机制,PCA能够确定自身的IPv6地址和转换后的IPv4地址,PCB能够确定自身的IPv4地址与映射的IPv6地址,同时,还将IPv6数据包中的每个字段与IPv4数据包中的每个字段建立起一一映射的关系,从而在两个网络的边缘实现数据报文的转换。
[0006] 然而,在将IPv6数据包中的每个字段与IPv4数据包中的每个字段建立起映射关系时,需要转换数据包的IP包头,由此带来的问题是破坏了IPv6网络和IPv4网络通信的端到端透明性,增加了IP地址追溯的难度,影响了网络管理的安全性。

发明内容

[0007] 本发明提供一种主机标识追溯方法及系统、终端、中心服务器,能够解决在现有的IPv4和IPv6混合网络中存在IP地址追溯较难的问题。
[0008] 本发明的第一个方面是提供一种主机标识追溯方法,包括:
[0009] 终端接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址、连接的交换机端口号;
[0010] 向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据;
[0011] 接收所述中心服务器返回的查询结果,所述查询结果中包含有所述匹配的主机标识元组数据。
[0012] 本发明的另一个方面是提供一种终端,包括:
[0013] 第一获取模块,用于接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址、连接的交换机端口号;
[0014] 收发模块,用于向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据;接收所述中心服务器返回的查询结果,所述查询结果中包含有所述物理地址匹配的主机标识元组数据。
[0015] 本发明的又一个方面是提供一种主机标识追溯方法,包括:
[0016] 中心服务器接收终端发送的查询请求,所述查询请求包括摘要信息;
[0017] 查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;
[0018] 根据所述物理地址查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号;
[0019] 向所述终端发送查询结果,所述查询结果中包含有所述匹配的主机标识元组数据。
[0020] 本发明的又一个方面是提供一种中心服务器,包括:
[0021] 接收模块,用于接收终端发送的查询请求,所述查询请求包括摘要信息;
[0022] 第二获取模块,用于查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号;
[0023] 发送模块,用于向所述终端发送查询结果,所述查询结果中包含有与所述匹配的主机标识元组数据。
[0024] 本发明的又一个方面是提供一种主机标识追溯系统,包括:终端和中心服务器;
[0025] 所述终端为上述终端;
[0026] 所述中心服务器为上述中心服务器。
[0027] 本发明实施例通过终端向中心服务器发送包含摘要信息的查询请求,中心服务器根据所述摘要信息,查询摘要存储数据库,获取与所述摘要信息匹配的物理地址,根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括所述数据包的发送主机的物理地址、IP地址、连接的交换机端口号,并将获取的主机标识元组数据发送给终端,从而使得终端可以根据中心服务器返回的主机标识元组数据对发送数据包的IP地址进行追溯,不仅能够解决现有的IPv4和IPv6异构网络中存在IP地址追溯较难的问题,而且提高了网络管理的安全性。

附图说明

[0028] 图1为现有技术提供的IPv6翻译机制的应用场景示意图;
[0029] 图2为本发明实施例一提供的主机标识追溯方法的流程示意图;
[0030] 图3为本发明实施例二提供的终端的结构示意图;
[0031] 图4为本发明实施例三提供的主机标识追溯方法的流程示意图;
[0032] 图5为本发明实施例四提供的中心服务器的结构示意图;
[0033] 图6为本发明实施例五提供的主机标识追溯系统的结构示意图。

具体实施方式

[0034] 图2为本发明实施例一提供的主机标识追溯方法的流程示意图;如图2所示,所述方法包括:
[0035] 步骤201、终端接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址、连接的交换机端口号。
[0036] 举例来说,假设终端位于IPV4网络,IPV4网络的边界路由器接收来自IPV6网络中的IPv6数据包,将IPv6数据包转换为IPv4数据包,在转换之前检查IPv6数据包的扩展包头,如果存在高危标识和摘要信息,则将该摘要信息记录在转换后的IPv4数据包的包头选项字段,并将IPv4数据包的服务类型的第8位置1(默认置0),标记该IPv4数据包是高危IPv6数据包转换的。
[0037] 表1是IPv4数据包的包头结构:
[0038]
[0039] 对应地,终端查询该IPv4数据包的包头选项,若确定所述选项中包含有高危标识和摘要信息,则获取所述摘要信息。
[0040] 举例来说,假设终端位于IPV6网络,IPV6网络的边界路由器接收来自IPV4网络中的IPv4数据包,将IPv4数据包转换为IPv6数据包,在转换之前检查IPv4数据包的服务类型的第8位置是否置1,若是,则该IPv4数据包是高危,提取IPv4数据包的包头选项中的摘要信息,将该摘要信息记录在转换后的IPv6数据包的扩展包头选项中。
[0041] 表2是IPv6数据包的扩展包头结构:
[0042]
[0043] 表3为IPv6数据包的包头结构:
[0044]
[0045] 对应地,终端查询该IPv6数据包的扩展包头选项,若确定所述扩展包头选项中包含有摘要信息,则获取所述摘要信息。
[0046] 步骤202、向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据。
[0047] 举例来说,终端可以向中心服务器发送查询请求,该查询请求为追溯所述数据包的发送主机的主机标识元组数据的查询请求,其中,查询请求中包括获取的摘要信息,中心服务器器根据要信息,查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,其中,所述主机标识元组数据包括发送所述数据包的物理地址、IP地址、交换机端口号。
[0048] 步骤203、接收所述中心服务器返回的查询结果,所述查询结果中包含有所述匹配的主机标识元组数据。
[0049] 本发明实施例通过终端向中心服务器发送包含摘要信息的查询请求,中心服务器根据所述摘要信息,查询摘要存储数据库,获取与所述摘要信息匹配的物理地址,根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括发送所述数据包的物理地址、IP地址、交换机端口号,并将获取的主机标识元组数据发送给终端,从而使得终端可以根据中心服务器返回的主机标识元组数据对发送数据包的IP地址进行追溯,不仅能够解决现有的IPv4和IPv6混合网络中存在IP地址追溯较难的问题,而且提高了网络管理的安全性。
[0050] 图3为本发明实施例二提供的终端的结构示意图;如图3所示,具体包括:
[0051] 第一获取模块31,用于接收数据包,确定所述数据包中包含有高危标识和摘要信息,所述高危标识和摘要信息为中心服务器在探测到所述数据包的发送主机的主机标识元组数据,且验证所述机标识元组数据为高危之后插入所述数据包的,所述发送主机的主机标识元组数据包括所述发送主机的物理地址、IP地址、连接的交换机端口号;
[0052] 收发模块32,用于向中心服务器发送查询请求,所述查询请求包括所述摘要信息,以使所述中心服务器查询摘要存储数据库获取与所述摘要信息匹配的物理地址、根据所述物理地址查询主机标识元组数据库、获取与所述物理地址匹配的主机标识元组数据,所述摘要存储数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的物理地址和摘要信息,所述主机标识元组数据库包括所述中心服务器探测到的且验证为高危的数据包的发送主机的主机标识元组数据;接收所述中心服务器返回的查询结果,所述查询结果中包含有所述物理地址匹配的主机标识元组数据。
[0053] 举例来说,第一获取模块31,具体用于若所述数据包为IPV4数据包,则查询所述数据包的包头选项,若确定所述选项中包含有所述摘要信息,则获取所述摘要信息;若所述数据包为IPV4数据包,则查询所述数据包的扩展包头选项,若确定所述扩展包头选项中包含摘要信息,则获取所述摘要信息。
[0054] 本实施例所述的终端可以执行图2所示方法实施例中所述的方法,其实现的原理和技术效果不再赘述。
[0055] 图4为本发明实施例三提供的主机标识追溯方法的流程示意图;如图4所示,包括:
[0056] 步骤401、中心服务器接收终端发送的查询请求,所述查询请求包括摘要信息。
[0057] 举例来说,中心服务器在接收查询请求之前,通过网络探测器和简单网络管理协议,周期性地从交换机处接收数据包,并探测该数据包的发送主机的主机标识元组数据,举例来说,中心服务器可以从网络探测器中记录发送该数据包的IP地址,或者从路由器的邻居表中获取发送该数据包的IP地址;举例来说,中心服务器还可以从路由器的邻居表中获取发送该数据包的物理地址;举例来说,中心服务器还可以从交换机的转发表(Forwarding Database,简称FDB)中获取该发送主机连接的交换机端口号。
[0058] 举例来说,中心服务器还可以将获取的发送主机的IP地址、物理地址、连接的交换机端口号作为该发送主机的主机标识元组数据,并将该发送主机的主机标识元组数据保存到中心服务器本地的主机标识元组数据库中。
[0059] 进一步举例来说,中心服务器在将所述发送主机的主机标识元组数据保存到中心服务器本地的主机标识元组数据库中之前,对所述发送主机的主机标识元组数据进行验证,即验证所述发送主机的主机标识元组数据是否是高危的,具体包括:
[0060] 根据所述发送主机的物理地址,查询主机标识元组数据库,若查询不到与所述物理地址对应的主机标识元组数据,则确定所述发送主机的主机标识元组数据是高危的。举例来说,一台主机对应一个物理地址,若主机标识元组数据中IP地址或者交换机端口号第一次分配给新的主机使用,或者该物理地址是被用户善意或者恶意伪造的,因此,主机标识元组数据库中没有与该物理地址对应的主机标识元组数据。
[0061] 根据所述发送主机的物理地址,查询主机标识元组数据库,获取到与所述物理地址匹配的主机标识元组数据,也就是说,发送该数据包的主机不是新的主机,中心服务器已经将与所述该物理地址匹配的主机标识元组数据保存主机标识元组数据库;
[0062] 若主机标识元组数据库中保存的与所述物理地址匹配的主机标识元组数据中的IP地址,与所述发送主机的IP地址不同,则确定所述发送主机的主机标识元组数据是高危的;
[0063] 若主机标识元组数据库中保存的与所述物理地址匹配的主机标识元组数据中的交换机端口号,与所述发送主机连接的交换机端口号不同,则确定所述发送主机的主机标识元组数据是高危的;
[0064] 若主机标识元组数据库中保存的与所述物理地址匹配的主机标识元组数据中的IP地址、交换机端口号,与所述发送主机的IP地址、连接的交换机端口号相同,则确定所述发送主机的主机标识元组数据是正常的。
[0065] 举例来说,中心服务器验证该主机标识元组数据具体还包括:
[0066] 根据所述发送主机连接的交换机端口号,查询主机标识元组数据库,获取与所述交换机端口号匹配的主机标识元组数据;若主机标识元组数据库中保存的与所述交换机端口号匹配的主机标识元组数据中的物理地址,与所述发送主机的物理地址不同,则确定所述发送主机的主机标识元组数据是高危的。
[0067] 进一步举例来说,若所述发送主机的主机标识元组数据是高危的,则生成该数据包的高危标识和摘要信息。假设该高危数据包的格式为IPV6数据包,采用40字节的IPv6数据包的包头和有效载荷的前20字节计算生成该数据包的摘要信息,本发明实施例可以采用Hash算法(如SHA-1算法)生成该高危IPv6数据包的摘要信息;
[0068] 进一步举例来说,可以将生成的160位摘要信息与发送主机的物理地址绑定后存储到该数据包的外部数据结构中,其中,160位摘要信息储存在该数据包的外部数据结构中的包数据(Packet data)字段中;表4为储存该数据包的摘要信息和发送主机的物理地址的外部数据结构。
[0069] 表4:
[0070]物理地址 包数据(Packet data)
[0071] 进一步举例来说,中心服务器可以将储存该数据包的摘要信息与发送主机的物理地址的外部数据结构保存到摘要储存数据库中。
[0072] 进一步举例来说,本实施例采用的主机标识元组数据中还包括指针信息,其中,所述指针信息包括第一指针信息和第二指针信息,所述第一指针信息表示所述主机标识元组数据为正常,所述第二指针信息表示所述主机标识元组数据为高危,本实施例采用的主机标识元组数据在验证之前默认为是正常的,即本实施例采用的主机标识元组数据中的指针信息默认为是第一指针信息;
[0073] 对应地,在确定所述发送主机的主机标识元组数据是高危之后,中心服务器可以将所述发送主机的主机标识元组数据的第一指针信息修改为第二指针信息,所述第二指针信息表示所述主机标识元组数据为高危,且指向储存有所述数据包的摘要信息与所述发送主机的物理地址的外部数据结构;
[0074] 进一步举例来说,中心服务器将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中;
[0075] 进一步举例来说,本实施例采用的主机标识元组数据中还包括生存期值,在将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中之后,中心服务器根据系统当前时间,可以将所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值递增或递减;若所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值等于预设的生存期阈值,则将所述发送主机的主机标识元组数据中的第二指针信息修改为第一指针信息;表5为本实施例采用的主机标识元组数据结构。
[0076] 表5:
[0077]IP地址 物理地址 交换机端口号 指针信息 生存期值
[0078] 进一步举例来说,中心服务器可以将生成的摘要信息添加到该数据包中,中心服务器也可以在该数据包中添加高危标识,具体包括:
[0079] 若该数据包格式为IPv4数据包,则将高危标识和摘要信息添加到该数据包的包头选项中;
[0080] 若该数据包格式为IPv6数据包,则将高危标识和摘要信息添加到该数据包的扩展包头选项中。
[0081] 步骤402、查询摘要存储数据库,获取与所述摘要信息匹配的物理地址。
[0082] 中心服务器根据接收的摘要信息,查询摘要存储数据库,获取与所述摘要信息匹配的物理地址。
[0083] 步骤403、根据所述物理地址查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号。
[0084] 举例来说,中心服务器根据所述物理地址,查询主机标识元组数据库,若主机标识元组数据库存在多个与所述物理地址匹配的主机标识元组数据,则获取多个与所述物理地址匹配的主机标识元组数据。
[0085] 步骤404、向所述终端发送查询结果,所述查询结果中包含有所述匹配的主机标识元组数据。
[0086] 对应地,若中心服务器获取到多个与所述物理地址匹配的主机标识元组数据,则将多个与所述物理地址匹配的主机标识元组数据都发送给终端。
[0087] 本发明实施例的中心服务器通过接收终端发送的包含摘要信息的查询请求,查询摘要信息数据库,获取与该摘要信息匹配的物理地址,通过查询主机标识元组数据库,获取与该物理地址匹配的主机标识元组数据,并将获取的主机标识元组数据发送给终端,从而使得终端可以根据中心服务器返回的主机标识元组数据对发送数据包的IP地址进行追溯,不仅能够解决现有的IPv4和IPv6异构网络中存在IP地址追溯较难的问题,而且提高了网络管理的安全性。
[0088] 图5为本发明实施例四提供的中心服务器的结构示意图;如图5所示,包括:
[0089] 接收模块51,用于接收模块,用于接收终端发送的查询请求,所述查询请求包括摘要信息;
[0090] 第二获取模块52,用于查询摘要存储数据库,获取与所述摘要信息匹配的物理地址;根据所述物理地址,查询主机标识元组数据库,获取与所述物理地址匹配的主机标识元组数据,所述主机标识元组数据包括主机的物理地址、IP地址和所述主机连接的交换机端口号;
[0091] 发送模块53,用于向所述终端发送查询结果,所述查询结果中包含有与所述匹配的主机标识元组数据。
[0092] 所述中心服务器,举例来说,还包括:
[0093] 探测模块54,用于接收数据包,探测所述数据包的发送主机的主机标识元组数据,所述发送主机的主机标识元组数据包括发送主机的物理地址、IP地址、连接的交换机端口号;
[0094] 验证模块55,用于验证所述发送主机的主机标识元组数据,若确定所述发送主机的主机标识元组数据是高危的,则生成所述数据包的摘要信息;
[0095] 第一储存模块56,用于将所述数据包的摘要信息与所述发送主机的物理地址绑定后,储存到所述数据包的外部数据结构中,并将储存有所述数据包的摘要信息和所述发送主机的物理地址的外部数据结构保存到所述摘要存储数据库中;
[0096] 添加模块57,用于在所述数据包中添加高危标识和所述数据包的摘要信息,并转发所述数据包。
[0097] 举例来说,添加模块57,具体用于若所述数据包为IPV4数据包,则在所述数据包的包头选项中添加高危标识和所述数据包的摘要信息;若所述数据包为IPV6数据包,则在所述数据包的扩展包头选项中添加高危标识和所述数据包的摘要信息。
[0098] 举例来说,验证模块55具体包括:
[0099] 第一查询单元,用于根据所述发送主机的物理地址,查询所述主机标识元组数据库;
[0100] 第一确定单元,用于若查询不到与所述发送主机的物理地址匹配的主机标识元组数据,则确定所述发送主机的主机标识元组数据是高危的。
[0101] 举例来说,第一查询单元,还用于根据所述发送主机的物理地址,,查询所述主机标识元组数据库,获取到与所述发送主机的物理地址匹配的主机标识元组数据;
[0102] 举例来说,验证模块55具体还包括:
[0103] 第二确定单元,用于若所述匹配的主机标识元组数据中的IP地址与所述发送主机的IP地址不同,或者,所述匹配的主机标识元组数据中的交换机端口号与所述发送主机连接的交换机端口号不同,则确定所述发送主机的主机标识元组数据是高危的。
[0104] 举例来说,验证模块55具体还包括:
[0105] 第二查询单元,用于根据所述发送主机连接的交换机端口号,查询所述主机标识元组数据库,获取与所述发送主机连接的交换机端口号匹配的主机标识元组数据;
[0106] 第三确定单元,用于若所述匹配的主机标识元组数据中的物理地址,与所述发送主机的物理地址不同,则确定所述发送主机的主机标识元组数据是高危的。
[0107] 举例来说,若本实施例所述主机标识元组数据中还包括第一指针信息,所述第一指针信息表示所述主机标识元组数据为正常;
[0108] 所述中心服务器还包括:
[0109] 修改模块58,用于将所述发送主机的主机标识元组数据的第一指针信息修改为第二指针信息,所述第二指针信息表示所述主机标识元组数据为高危,且指向储存有所述数据包的摘要信息与所述发送主机的物理地址的外部数据结构;
[0110] 第二储存模块59,用于将修改为第二指针信息后的所述发送主机的主机标识元组数据保存到所述主机标识元组数据库中;
[0111] 举例来说,若本实施例所述主机标识元组数据中还包括生存期值,所述中心服务器还包括:
[0112] 检测模块50,用于根据系统当前时间,将所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值递增或递减;
[0113] 举例来说,修改模块58,还用于若所述主机标识元组数据库中保存的所述发送主机的主机标识元组数据中的生存期值等于预设的生存期阈值,则将所述发送主机的主机标识元组数据中的第二指针信息修改为第一指针信息。
[0114] 本实施例所述的中心服务器可以执行图4所示方法实施例中所述的方法,其实现的原理和技术效果不再赘述。
[0115] 图6为本发明实施例五提供的主机标识追溯系统的结构示意图,包括:终端61和中心服务器62;
[0116] 其中,终端61为图3所示实施例所述的终端;
[0117] 中心服务器62为图5所示实施例所述的中心服务器。
[0118] 本实施例所述系统可以执行图2或图4所示方法实施例中所述的方法,其实现的原理和技术效果不再赘述。
[0119] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0120] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。