CN110290221A - 一种原始地址传输方法、系统、存储介质和处理器 - Google Patents

一种原始地址传输方法、系统、存储介质和处理器 Download PDF

Info

Publication number
CN110290221A
CN110290221A CN201910616189.XA CN201910616189A CN110290221A CN 110290221 A CN110290221 A CN 110290221A CN 201910616189 A CN201910616189 A CN 201910616189A CN 110290221 A CN110290221 A CN 110290221A
Authority
CN
China
Prior art keywords
address
ipv4
client
initial
xff field
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
Application number
CN201910616189.XA
Other languages
English (en)
Other versions
CN110290221B (zh
Inventor
王洪文
李�浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongxing Keyuan (beijing) Information Technology Co Ltd
Original Assignee
Zhongxing Keyuan (beijing) Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongxing Keyuan (beijing) Information Technology Co Ltd filed Critical Zhongxing Keyuan (beijing) Information Technology Co Ltd
Priority to CN201910616189.XA priority Critical patent/CN110290221B/zh
Publication of CN110290221A publication Critical patent/CN110290221A/zh
Application granted granted Critical
Publication of CN110290221B publication Critical patent/CN110290221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种原始地址传输方法和系统、存储介质和处理器。该方法包括:将XFF字段添加在HTTPS报文的握手包中,其中,该XFF字段包含客户端的原始地址;发送所述HTTPS报文的握手包。通过本发明解决了现有技术存在的当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题。

Description

一种原始地址传输方法、系统、存储介质和处理器
技术领域
本发明涉及通信技术领域,具体而言,涉及一种原始地址传输方法、系统、存储介质和处理器。
背景技术
在目前的应用场景中,由于用户对网站的访问请求并不是简单地从用户端的浏览器直达网站的源站服务器,中间可能经过CDN、WAF等代理服务器类型的设备,所以当源站服务器接收到的用户(客户端)访问请求时,源IP地址已不是用户(客户端)的原始IP地址。
在这种情况下,现有技术可以通过在HTTP的请求头中增加一条XFF记录来支持对用户的原始IP地址进行朔源。上述设备在把用户的访问请求转发到下一环节的服务器时,会在HTTP的请求头中添加一条XXF记录,用于记录用户的原始IP地址,其记录格式为X-Forwarded-For:用户原始IP地址。如果经过多个代理服务器类型的设备,则记录格式为X-Forwarded-For:client1,proxy1,proxy2,proxy3,client1代表用户原始IP,即X-Forwarded-For:用户原始IP,第一个代理服务器IP1,第二个代理服务器IP2,第三个代理服务器IP3。通过上述现有技术Web服务端可以从X-Forwarded-For字段获取访问者真实IP地址。
由于现有技术的HTTPX-Forwarded-For字段朔源技术仅支持IPv4协议栈的朔源,即,在用户客户端和服务端都工作在IPv4协议栈的情况下,服务端可以对用户的原始IP地址进行朔源。所以现有技术存在缺陷,即,当用户(客户端)工作在IPv6协议栈,中间经过协议转换系统进行服务,而服务端则工作在IPv4协议栈的情况下,则服务端无法获得用户(客户端)的原始IPv6地址。
当遇到采用TLS与SSL协议加密的HTTPS加密报文时,则无论用户端是工作在IPv4协议栈还是工作在IPv6协议栈,现有技术都无法对用户的原始IP地址进行朔源。因为SSL(Secure Sockets Layer安全套接层)以及后续的传输层安全(Transport LayerSecurity,TLS)都属于安全协议,TLS与SSL都在传输层对网络连接进行了加密。
针对现有技术存在的当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,目前尚未提出有效地解决方案。
发明内容
本发明提供了一种原始地址传输的方法、系统、存储介质和处理器,以解决现有技无法高效、准确地处理各类装备信息的问题。
根据本发明实施例的一个方面,提供了一种原始地址传输方法,包括:将XFF字段添加在HTTPS报文的握手包中,其中,所述XFF字段包含客户端的原始地址;发送所述HTTPS报文的握手包。
进一步地,所述XFF字段包含客户端的源IPv4地址或客户端的原始IPv6地址。
进一步地,将所述XFF字段添加在所述HTTPS报文的握手包中的步骤包括:将所述XFF字段添加在ClientHello数据包的头部,其中,所述握手包包含所述Client Hello数据包。
进一步地,在XFF字段中包含客户端的原始IPv6地址的情况下,将所述XFF字段添加在所述HTTPS报文的握手包中的步骤包括:将所述原始IPv6地址分为4段伪IPv4地址,其中,所述伪IPv4地址为二进制的32位;将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中。
进一步地,将所述原始IPv6地址分为4段伪IPv4地址的步骤包括:将所述原始IPv6地址分解为4个16进制符号段;将4个16进制符号段进行转换计算得到相对应的4个10进制数字段,其中,每8位2进制所对应的16进制符号转换为一个10进制数字,4个10进制数字组合为一个10进制数字段,一个所述10进制数字是所述伪IPv4地址四段号码中的一段;将每个10进制数字段作为所述伪IPv4地址。
进一步地,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中的步骤包括:所述伪IPv4地址之间以逗号分隔。
进一步地,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中的步骤包括:将所述伪IPv4地址按照加密预设规则进行加密变换。
根据本发明实施例的一个方面,提供了一种原始地址传输方法,包括:将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
进一步地,将所述HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址的步骤包括:将添加在Client Hello数据包的头部的XFF字段中所有IPv4地址组合成原始IPv6地址。
进一步地,将所述HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址的步骤包括:按照解密预设规则将所述HTTPS报文的握手包的XFF字段处的所有IPv4地址组合成IPv6地址,其中,所述解密预设规则与所述加密预设规则相对应,所述IPv4地址为伪IPv4地址,所述IPV6地址为客户端的原始IPv6地址。
进一步地,按照解密预设规则将所述HTTPS报文的握手包的XFF字段处的所有IPv4地址组合成所述IPv6地址的步骤包括:按照解密预设规则获得4个伪IPv4地址对应10进制数字段;将4个10进制数字段转化为4个16进制符号段;将4个16进制数字符号段按照所述解密预设规则组合成所述IPv6地址。
进一步地,将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址之前包括:接收HTTPS报文中的Client Hello数据包,其中,所述Client Hello数据包的XFF字段中添加有客户端的原始IPv6地址。
根据本发明实施例的一个方面,提供了一种原始地址传输方法,包括:接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv6地址。
进一步地,所述客户端的原始IPv6地址被分为4段伪IPv4地址,其中,所述伪IPv4地址为二进制的32位。
根据本发明实施例的一个方面,提供了一种原始地址传输方法,包括:接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv4地址。
根据本发明实施例的另一个方面,还提供给了一种原始地址传输系统,所述系统包括:第一合成单元,用于将XFF字段添加在HTTPS报文的握手包中,其中,所述XFF字段包含客户端的原始地址;发送单元,用于发送所述HTTPS报文的握手包。
根据本发明实施例的另一个方面,还提供给了一种原始地址传输系统,所述系统包括:第二合成单元,用于将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
根据本发明实施例的另一个方面,还提供给了一种原始地址传输系统,所述系统包括:第一接收单元,用于接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv6地址。
根据本发明实施例的另一个方面,还提供给了一种原始地址传输系统,所述系统包括:第二接收单元,用于接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv4地址。
根据本发明实施例的另一个方面,还提供给了一种存储介质,所述存储介质上保存有程序,所述程序被运行时执行上所述的方法。
根据本发明实施例的另一个方面,还提供给了一种处理器,所述程序被运行时执行上述的方法。
根据本发明实施例一种原始地址传输方法,采用了将XFF字段添加在HTTPS报文的握手包中,其中,该XFF字段包含客户端的原始地址。通过本发明解决了现有技术存在的当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,能够高效简洁的解决该问题,并且节约成本。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种原始地址传输方法的流程图;
图2是根据本发明实施例的一种可选的原始地址传输方法的流程图;
图3是根据本发明实施例的一种可选的原始地址传输方法的流程图;
图4是根据本发明实施例的一种可选的原始地址传输方法的流程图;
图5是根据本发明实施例的一种原始地址传输系统的结构图;
图6是根据本发明实施例的一种可选的原始地址传输系统的结构图;
图7是根据本发明实施例的一种可选的原始地址传输系统的结构图;
图8是根据本发明实施例的一种可选的原始地址传输系统的结构图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种原始地址传输方法。图1是根据本发明实施例的原始地址传输方法的流程图。如图1所示,该方法包括如下步骤:
步骤S102,将XFF字段添加在HTTPS报文的握手包中,其中,该XFF字段包含客户端的原始地址;
步骤S104,发送该HTTPS报文的握手包。
现有技术只在HTTP数据包头部添加XFF字段,当遇到加密HTTPS数据包时不采用添加XFF字段的方法,与本申请实施例不同,本申请实施例创造性的在HTTPS的握手包中添加XFF字段,HTTPS的握手包是握手协议产生的数据包,这些握手包是在HTTPS中不进行加密的数据包,通过在这些不加密的数据包中添加XFF字段解决了现有技术中存在的当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,过程简单,节约成本。
上述方法可以在客户端与服务端均处于IPv4或IPv6网络的环境中使用,也可以在客户端处于IPv4,服务端处于IPv6网络的环境中使用,还可以在客户端处于IPv6,服务端处于IPv4的环境中使用。在一种可选的实施方式中,该XFF字段包含客户端的原始IPv4地址或客户端的原始IPv6地址。
上述方法中的XFF字段可以添加在该HTTPS报文的握手包的头部,可以添加XFF字段的握手包包括如下:Certificate optional数据包、client key exchange数据包、Certificate verify optional数据包或Change cipher spec数据包。在一种可选的实施方式中,将该XFF字段添加在该HTTPS报文的握手包中包括:将该XFF字段添加在ClientHello数据包的头部,其中,该握手包包含该Client Hello数据包。
通过上述方法使得即使在HTTPS这种加密的数据包中也可以准确的找到客户端的原始IP地址。
在一种可选的实施方式中,在XFF字段中包含客户端的原始IPv6地址的情况下,将该XFF字段添加在该HTTPS报文的握手包中的步骤包括:首先,将该原始IPv6地址分为4段伪IPv4地址,其中,该伪IPv4地址为二进制的32位;其次,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中。
通过上述方式将128位的IPv6地址平均分割为四个IPv4地址,分别填在XFF字段中的clien1和代理服务器的IPv4地址位置处,每个IPv4地址有32位,都不是真正的IPv4地址,只是有IPv4地址的形式规则,从而便于服务器不需要大改动就可以识别到这些IPv4地址,继而识别到客户端的原始IPv6地址,更加节约成本,方法简洁提高效率,解决了现有技术存在的当服务端与客户端处于不同网络情况下,无法获得客户端的原始IPv6地址的技术问题。
当工作在IPv6协议栈的用户客户端通过协议转换系统与工作在IPv4协议栈的服务端收发HTTPS报文时,由协议转换系统按照与应用端提前约定好的规则将含有用户客户端的IPv6地址信息的X-Forwarded-For记录添加在HTTPS的握手包头部中,方便服务端及朔源系统对用户客户端的原始IPv6地址进行朔源,在一种可选的实施方式中,协议转换系统将该原始IPv6地址分为4段伪IPv4地址的步骤包括:首先,将该原始IPv6地址分解为4个16进制数字符号段;其次,将4个16进制数字符号段进行转换计算得到相对应的4个10进制数字段,其中,每8位2进制所对应的16进制符号转换为一个10进制数字,4个10进制数字组合为一个10进制数字段,一个该10进制数字是该伪IPv4地址的四段号码中的一段;然后,将每个10进制数字段作为一个该伪IPv4地址。
为了方便服务端及朔源系统对用户客户端的原始IPv6地址进行朔源,在一种可选的实施方式中,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中包括:该伪IPv4地址之间以逗号分隔。例如,协议转换系统在IPv4网络侧按照以下方式将IPv6地址添加到HTTPS报文的握手包头部中X-Forwarded-For字段,将128为的以16进制表示的IPv6地址,分解成4段,然后再分别把各段转换为以10进制表达的符合IPv4地址格式的伪IPv4地址,最后再把这四个伪IPv4地址以逗号分割作为X-Forwarded-For,添加到握手包包头的后面。具体为:X-Forwarded-For:伪IPv41,伪IPv42,伪IPv43,伪IPv44。
为了使传输过程更加安全,在一种可选的实施方式中,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中包括:将该伪IPv4地址按照加密预设规则进行加密变换。该加密预设规则可以是对四段伪IPv4地址的顺序进行变换,可以是对四段伪IPv4地址进行运算,比如各自加1,也可以是两者结合或者其他的加密方式。
本发明实施例提供了一种原始地址传输方法。图2是根据本发明实施例的原始地址传输方法的流程图。如图2所示,该方法包括如下步骤:
步骤S202,将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
通过上述步骤服务端根据接收到的所有IPv4地址将其重新还原为IPv6地址,不需要对现有服务端做大改动,成本低廉,节约时间,从而高效的解决了现有技术存在的服务端与客户端处于不同网络情况下,无法获得客户端的原始IPv6地址的技术问题。
上述方法中的XFF字段可以添加在该HTTPS报文的握手包的头部,可以添加XFF字段的握手包包括如下:Certificate optional数据包、client key exchange数据包、Certificate verify optional数据包或Change cipher spec数据包。在一种可选的实施方式中,将该XFF字段添加在该HTTPS报文的握手包中包括:将该XFF字段添加在ClientHello数据包的头部,其中,该握手包包含该Client Hello数据包。在一种可选的实施方式中,将该HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址包括:将添加在Client Hello数据包的头部的XFF字段中所有IPv4地址组合成原始IPv6地址。
服务端在接收并记录含有上述IPv6地址的报文后,将报文中所含的4个伪IPv4地址,按照与协议转换系统约定的规则,重新还原成一个标准的IPv6地址从而便于服务端朔源系统依据所恢复的IPv6地址,实现对原始用户IPv6地址的朔源。在一种可选的实施方式中,将该HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址包括:按照解密预设规则将该HTTP请求数据包头部的XFF字段处的IPv4地址组合成IPv6地址,其中,该解密预设规则与该加密预设规则相对应,该IPv4地址为伪IPv4地址,该IPV6地址为客户端的原始IPv6地址。
在一种可选的实施方式中,按照解密预设规则将该HTTPS报文的握手包的XFF字段处的所有IPv4地址组合成该IPv6地址的步骤包括:按照解密预设规则获得4个伪IPv4地址对应10进制数字段;将4个10进制数字段转化为4个16进制数字符号段;将4个16进制数字符号段按照该解密预设规则组合成该IPv6地址。
在一种可选的实施方式中,将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址之前包括:接收HTTPS报文中的Client Hello数据包,其中,该ClientHello数据包的XFF字段中添加有客户端的原始IPv6地址。
本发明实施例提供了一种原始地址传输方法。图3是根据本发明实施例的原始地址传输方法的流程图。如图3所示,该方法包括如下步骤:
步骤S302,接收HTTPS报文中的握手包,其中,在该握手包头部的XFF字段中添加有客户端的原始IPv6地址。
该方法的实施者可以为服务端,服务端可以是但不限于:政企、金融、高校、媒体、电商、视频等网站和与之对应的各类app应用服系统。上述步骤中的握手包可以是Certificate optional数据包、client key exchange数据包、Certificate verifyoptional数据包或Change cipher spec数据包等HTTPS中没有加密的其他数据包。
上述方法通过接收在HTTPS报文中的握手包头部的添加了XFF字段,XFF字段中有客户端的原始IPv6地址,高效的解决了有技术存在的当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,具体的是在客户端处于IPv6网络,而服务端处于IPv4网路情况下,服务端如何在加密的HTTPS报文中获取到客户端的原始IPv6问题。该HTTPS报文可以是协议转换系统发送的,也可以是客户端发送的,该实施例相比于现有技术,如果在报文中直接添加IPv6地址会导致后续处于IPv4网络的服务端无法识别,而本发明实施例在HTTPS报文中创造性的引入XFF字段,现有技术的XFF字段只用于HTTP,并且是在握手包中加入了XFF字段解决了当采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,只需要添加类似于HTTP报文中的XFF字段,XFF字段中存放客户端的原始IPv6地址,使后续的处于IPv4网络的服务器不需要多少改动就可以识别到客户端的原始IPv6地址,并充分利用了工作在IPv4协议栈的各类应用服务端的现有功能,不需要对现有服务端做大改动,成本低廉,节约时间。
为了便于服务端不需要做改动就可以识别IPv6地址,在一种可选的实施方式中,该客户端的原始IPv6地址被分为4段伪IPv4地址,其中,该伪IPv4地址为二进制的32位。
本发明实施例提供了一种原始地址传输方法。图4是根据本发明实施例的原始地址传输方法的流程图。如图4所示,该方法包括如下步骤:
步骤S402,接收HTTPS报文中的握手包,其中,在该握手包头部的XFF字段中添加有客户端的原始IPv4地址。
上述步骤的握手包可以是Certificate optional数据包、client key exchange数据包、Certificate verify optional数据包或Change cipher spec数据包。
通过上述步骤将HTTPS加密报文中在握手包的头部添加带有客户端的源IPv4地址的XFF字段,区别于现有技术的XFF字段只用于添加在HTTP非加密的报文的技术,本实施为了避免加密报文无法识别XFF字段所以需要将XFF字段添加在握手包中,握手包是HTTPS加密报文刚开始建立连接时的特殊数据包,没有进行加密。这样通过添加在握手包中的源IPv4地址,就可以获得加密HTTPS报文情况下客户端的源IPv4地址,从而解决了采用HTTPS加密报文的情况下无法获得客户端的原始IP地址的问题,几乎不需要服务端做任何改动,简洁又成本低廉,节约时间。
下面结合一个可选的实施例举例对上述所有步骤进行说明:
考虑到每个采用TLS与SSL协议加密的会话都需要通过握手协议来创建,这种情况现有技术无法添加XFF字段,而在加密会话正式建立前的握手包中的HTTPS报文是没有加密的,这些握手包中包括有ClientHello等,对于采用TLS与SSL协议加密的HTTPS报文,可以使用与处理HTTP报文时相同的方法,将含有用户端(客户端)原始IPv6或者IPv4地址的X-Forwarded-For(XFF)字段添加到Client Hello包的HTTPS头中,实现服务端对客户端原始IPv6地址或者IPv4地址的朔源。
假如客户端处于IPv6网络,服务端处于IPv4网络,此时客户端的原始IPv6地址为:2408:84e1:42:5560:84aa:2f3c:2c00:e2ef,当客户端所发IPv6报文经协议转换系统转换成IPv4报文时,由协议转换平台在HTTP包头添加X-Forwarded-For(XFF)记录,内容为:X-Forwarded-For:36.8.132.225,0.66.85.96,132.170.47.60,44.0.226.239。其中,36.8.132.225为客户端原始IPv6地址的第一个32位,其16进制对应为:2408:84e1;0.66.85.96为客户端原始IPv6地址的第二个32位,其16进制对应为:42:5560;132.170.47.60为客户端原始IPv6地址的第三个32位,其16进制对应为:84aa:2f3c;44.0.226.239为客户端原始IPv6地址的第四个32位,其16进制对应为:2c00:e2ef。将上述16进制转为10进制的伪IPv4地址,每8位2进制所对应的16进制符号转换为一个10进制数字,4个10进制数字组合为一个10进制数字段,一个该10进制数字是该伪IPv4地址的一位。最终,服务端接收到在HTTPS的握手包的包头中的X-Forwarded-For(XFF)字段的四个伪IPv4地址分别为:236.8.132.225,0.66.85.96,132.170.47.60,44.0.226.239,再将其按照加密规则解密还原为IPv6地址:2408:84e1:42:5560:84aa:2f3c:2c00:e2ef。
本发明实施例还提供了一种原始地址传输系统,该系统可以通过第一合成单元52实现其功能。需要说明的是,本发明实施例的一种原始地址传输系统可以用于执行本发明实施例所提供的一种原始地址传输方法,本发明实施例的另一种原始地址传输方法也可以通过本发明实施例所提供的另一种原始地址传输系统来执行。图5是根据本发明实施例的另一种原始地址传输系统的示意图。如图5所示,一种原始地址传输系统包括:
第一合成单元52,用于将XFF字段添加在HTTPS报文的握手包中,其中,该XFF字段包含客户端的原始地址;发送单元,用于发送该HTTPS报文的握手包。
本发明实施例还提供了一种原始地址传输系统,该系统可以通过第二合成单元62实现其功能。需要说明的是,本发明实施例的一种原始地址传输系统可以用于执行本发明实施例所提供的一种原始地址传输方法,本发明实施例的另一种原始地址传输方法也可以通过本发明实施例所提供的另一种原始地址传输系统来执行。图6是根据本发明实施例的另一种原始地址传输系统的示意图。如图6所示,一种原始地址传输系统包括:
第二合成单元62,用于将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
本发明实施例还提供了一种原始地址传输系统,该系统可以通过第一接收单元72实现其功能。需要说明的是,本发明实施例的一种原始地址传输系统可以用于执行本发明实施例所提供的一种原始地址传输方法,本发明实施例的另一种原始地址传输方法也可以通过本发明实施例所提供的另一种原始地址传输系统来执行。图7是根据本发明实施例的另一种原始地址传输系统的示意图。如图7所示,一种原始地址传输系统包括:
第一接收单元72,用于接收HTTPS报文中的握手包,其中,在该握手包头部的XFF字段中添加有客户端的原始IPv6地址。
本发明实施例还提供了一种原始地址传输系统,该系统可以通过第二接收单元82实现其功能。需要说明的是,本发明实施例的一种原始地址传输系统可以用于执行本发明实施例所提供的一种原始地址传输方法,本发明实施例的另一种原始地址传输方法也可以通过本发明实施例所提供的另一种原始地址传输系统来执行。图8是根据本发明实施例的另一种原始地址传输系统的示意图。如图8所示,一种原始地址传输系统包括:
第二接收单元82,用于接收HTTPS报文中的握手包,其中,在该握手包头部的XFF字段中添加有客户端的原始IPv4地址。
上述一种原始地址传输系统实施例是与一种原始地址传输方法相对应的,所以对于有益效果不再赘述。
本发明实施例提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述方法。
本发明实施例提供了一种处理器,处理器包括处理的程序,其中,在程序运行时控制处理器所在设备执行上述方法。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、移动终端、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (21)

1.一种原始地址传输方法,其特征在于,包括:
将XFF字段添加在HTTPS报文的握手包中,其中,所述XFF字段包含客户端的原始地址;
发送所述HTTPS报文的握手包。
2.根据权利要求1所述的方法,其特征在于,所述XFF字段包含客户端的源IPv4地址或客户端的原始IPv6地址。
3.根据权利要求2所述的方法,其特征在于,将所述XFF字段添加在所述HTTPS报文的握手包中包括:
将所述XFF字段添加在Client Hello数据包的头部,其中,所述握手包包含所述ClientHello数据包。
4.根据权利要求2所述的方法,其特征在于,在XFF字段中包含客户端的原始IPv6地址的情况下,将所述XFF字段添加在所述HTTPS报文的握手包中包括:
将所述原始IPv6地址分为4段伪IPv4地址,其中,所述伪IPv4地址为二进制的32位;
将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中。
5.根据权利要求4所述的方法,其特征在于,将所述原始IPv6地址分为4段伪IPv4地址包括:
将所述原始IPv6地址分解为4个16进制符号段;
将4个16进制符号段进行转换计算得到相对应的4个10进制数字段,其中,每8位2进制所对应的16进制符号转换为一个10进制数字,4个10进制数字组合为一个10进制数字段,一个所述10进制数字是所述伪IPv4地址的四段号码中的一段;
将每个10进制数字段作为所述伪IPv4地址。
6.根据权利要求4所述的方法,其特征在于,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中包括:
所述伪IPv4地址之间以逗号分隔。
7.根据权利要求4所述的方法,其特征在于,将4段伪IPv4地址作为XFF字段添加在HTTPS报文的握手包中包括:
将所述伪IPv4地址按照加密预设规则进行加密变换。
8.一种原始地址传输方法,其特征在于,包括:
将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
9.根据权利要求8所述的方法,其特征在于,将所述HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址包括:
将添加在Client Hello数据包的头部的XFF字段中所有IPv4地址组合成原始IPv6地址。
10.根据权利要求8所述的方法,其特征在于,将所述HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址包括:
按照解密预设规则将所述HTTPS报文的握手包的XFF字段处的所有IPv4地址组合成IPv6地址,其中,所述解密预设规则与所述加密预设规则相对应,所述IPv4地址为伪IPv4地址,所述IPV6地址为客户端的原始IPv6地址。
11.根据权利要求10所述的方法,其特征在于,按照解密预设规则将所述HTTPS报文的握手包的XFF字段处的所有IPv4地址组合成所述IPv6地址包括:
按照解密预设规则获得4个伪IPv4地址对应10进制数字段;
将4个10进制数字段转化为4个16进制符号段;
将4个16进制数字符号段按照所述解密预设规则组合成所述IPv6地址。
12.根据权利要求8所述的方法,其特征在于,将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址之前包括:
接收HTTPS报文中的Client Hello数据包,其中,所述Client Hello数据包的XFF字段中添加有客户端的原始IPv6地址。
13.一种原始地址传输方法,其特征在于,接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv6地址。
14.根据权利要求13所述的方法,其特征在于,所述客户端的原始IPv6地址被分为4段伪IPv4地址,其中,所述伪IPv4地址为二进制的32位。
15.一种原始地址传输方法,其特征在于,接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv4地址。
16.一种原始地址传输系统,其特征在于,包括:第一合成单元,用于将XFF字段添加在HTTPS报文的握手包中,其中,所述XFF字段包含客户端的原始地址;发送单元,用于发送所述HTTPS报文的握手包。
17.一种原始地址传输系统,其特征在于,包括:第二合成单元,用于将HTTPS报文的握手包的XFF字段处所有IPv4地址组合成原始IPv6地址。
18.一种原始地址传输系统,其特征在于,包括:第一接收单元,用于接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv6地址。
19.一种原始地址传输系统,其特征在于,包括:第二接收单元,用于接收HTTPS报文中的握手包,其中,在所述握手包头部的XFF字段中添加有客户端的原始IPv4地址。
20.一种存储介质,其特征在于,所述存储介质上保存有程序,所述程序被运行时执行权利要求1至15中任一项所述的方法。
21.一种处理器,其特征在于,所述程序被运行时执行权利要求1至15中任一项所述的方法。
CN201910616189.XA 2019-07-09 2019-07-09 一种原始地址传输方法、系统、存储介质和处理器 Active CN110290221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910616189.XA CN110290221B (zh) 2019-07-09 2019-07-09 一种原始地址传输方法、系统、存储介质和处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910616189.XA CN110290221B (zh) 2019-07-09 2019-07-09 一种原始地址传输方法、系统、存储介质和处理器

Publications (2)

Publication Number Publication Date
CN110290221A true CN110290221A (zh) 2019-09-27
CN110290221B CN110290221B (zh) 2021-07-30

Family

ID=68022026

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910616189.XA Active CN110290221B (zh) 2019-07-09 2019-07-09 一种原始地址传输方法、系统、存储介质和处理器

Country Status (1)

Country Link
CN (1) CN110290221B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586207A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN111586208A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN111586209A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN113810515A (zh) * 2021-09-06 2021-12-17 杭州安恒信息技术股份有限公司 客户端的真实ip地址的识别方法、系统和电子装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102714657A (zh) * 2009-11-25 2012-10-03 思杰系统有限公司 用于经由tcp选项插入客户机ip地址的系统和方法
CN103491200A (zh) * 2012-06-13 2014-01-01 中国移动通信集团贵州有限公司 一种虚拟终端服务器传递ip地址的方法、装置及系统
CN103532964A (zh) * 2013-10-22 2014-01-22 邱文乔 一种验证tcp连接安全性的方法
CN103973600A (zh) * 2013-02-01 2014-08-06 德克萨斯仪器股份有限公司 用于分组处理的旋转掩码合并和寄存字段指令
US20150012964A1 (en) * 2013-07-03 2015-01-08 Fortinet, Inc. Application layer-based single sign on
CN104539452A (zh) * 2014-12-18 2015-04-22 国云科技股份有限公司 一种统计Web应用访问地域特性的方法
CN105075216A (zh) * 2013-03-11 2015-11-18 思科技术公司 识别原始ip地址以及客户端端口连接
CN105474675A (zh) * 2013-06-19 2016-04-06 脸谱公司 检测移动装置的承载商
CN106453598A (zh) * 2016-10-27 2017-02-22 成都知道创宇信息技术有限公司 一种基于http协议的代理扫描方法
CN109802924A (zh) * 2017-11-17 2019-05-24 华为技术有限公司 一种识别加密数据流的方法及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102714657A (zh) * 2009-11-25 2012-10-03 思杰系统有限公司 用于经由tcp选项插入客户机ip地址的系统和方法
CN103491200A (zh) * 2012-06-13 2014-01-01 中国移动通信集团贵州有限公司 一种虚拟终端服务器传递ip地址的方法、装置及系统
CN103973600A (zh) * 2013-02-01 2014-08-06 德克萨斯仪器股份有限公司 用于分组处理的旋转掩码合并和寄存字段指令
CN105075216A (zh) * 2013-03-11 2015-11-18 思科技术公司 识别原始ip地址以及客户端端口连接
CN105474675A (zh) * 2013-06-19 2016-04-06 脸谱公司 检测移动装置的承载商
US20150012964A1 (en) * 2013-07-03 2015-01-08 Fortinet, Inc. Application layer-based single sign on
CN103532964A (zh) * 2013-10-22 2014-01-22 邱文乔 一种验证tcp连接安全性的方法
CN104539452A (zh) * 2014-12-18 2015-04-22 国云科技股份有限公司 一种统计Web应用访问地域特性的方法
CN106453598A (zh) * 2016-10-27 2017-02-22 成都知道创宇信息技术有限公司 一种基于http协议的代理扫描方法
CN109802924A (zh) * 2017-11-17 2019-05-24 华为技术有限公司 一种识别加密数据流的方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111586207A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN111586208A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN111586209A (zh) * 2020-06-17 2020-08-25 北京宏图佳都通信设备有限公司 用于跨网络传递客户端源地址的方法、系统及相关设备
CN113810515A (zh) * 2021-09-06 2021-12-17 杭州安恒信息技术股份有限公司 客户端的真实ip地址的识别方法、系统和电子装置
CN113810515B (zh) * 2021-09-06 2022-12-20 杭州安恒信息技术股份有限公司 客户端的真实ip地址的识别方法、系统和电子装置

Also Published As

Publication number Publication date
CN110290221B (zh) 2021-07-30

Similar Documents

Publication Publication Date Title
CN110324437B (zh) 一种原始地址传输方法、系统、存储介质和处理器
CN110290221A (zh) 一种原始地址传输方法、系统、存储介质和处理器
JP7042875B2 (ja) セキュア動的通信ネットワーク及びプロトコル
CN110535879A (zh) 一种原始地址传输方法、系统、存储介质和处理器
CN110191031B (zh) 网络资源访问方法、装置、电子设备
US7769871B2 (en) Technique for sending bi-directional messages through uni-directional systems
US9426176B2 (en) Method, system, and logic for in-band exchange of meta-information
CN108156178B (zh) 一种ssl/tls数据监控系统和方法
CN105791451B (zh) 一种报文响应方法及装置
US9350711B2 (en) Data transmission method, system, and apparatus
US20040181668A1 (en) Methods for conducting server-side encryption/decryption-on-demand
CN102148767A (zh) 一种基于nat的数据路由方法及其装置
CN109245993A (zh) 基于区块链的即时通讯方法及装置
CN107005400A (zh) 业务处理方法及装置
CN112261062A (zh) 支持多协议转换的物联网安全接入方法及网关、系统
AU2015201298A1 (en) Method and system for accommodating communications channels using different secure communications protocols
CN106059986A (zh) Ssl会话重用的方法和服务器
Deshmukh et al. Design of IPSec virtual private network for remote access
CN102404193A (zh) 生成转发表项、报文转发、地址获取的方法及边缘设备
Almheiri et al. IoT Protocols–MQTT versus CoAP
Severance Introduction to Networking
US11038922B2 (en) Secure traffic optimization in an edge network
CN114679265B (zh) 流量获取方法、装置、电子设备和存储介质
CN110213346A (zh) 加密信息的传输方法及装置
CN108989486A (zh) 一种通信方法及通信系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant