CN102316176A - 数据包处理和溯源方法、装置及系统 - Google Patents
数据包处理和溯源方法、装置及系统 Download PDFInfo
- Publication number
- CN102316176A CN102316176A CN201110212609A CN201110212609A CN102316176A CN 102316176 A CN102316176 A CN 102316176A CN 201110212609 A CN201110212609 A CN 201110212609A CN 201110212609 A CN201110212609 A CN 201110212609A CN 102316176 A CN102316176 A CN 102316176A
- Authority
- CN
- China
- Prior art keywords
- address
- packet
- source address
- level
- level source
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4637—Interconnected ring systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/437—Ring fault isolation or reconfiguration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供一种数据包处理和溯源方法、装置及系统。数据包处理方法包括:接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址,生成包含所述N级源地址和N-1级源地址的第二数据包;发送所述第二数据包。本发明通过在地址转换时将转换前的地址存放在数据包里,溯源时能够直接从数据包中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
Description
技术领域
本发明涉及通信技术领域,尤其是一种数据包处理和溯源方法、装置及系统。
背景技术
网络地址转换(Network Address Translation,以下简称NAT)是将一个网络中使用的IP地址转换为另一个网络中已知的不同IP地址的过程。内部网络用户连接互联网时,NAT设备将用户的内部IP地址转换成一个外部IP地址,并将这个地址转换记录下来,当数据从外部返回时,NAT设备根据地址转换记录将目标地址,也就是用户的外部IP地址,替换成用户的内部IP地址。
在现有的网络管理中,经常需要对IP地址进行溯源以确定其对应的原始IP地址,进而定位这个IP地址的使用者。NAT技术对原始IP地址的隐藏具体导致了面向IP地址的溯源必须依赖于NAT设备的地址转换记录,也可以称为地址转换日志。但由于NAT设备中地址的转换一般是动态完成的,因此地址转换记录的增长非常迅速,很多NAT设备仅能维护较短时间的地址转换记录。在网络管理的溯源过程中,经常需要查询之前某段时间的地址转换记录,而这些地址转换记录已经在NAT设备中删除了,导致溯源失败。因此,通过NAT设备之中存储的地址转换记录来实现IP地址溯源的方法在实践中经常溯源失败,使得网络管理非常困难。
发明内容
本发明提供一种数据包处理和溯源的方法、装置及系统,用于解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
本发明提供了一种数据包处理方法,包括:
接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址,生成包含所述N级源地址和N-1级源地址的第二数据包;
发送所述第二数据包。
本发明提供了一种数据包溯源方法,包括:
接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,N为正整数;
确定所述N级源地址对应的接入网;
查询地址分配设备中与所述接入网对应的地址分配记录。确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
本发明提供了一种数据包处理装置,包括:
第一接收单元,用于接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
地址转换单元,用于根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
数据包生成单元,用于生成包含所述N级源地址和N-1级源地址的第二数据包;
发送单元,用于发送所述第二数据包。
本发明提供了一种数据包溯源装置,包括:
第二接收单元,用于接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,N为正整数;
接入网确定单元,用于确定所述N级源地址对应的接入网;
查询单元,用于查询地址分配设备中与所述接入网对应的地址分配记录。确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
溯源单元,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
本发明还提供了一种溯源系统,包括:
地址分配设备,用于分配地址,并存储地址分配记录;与地址分配设备连接的NAT设备和溯源设备;
所述NAT设备包括如上所述的数据包处理装置;
所述溯源设备包括如上所述的数据包溯源装置。
本发明通过地址转换时将转换前的地址存放在数据包里,使得溯源时能够直接从数据包中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种应用场景示意图。
图2是本发明提供的一种数据包处理方法实施例一的流程图。
图3a是本发明提供的一种数据包处理方法实施例二的流程图。
图3b是IPv4数据包的包头格式图。
图3c是IPv6数据包的格式图。
图4是本发明提供的一种数据包溯源方法实施例一的流程图。
图5是本发明提供的一种数据包溯源方法实施例二的流程图。
图6是本发明提供的一种数据包溯源方法实施例三的流程图。
图7是本发明提供的一种数据包处理装置实施例一的结构示意图。
图8是本发明提供的一种数据包处理装置实施例二的结构示意图。
图9是本发明提供的一种数据包溯源装置实施例一的结构示意图。
图10是本发明提供的一种数据包溯源装置实施例二的结构示意图。
图11是本发明提供的一种溯源系统实施例的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明的一种应用场景示意图。如图1所示,主机在分配到地址10.1.5.1之后,经过两次地址转换,源地址最终变为192.168.2.5。在每次地址转换中,NAT设备将转换前的地址也放置在IP数据包中。因此,最终的数据包中包含了每次地址转换的记录。每一个NAT设备代表了一个接入网的层次,每个层次对其下游的NAT设备的地址池配置进行了规划。例如,NAT设备A上配置的地址池为172.16/16,另一个和NAT设备A处于同一层次的NAT设备维护的地址池可能为172.15/16。一个NAT设备代表了一个接入子网。
如图1所示,溯源过程中,首先根据源地址192.168.2.5定位到数据发送者的接入网,然后根据该接入网的地址池配置记录定位到NAT设备B,也即定位到了NAT设备B管理的接入子网;然后根据上一级地址转换记录(172.16.55.6)和NAT设备B所对应的接入子网的地址池配置记录定位到NAT设备A,也即定位到了NAT设备A管理的接入子网;至此,溯源流程就直接面向原始的IP地址了,根据NAT设备A所对应接入子网的地址分配记录,就可以获得10.1.5.1在特定时间段的分配对象。
图2是本发明提供的一种数据包处理方法实施例一的流程图,如图2所示,本实施例的方法可以包括:
步骤201、接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
若该第一数据包之前未经过地址转换,则N=1,N-1级源地址即数据包发送者的初始源地址。另外,N-1级源地址通常是在数据包包头的源地址字段中。
步骤202、根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
这里预设的地址转换规则具体可以是转换前后地址的映射关系,比如[A,B]区间的N-1级源地址转换为N级源地址a,[C,D]区间的N-1级源地址转换为N级源地址b,等。地址转换规则可以是管理员手工设定的,也可以是根据地址分配设备的指令自动设定。
步骤203、生成包含所述N级源地址和N-1级源地址的第二数据包;
第二数据包的包头源地址字段中包含所述N级源地址。所述N-1级源地址可以包含在所述第二数据包的其他位置,当然除了源地址字段以外,所述N级源地址还可以和所述N-1级源地址一起包含在第二数据包的其他位置。
步骤204、发送所述第二数据包。
根据网络环境的不同,第二数据包可以直接发送给了数据包的接收者,也可以发送到下一级NAT设备,再次进行地址转换,本发明实施例对此不作限定。
本发明实施例通过在地址转换时将转换前的地址存放在数据包里,使得溯源时能够直接从数据包中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图3a为发明提供的一种数据包处理法实施例二的流程图,如图3a所示,本实施例的方法可以包括:
步骤301、接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
步骤302、根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
步骤303、生成第二数据包,所述第二数据包的源地址为所述N级源地址;
若所述第二数据包和所述第一数据包遵从的网络协议相同的话,两个数据包相比,就是源地址字段发生了变化。但若所述第二数据包和所述第一数据包遵从的网络协议不同的话,所述第二数据包的格式也会跟所述第一数据包不同,如第二数据包为IPv6数据包而第一数据包为IPv4数据包的情况。但不论协议、格式是否相同,第二数据包和第一数据包的数据载荷部分的内容应该是相同的。
步骤304、判断第二数据包是IPv4数据包还是IPv6数据包,若是IPv4数据包则执行步骤305,若是IPv6数据包则执行步骤306;
由于不同协议数据包的格式不一样,可扩展使用的域也不一样,因此对于不同协议数据包的处理不一样。
步骤305、将所述N-1级源地址包含在所述第二数据包包头的选项字段中,执行步骤307;
IPv4数据包的包头格式如图3b所示,包头中含有一个选项字段,可以用来定义新的选项类型。由于IPv4数据包包头的选项字段最多可以携带40字节的内容,考虑到IPv6地址的长度为16字节,如果最终转换的是一个IPv4地址,那么之前最多可容纳两次IPv6地址的转换记录;而对于IPv4地址,由于其地址长度为4字节,因此对于最终转换地址是IPv4地址的情况,之前可容纳较多的IPv4地址记录。
步骤306、将所述N-1级源地址包含在所述第二数据包的扩展包头中,执行步骤307;
IPv6数据包引入了扩展包头的概念,数据包格式如图3c所示,在数据包的基础包头和数据载荷之间可以有多个扩展包头,用来定义新的包头类型。而IPv6数据包的扩展包头最多可携带2048字节的内容,这样无论是对于IPv4地址和IPv6地址来说,都可以容纳足够多的地址转换前的地址。
步骤307、发送所述第二数据包。
若步骤301中接收到的第一数据包之前已经进行过地址转换,即(N-1)>0,也就是N>=2,那么第一数据包中除了N-1级源地址还可以包含N-2级源地址,甚至N-3级源地址等。对应地,步骤305和306中还需要判断所述第二数据包中是否包含其他源地址,如果有,以包含N-2级源地址为例,则将N-1级源地址和N-2级源地址按照预设顺序存放,否则将所述N-1级源地址存放在预设的位置。若是第二数据包中还有N-3级源地址甚至0级源地址,也是类似的处理。这里预设的顺序可以是越早地址转换前的地址,即越低级别的源地址,放在越前面,比如将N-1级源地址存放在N-2级源地址后面,当然也可以反过来。预设的位置可以是存放空间的最前面,比如在第一个字节起始的位置存放,也可以是存放空间的设定字节起始的位置存放,也可以是存放空间的最后面。实际应用中,通常将第一次地址转换前的源地址即0级源地址,放置在存放空间的最前面,将第二次地址转换前的源地址即1级源地址,存放在第一次地址转换前的源地址后面,将第三次地址转换前的源地址即2级源地址,存放在第二次地址转换前的源地址后面,以此类推;当然反过来也可以。存放位置和存放顺序设定好了,溯源时就可以根据预设的存放位置和存放顺序来依次获取上一次地址转换前的源地址。
在现有的地址转换过程中,可用作转换后的地址通常有多个。对应地,步骤302具体包括:从至少一个目标源地址中选择一个作为所述N级源地址,将所述N-1级源地址转换为N级源地址。这些目标源地址可以是管理员手工设定的,也可以是根据地址分配设备分配的地址自动设定。若是地址分配设备分配的,则本实施例方法还包括:步骤302a、根据地址分配设备分配的所述至少一个目标源地址,设置所述地址转换规则。
本发明实施例通过在地址转换时将转换前的地址放在IPv4数据包的扩展字段或是IPv6数据包的扩展包头里,使得溯源时能够直接从IPv4数据包的扩展字段或是IPv6数据包的扩展包头中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图4是本发明提供的一种数据包溯源方法实施例一的流程图,如图4所示,该方法包括:
步骤401、接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,N为正整数;
通常,N级源地址包含在所述数据包的源地址字段,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,可以包含在所述数据包除源地址字段外的其他位置。
步骤402、确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录,确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级NAT设备;
所述确定所述N级源地址对应的接入网具体包括,确定所述N级源地址确定对应的接入网地址。比如N级源地址为192.168.2.5,假设对应的接入网地址为192.168/16。地址分配设备跟现有技术中一样,负责给用户分配地址,也负责给NAT设备分配目标源地址,并且存储对应的地址分配记录。所述地址分配记录可以以接入网/接入子网地址为索引,查找到与该接入网/接入子网对应的地址分配记录,也叫地址池配置记录。拿上面这个例子来说,查询地址分配设备中与192.168/16对应的地址池配置记录,确定192.168.2.5分配给哪个NAT设备作为目标源地址了,这样就定位到了N级NAT设备。
步骤403、根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
定位到了N级NAT设备后,就可以确定N级NAT设备管理的N级接入子网,这时再根据N级接入子网地址查找地址分配设备中对应的地址分配记录,从中找出N-1级源地址的分配对象。若所述数据包只经过一次地址转换,也就是N=1时,这个N-1级源地址的分配对象就是数据包发送者了。
本发明实施例根据数据包里存放的地址转换前的地址和地址分配设备的地址分配记录,进行地址溯源,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图5是本发明提供的一种数据包溯源方法实施例二的流程图,如图5所示,该方法包括:
步骤501、接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,N为正整数;
步骤502、确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录,确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级NAT设备;
步骤503、判断所述数据包是IPv4数据包还是IPv6数据包,若是IPv4数据包则执行步骤504,若是IPv6数据包则执行步骤505;
步骤504、从所述数据包包头的选项字段中读取所述N-1级源地址,执行步骤506;
步骤505、从所述数据包的扩展包头中读取所述N-1级源地址,执行步骤506;
步骤506、根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象;
若所述数据包经过不止一次地址转换,那么所述数据包中除了N-1级源地址,还包括N-2级源地址,甚至可能还包括N-3级源地址等。当数据包中包含多级地址转换前的地址时,这些地址都是按照预设的顺序存放的,对应地,步骤505中可以在所述数据包中按照预设的存放顺序读取所述N-1级源地址和所述N-2级源地址。
以所述数据包经过两次地址转换、数据包中还包括N-2级源地址为例,步骤506中确定所述N-1级源地址的分配对象具体包括:确定将N-2级源地址转换为N-1级源地址的N-1级NAT设备,执行步骤507。
步骤507、根据N-1级NAT设备对应的N-1级接入子网,查询地址分配设备中与所述N-1级接入子网对应的地址分配记录,确定所述N-2级源地址的分配对象。
若数据包中还包括N-3级源地址等,则按照类似于步骤507的步骤重复,直到找到最初始的源地址的分配对象。
本发明实施例根据IPv4数据包包头选项字段或IPv6数据包扩展包头中存放的地址转换前的地址和地址分配设备的地址分配记录进行地址溯源,无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图6是本发明提供的一种数据包溯源方法实施例三的流程图,如图6所示,该方法包括:
步骤601:接收数据包,该数据包的包头中有N个地址转换前的地址;
N为大于0的自然数,这个N通常等于该数据包进行地址转换的次数,N个地址转换前的地址也就是0级源地址,1级源地址,...,N-1级源地址。
步骤602:根据数据包源地址字段中的N级源地址,定位该N级源地址对应的接入网;
也就是上述实施例中所说的包头源地址字段中的N级源地址,
步骤603:查询地址分配设备中与所述接入网对应的地址分配记录,确定进行N级地址转换的N级NAT设备,确定N级NAT设备对应的N级接入子网;
其中,N级地址转换也就是最后一次地址转换,也就是将包头源地址地段中的地址转换为N级源地址的那次。
步骤604:判断N是否大于1,若大于,执行步骤605,若不大于执行步骤607;
步骤605:读取N-1级源地址,查询地址分配设备中与N级接入子网对应的地址分配记录,确定进行N-1级地址转换的N-1级NAT设备,并确定该N-1级NAT设备对应的N-1级接入子网;
步骤606:令N=N-1,返回步骤604;
步骤607:查询地址分配设备中与1级接入子网对应的地址分配记录,确定1级地址转换前的地址的分配对象。
1级地址转换前的地址也就是0级源地址,即最初始的源地址。
本发明实施例通过数据包中存放的多个地址转换前的地址和地址分配设备中对应多个接入网层次的地址分配记录,进行多级地址溯源,而无需查找多个接入网层次对应的多级NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图7是本发明提供的一种数据包处理装置实施例一的结构示意图,如图7所示,该装置包括:
第一接收单元71,用于接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
地址转换单元72,用于根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
数据包生成单元73,用于生成包含所述N级源地址和N-1级源地址的第二数据包;
发送单元74,用于发送所述第二数据包。
本发明实施例的具体实现参照本发明提供的一种数据包处理方法实施例一。本发明实施例通过在地址转换时将转换前的地址存放在数据包里,使得溯源时能够直接从数据包中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图8是本发明提供的一种数据包处理装置实施例二的结构示意图,如图8所示,该装置包括:
第一接收单元81,用于接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
地址转换单元82,用于根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
数据包生成单元83,用于生成第二数据包,若所述第二数据包是IPv4数据包,则将所述N-1级源地址包含在所述第二数据包包头的选项字段中;若所述第二数据包是IPv6数据包,则将所述N-1级源地址包含在所述第二数据包的扩展包头中;
发送单元84,用于发送所述第二数据包。
优选地,数据包生成单元83具体用于:若N大于等于2,所述第一数据包还包含N-2级源地址,则所述第二数据包中所述N-2级源地址与所述N-1级源地址按预设顺序存放。
优选地,地址转换单元82具体包括:
选择子单元821,用于从至少一个目标源地址中选择一个作为所述N级源地址;
转换子单元822,用于将所述N-1级源地址转换为N级源地址。
优选地,地址转换单元82还包括:
地址接收子单元823,用于接收地址分配设备分配的所述至少一个目标源地址。
本发明实施例的具体实现参照本发明提供的一种数据包处理方法实施例二。本发明实施例通过在地址转换时将转换前的地址放在IPv4数据包的扩展字段或是IPv6数据包的扩展包头里,使得溯源时能够直接从IPv4数据包的扩展字段或是IPv6数据包的扩展包头中找到转换前的地址,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图9是本发明提供的一种数据包溯源装置实施例一的结构示意图,如图9所示,该装置包括:
第二接收单元91,用于接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,N为正整数;
查询单元92,用于确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录。确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
溯源单元93,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
本发明实施例的具体实现可以参照本发明提供的一种数据包溯源方法实施例一。本发明实施例根据数据包里存放的地址转换前的地址和地址分配设备的地址分配记录,进行地址溯源,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图10是本发明提供的一种数据包溯源装置实施例二的结构示意图,如图10所示,该装置包括:
第二接收单元11,用于接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,N为正整数;
查询单元12,用于确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录。确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
溯源单元13,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
溯源单元13具体包括:
地址读取子单元131,用于若所述数据包是IPv4数据包,则从所述数据包包头的选项字段中读取所述N-1级源地址,若所述数据包是IPv6数据包,则从所述数据包的扩展包头中读取所述N-1级源地址;
溯源子单元132,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
优选地,若N大于等于2,所述数据包中还包含N-2级源地址,所述N-2级源地址是所述N-1级源地址进行地址转换前的源地址,溯源子单元132具体用于:确定将所述N-2级源地址转换为所述N-1级源地址的N-1级NAT设备,根据所述N-1级NAT设备对应的N-1级接入子网,查询地址分配设备中与所述N-1级接入子网对应的地址分配记录,确定所述N-2级源地址的分配对象。
优选地,溯源单元132具体用于:在所述数据包中按照预设的存放顺序读取所述N-1级源地址和所述N-2级源地址。
本发明实施例的具体实现参照本发明提供的一种数据包溯源方法实施例二。本发明实施例根据IPv4数据包包头选项字段或IPv6数据包扩展包头中存放的地址转换前的地址和地址分配设备的地址分配记录,进行地址溯源,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
图11是本发明提供的一种溯源系统实施例的结构示意图,如图11所示,该系统包括:
地址分配设备21,用于分配地址,并存储地址分配记录;与地址分配设备连接21的NAT设备22和溯源设备23;
NAT设备22包括如上述任一实施例所述的数据包处理装置;
溯源设备23包括如上述任一实施例所述的数据包溯源装置。
本发明通过地址转换时将转换前的地址存放在数据包里,使得溯源时能够根据从数据包中找到转换前的地址和地址分配设备的地址分配记录进行溯源,而无需查找NAT设备的地址转换记录,解决现有技术中由于NAT设备存储有限,使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
本发明实施例中的地址分配设备和现有技术中的地址分配设备一样,可以给各网络节点分配地址,包括用户和本发明所提供的数据包处理装置,并且在地址分配设备中存储有对应用户和接入网/接入子网的地址分配记录,其中对应于接入网/接入子网的地址分配记录也叫做地址池配置记录。在实际应用中,地址分配设备通常采用分布式架构,可以看成对应每一级接入网/接入子网有一个地址分配实体,该地址分配实体中存储有对应接入网/接入子网的地址池配置记录。为了实现方便,每个地址分配实体还可以跟同一级的数据包处理装置在一个硬件平台上实现,比如集成在NAT设备中。这种情况下,虽然地址分配实体和数据包处理装置共用NAT设备的存储资源,但是由于地址分配实体中的地址分配记录是一种静态的信息,且信息结构很简单,相对于NAT设备的动态的结构复杂的地址转换记录来说,占用存储量极少,因此仍可以解决现有技术中由于NAT设备存储有限,而使得通过NAT设备中存储的地址转换记录来溯源导致溯源失败的问题。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (19)
1.一种数据包处理方法,其特征在于,包括:
接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
生成包含所述N级源地址和N-1级源地址的第二数据包;
发送所述第二数据包。
2.根据权利要求1所述的方法,其特征在于,若所述第二数据包是IPv4数据包,则所述N-1级源地址包含在所述第二数据包包头的选项字段中;若所述第二数据包是IPv6数据包,则所述N-1级源地址包含在所述第二数据包的扩展包头中。
3.根据权利要求1或2所述的方法,其特征在于,若N不小于2,所述第一数据包还包含N-2级源地址,则所述第二数据包中所述N-2级源地址与所述N-1级源地址按预设顺序存放。
4.根据权利要求1或2所述的方法,其特征在于,所述根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址具体包括:
从至少一个目标源地址中选择一个作为所述N级源地址,将所述N-1级源地址转换为N级源地址。
5.根据权利要求4所述的方法,其特征在于,所述从至少一个目标源地址中选择一个作为所述N级源地址之前还包括:
接收地址分配设备分配的所述至少一个目标源地址。
6.一种数据包溯源方法,其特征在于,包括:
接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,N为正整数;
确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录,确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
7.根据权利要求6所述的方法,其特征在于,若N不小于2,所述数据包中还包含N-2级源地址,所述N-2级源地址是所述N-1级源地址进行地址转换前的源地址;
所述确定所述N-1级源地址的分配对象具体包括:确定将所述N-2级源地址转换为所述N-1级源地址的N-1级NAT设备;
所述确定所述N-1级源地址的分配对象之后还包括:根据所述N-1级NAT设备对应的N-1级接入子网,查询地址分配设备中与所述N-1级接入子网对应的地址分配记录,确定所述N-2级源地址的分配对象。
8.根据权利要7所述的方法,其特征在于,还包括:在所述数据包中按照预设的存放顺序读取所述N-1级源地址和所述N-2级源地址。
9.根据权利要求6~8任一所述的方法,其特征在于,所述确定所述N-1级源地址的分配对象之前还包括:
若是IPv4数据包,则从所述数据包包头的选项字段中读取所述N-1级源地址;若是IPv6数据包,则从所述数据包的扩展包头中读取所述N-1级源地址。
10.一种数据包处理装置,其特征在于,包括:
第一接收单元,用于接收第一数据包,所述第一数据包的源地址为N-1级源地址,N为正整数;
地址转换单元,用于根据预设的地址转换规则,将所述N-1级源地址转换为N级源地址;
数据包生成单元,用于生成包含所述N级源地址和N-1级源地址的第二数据包;
发送单元,用于发送所述第二数据包。
11.根据权利要求10所述的装置,其特征在于,所述数据包生成单元具体用于:
若所述第二数据包是IPv4数据包,则所述N-1级源地址包含在所述第二数据包包头的选项字段中;若所述第二数据包是IPv6数据包,则所述N-1级源地址包含在所述第二数据包的扩展包头中。
12.根据权利要求10或11所述的装置,其特征在于,所述数据包生成单元具体用于:
若N不小于2,所述第一数据包还包含N-2级源地址,则所述第二数据包中所述N-2级源地址与所述N-1级源地址按预设顺序存放。
13.根据权利要求10或11所述的装置,其特征在于,所述地址转换单元具体包括:
选择子单元,用于从至少一个目标源地址中选择一个作为所述N级源地址;
转换子单元,用于将所述N-1级源地址转换为N级源地址。
14.根据权利要求13所述的装置,其特征在于,所述地址转换单元还包括:
地址接收子单元,用于接收地址分配设备分配的所述至少一个目标源地址。
15.一种数据包溯源装置,其特征在于,包括:
第二接收单元,用于接收数据包,所述数据包的源地址为N级源地址,所述数据包中包含N-1级源地址,所述N-1级源地址是所述N级源地址进行地址转换前的源地址,N为正整数;
查询单元,用于确定所述N级源地址对应的接入网,查询地址分配设备中与所述接入网对应的地址分配记录。确定所述N级源地址的分配对象,所述分配对象是将所述N-1级源地址转换为所述N级源地址的N级网络地址转换NAT设备;
溯源单元,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
16.根据权利要求15所述的装置,其特征在于,若N不小于2,所述数据包中还包含N-2级源地址,所述N-2级源地址是所述N-1级源地址进行地址转换前的源地址,
所述溯源单元具体用于:确定将所述N-2级源地址转换为所述N-1级源地址的N-1级NAT设备,根据所述N-1级NAT设备对应的N-1级接入子网,查询地址分配设备中与所述N-1级接入子网对应的地址分配记录,确定所述N-2级源地址的分配对象。
17.根据权利要16所述的装置,其特征在于,所述溯源单元具体用于:在所述数据包中按照预设的存放顺序读取所述N-1级源地址和所述N-2级源地址。
18.根据权利要求15~17任一所述的装置,其特征在于,所述溯源单元具体包括:
地址读取子单元,用于若所述数据包是IPv4数据包,则从所述数据包包头的选项字段中读取所述N-1级源地址,若所述数据包是IPv6数据包,则从所述数据包的扩展包头中读取所述N-1级源地址;
溯源子单元,用于根据所述N级NAT设备对应的N级接入子网,查询地址分配设备中与所述N级接入子网对应的地址分配记录,确定所述N-1级源地址的分配对象。
19.一种溯源系统,包括:地址分配设备,用于分配地址,并存储地址分配记录;与地址分配设备连接的NAT设备和溯源设备;其特征在于,
所述NAT设备包括如权利要求10~14任一所述的数据包处理装置;
所述溯源设备包括如权利要求15~18任一所述的数据包溯源装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110212609.1A CN102316176B (zh) | 2011-07-27 | 2011-07-27 | 数据包处理和溯源方法、装置及系统 |
PCT/CN2011/083691 WO2013013477A1 (zh) | 2011-07-27 | 2011-12-08 | 数据包处理和溯源方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110212609.1A CN102316176B (zh) | 2011-07-27 | 2011-07-27 | 数据包处理和溯源方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102316176A true CN102316176A (zh) | 2012-01-11 |
CN102316176B CN102316176B (zh) | 2015-03-25 |
Family
ID=45428982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110212609.1A Active CN102316176B (zh) | 2011-07-27 | 2011-07-27 | 数据包处理和溯源方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102316176B (zh) |
WO (1) | WO2013013477A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103458060A (zh) * | 2012-06-05 | 2013-12-18 | 中兴通讯股份有限公司 | 一种多级网络地址转换下主机标识符的传递方法及装置 |
CN110247998A (zh) * | 2019-07-03 | 2019-09-17 | 北京宏图佳都通信设备有限公司 | 一种IPv4/IPv6数据传输处理方法和系统 |
CN110351396A (zh) * | 2019-05-29 | 2019-10-18 | 北京宏图佳都通信设备有限公司 | 一种IPv4/IPv6数据传输处理方法和系统 |
CN112637071A (zh) * | 2020-12-22 | 2021-04-09 | 山东兆物网络技术股份有限公司 | 基于数据包标记的溯源方法及数据包标记装置 |
CN113259393A (zh) * | 2021-06-28 | 2021-08-13 | 北京华云安信息技术有限公司 | 基于多级节点的数据转发方法和装置 |
CN118316842A (zh) * | 2024-06-07 | 2024-07-09 | 中国科学技术大学 | 一种基于ntp流量特征的nat局域网设备探测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050058100A1 (en) * | 2003-09-15 | 2005-03-17 | Samsung Electronics Co., Ltd. | Method for optimizing nested tunnels using nested path information in a mobile network |
CN101056211A (zh) * | 2007-06-22 | 2007-10-17 | 中兴通讯股份有限公司 | 一种实现用户上网行为审计的方法及系统 |
CN101204063A (zh) * | 2005-05-31 | 2008-06-18 | 松下电器产业株式会社 | 用于控制分组转发的方法和设备以及通信节点 |
CN101854360A (zh) * | 2010-05-21 | 2010-10-06 | 恒安嘉新(北京)科技有限公司 | 根据ip地址溯源移动用户手机号的装置及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101227398B (zh) * | 2008-01-31 | 2010-08-18 | 中兴通讯股份有限公司 | 网络地址转换的自动调整应用的系统及方法 |
-
2011
- 2011-07-27 CN CN201110212609.1A patent/CN102316176B/zh active Active
- 2011-12-08 WO PCT/CN2011/083691 patent/WO2013013477A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050058100A1 (en) * | 2003-09-15 | 2005-03-17 | Samsung Electronics Co., Ltd. | Method for optimizing nested tunnels using nested path information in a mobile network |
CN101204063A (zh) * | 2005-05-31 | 2008-06-18 | 松下电器产业株式会社 | 用于控制分组转发的方法和设备以及通信节点 |
CN101056211A (zh) * | 2007-06-22 | 2007-10-17 | 中兴通讯股份有限公司 | 一种实现用户上网行为审计的方法及系统 |
CN101854360A (zh) * | 2010-05-21 | 2010-10-06 | 恒安嘉新(北京)科技有限公司 | 根据ip地址溯源移动用户手机号的装置及方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103458060A (zh) * | 2012-06-05 | 2013-12-18 | 中兴通讯股份有限公司 | 一种多级网络地址转换下主机标识符的传递方法及装置 |
CN110351396A (zh) * | 2019-05-29 | 2019-10-18 | 北京宏图佳都通信设备有限公司 | 一种IPv4/IPv6数据传输处理方法和系统 |
CN110247998A (zh) * | 2019-07-03 | 2019-09-17 | 北京宏图佳都通信设备有限公司 | 一种IPv4/IPv6数据传输处理方法和系统 |
CN112637071A (zh) * | 2020-12-22 | 2021-04-09 | 山东兆物网络技术股份有限公司 | 基于数据包标记的溯源方法及数据包标记装置 |
CN112637071B (zh) * | 2020-12-22 | 2021-09-07 | 山东兆物网络技术股份有限公司 | 基于数据包标记的溯源方法及数据包标记装置 |
CN113259393A (zh) * | 2021-06-28 | 2021-08-13 | 北京华云安信息技术有限公司 | 基于多级节点的数据转发方法和装置 |
CN118316842A (zh) * | 2024-06-07 | 2024-07-09 | 中国科学技术大学 | 一种基于ntp流量特征的nat局域网设备探测方法 |
CN118316842B (zh) * | 2024-06-07 | 2024-08-06 | 中国科学技术大学 | 一种基于ntp流量特征的nat局域网设备探测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102316176B (zh) | 2015-03-25 |
WO2013013477A1 (zh) | 2013-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102316176A (zh) | 数据包处理和溯源方法、装置及系统 | |
CN103475704B (zh) | 一种面向虚拟机群应用的虚拟节点配置方法 | |
CN101986665B (zh) | Ipv6地址分配方法和系统 | |
CN105791448A (zh) | 一种地址分配方法、cgn设备及cgn双主系统 | |
CN103118147A (zh) | 内网服务器访问方法、设备和系统 | |
CN102404418A (zh) | 为用户终端分配ip地址的方法、装置和系统 | |
CN103346970B (zh) | 一种SpaceWire动态路由实现方法 | |
CN102447746A (zh) | 信息提供方法及家庭网关、家庭网络系统 | |
CN107835266B (zh) | 一种为通信总线上相同节点自动分配地址的方法 | |
CN104144156A (zh) | 报文处理方法和装置 | |
CN105007340B (zh) | 支持即插即用的分布式can网络及其节点地址自动分配方法 | |
CN103139325A (zh) | 基于GeoSOT剖分编码的网络地址设计方法和数据资源调度方法 | |
CN102333039A (zh) | 一种转发报文的方法、生成表项的方法及装置 | |
CN104333610A (zh) | 一种IPv6地址分配方法和装置 | |
CN102334355A (zh) | 策略控制方法及设备 | |
CN102665284B (zh) | 上行业务传输调度方法和终端 | |
CN107920020A (zh) | 报文处理方法和网关 | |
CN102611623A (zh) | 基于网络访问的端口配置处理方法、装置和系统 | |
CN104506667B (zh) | 一种分配端口资源的方法及装置、用户认证管理的装置 | |
CN104683312A (zh) | 媒体复用协商的方法和装置 | |
CN117714389A (zh) | 网络转发设备的网络地址及端口的转换方法及相关设备 | |
CN111107119A (zh) | 基于云存储系统的数据访问方法、装置、系统及存储介质 | |
CN102984696A (zh) | 基于移动终端的ip通信方法、设备和系统 | |
CN108848200A (zh) | 一种局域网中的设备添加方法、装置、设备及介质 | |
CN101729367B (zh) | 实现网络地址转换的方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210202 Address after: 100190 room 506, building 2, courtyard 4, South 4th Street, Zhongguancun, Haidian District, Beijing Patentee after: CHINA INTERNET NETWORK INFORMATION CENTER Address before: 100190 No. four, four South Street, Haidian District, Beijing, Zhongguancun Patentee before: Computer Network Information Center, Chinese Academy of Sciences |
|
TR01 | Transfer of patent right |