CN111586200B - 一种传递客户端真实ip地址的方法及系统 - Google Patents

一种传递客户端真实ip地址的方法及系统 Download PDF

Info

Publication number
CN111586200B
CN111586200B CN202010354722.2A CN202010354722A CN111586200B CN 111586200 B CN111586200 B CN 111586200B CN 202010354722 A CN202010354722 A CN 202010354722A CN 111586200 B CN111586200 B CN 111586200B
Authority
CN
China
Prior art keywords
packet
client
address
proxy
server
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.)
Active
Application number
CN202010354722.2A
Other languages
English (en)
Other versions
CN111586200A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010354722.2A priority Critical patent/CN111586200B/zh
Priority to PCT/CN2020/099529 priority patent/WO2021217869A1/zh
Publication of CN111586200A publication Critical patent/CN111586200A/zh
Application granted granted Critical
Publication of CN111586200B publication Critical patent/CN111586200B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses

Landscapes

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

Abstract

本发明实施例公开了一种传递客户端真实IP地址的方法及系统。所述方法包括:客户端向代理服务器发送通信请求,通信请求中携带有客户端IP包,客户端IP包包括客户端真实IP地址;代理服务器响应通信请求,对客户端IP包进行IP包封装,得到与客户端IP包对应的目标代理端IP包,目标代理端IP包包括客户端真实IP地址,基于与后端服务器之间的通信连接,将目标代理端IP包发送给后端服务器;后端服务器对目标代理端IP包进行解析,得到与目标代理端IP包对应的客户端真实IP地址。此外,本发明还涉及区块链技术,客户端真实IP地址可存储于区块链节点中。

Description

一种传递客户端真实IP地址的方法及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种传递客户端真实IP地址的方法及系统。
背景技术
现有采用代理服务器在客户端与后端服务器之间进行通信连接的技术中,彻底地改变了请求后端服务器服务的来源,隔离了客户端和后端服务器之间直接通信连接,从而使后端服务器只能看到代理服务器的IP地址,无法看到客户端的真实IP地址,无法满足需要基于客户端的真实IP地址开展的相关业务。
发明内容
基于此,有必要针对上述问题,提出了一种传递客户端真实IP地址的方法及系统,用于解决现有技术中采用代理服务器在客户端与后端服务器之间进行通信连接时后端服务器无法看到客户端的真实IP地址的技术问题。
第一方面,一种传递客户端真实IP地址的方法,应用于采用代理服务器建立客户端与后端服务器之间的通信连接,所述方法包括:
所述客户端向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址;
所述代理服务器基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
在一个实施例中,所述对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
所述代理服务器根据所述客户端IP包设立与所述客户端IP包对应的待处理代理端IP包;
所述代理服务器在所述待处理代理端IP包中增加IPv6包头部,得到与所述客户端IP包对应的待封装代理端IP包;
所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包。
在一个实施例中,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,所述待封装IP地址包括所述客户端真实IP地址,其中,所述客户端真实IP地址存储在区块链中;
所述代理服务器根据所述待封装IP地址更新所述待封装代理端IP包的所述IPv6包头部的扩展报头;
所述代理服务器将更新所述扩展报头之后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
在一个实施例中,当所述客户端采用IPv6协议时,所述客户端真实IP地址是指IPv6的家乡地址;
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,包括:
所述代理服务器从所述客户端IP包提取家乡地址,得到与所述客户端IP包对应的IPv6的家乡地址,将与所述客户端IP包对应的IPv6的家乡地址作为所述待封装IP地址。
在一个实施例中,当所述客户端采用IPv4协议时,所述客户端真实IP地址是指IPv4包的源IP地址,所述代理服务器及所述后端服务器支持IPv4 in IPv6地址转换服务;
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,包括:
所述代理服务器从所述客户端IP包提取源IP地址,得到与所述客户端IP包对应的IPv4包的源IP地址;
所述代理服务器将与所述客户端IP包对应的IPv4包的源IP地址转换成IPv6的家乡地址,得到所述待封装IP地址。
在一个实施例中,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
所述代理服务器获取代理服务器IP地址;
所述代理服务器根据所述代理服务器IP地址更新所述待封装代理端IP包的所述IPv6包头部的源地址;
所述代理服务器获取所述代理服务器与所述后端服务器之间通信连接的传输协议类型;
所述代理服务器根据所述传输协议类型更新所述待封装代理端IP包的所述IPv6包头部的下一扩展头;
所述代理服务器根据所述客户端IP包对更新之后的所述待封装代理端IP包的所述IPv6包头部进行封装,得到所述目标代理端IP包。
在一个实施例中,所述代理服务器采用Nginx服务器;
所述代理服务器与所述后端服务器的连接的套接字采用原始套接字。
在一个实施例中,所述后端服务器根据所述客户端真实IP地址确定所述客户端的通信网络,和/或,根据所述客户端真实IP地址确定所述客户端的地理位置信息。
第二方面,本发明还提出了一种传递客户端真实IP地址的系统,所述系统包括:客户端、代理服务器、后端服务器;
所述客户端,用于向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器,用于建立客户端与后端服务器之间的通信连接,响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址,基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器,用于对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
在一个实施例中,所述后端服务器还用于根据所述客户端真实IP地址确定客户端的通信网络和/或根据所述客户端真实IP地址确定客户端的地理位置信息。
本发明提出的一种传递客户端真实IP地址的方法及系统,采用代理服务器建立客户端与后端服务器之间的通信连接,将通信请求中携带的客户端IP包中的客户端真实IP地址封装到与客户端IP包对应的目标代理端IP包,再将目标代理端IP包发送给后端服务器,后端服务器通过解析目标代理端IP包获取客户端真实IP地址,实现了在采用代理服务器建立通信连接时后端服务器可以获取到客户端真实IP地址,从而使采用代理服务器建立通信连接的架构适用于需要基于客户端的真实IP地址开展相关业务的应用场景,提高了采用代理服务器建立通信连接的架构的公共支持及适配性;而且整个技术方案只需要在代理服务器中做更改,不会大量增加采用代理服务器建立通信连接的部署难度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中传递客户端真实IP地址的方法的流程图;
图2为图1中传递客户端真实IP地址的方法进行目标代理端IP包封装的流程图;
图3为图2中传递客户端真实IP地址的方法进行IPv6包头部封装的流程图;
图4为图3中传递客户端真实IP地址的方法获取采用IPv6协议的客户端的待封装IP地址的流程图;
图5为图3中传递客户端真实IP地址的方法获取采用IPv4协议的客户端的待封装IP地址的流程图;
图6为图2中传递客户端真实IP地址的方法进行IPv6包头部封装的流程图;
图7为图1的传递客户端真实IP地址的方法的时序图;
图8为一个实施例中传递客户端真实IP地址的系统的结构框图;
图9为计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例所涉及的技术术语包括:
IP地址:IP网际互连协议的缩写,是TCP/IP体系中的网络层协议,IP规定网络上所有的设备都必须有一个独一无二的IP地址。
IP包:指IP数据包,是一种可变长分组,由首部和数据负载两部分组成。
IPv4:互联网通信协议第四版,是网际协议开发过程中的第四个修订版本。
IPv6:是互联网协议第6版的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议。
代理服务器:用于代理网络用户去取得网络信息,作为网络信息的中转站,是个人网络和Internet服务商之间的中间代理机构,负责转发合法的网络信息,对转发进行控制和登记。
Nginx:是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。反向代理(Reverse Proxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
客户端(Client):或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。
后端服务器:可以是用于运行应用的应用服务器,也可以是运行数据的数据库服务器,还可以用于同时运行应用和运行数据的服务器。
如图1所示,在一个实施例中,一种传递客户端真实IP地址的方法,应用于采用代理服务器建立客户端与后端服务器之间的通信连接,所述方法包括:
S102、所述客户端向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
当客户端需要访问后端服务器时,所述客户端通过网络向与后端服务器对应的代理服务器发送通信请求。
可以理解的是,代理服务器通过网络分别与至少一个客户端、至少一个后端服务器进行通信连接。
可选的,当所述客户端采用IPv6协议时,所述客户端真实IP地址是指IPv6的家乡地址,此时所述客户端IP包的头部格式为IPv6包头部;当客户端有转交地址时,则把客户端的转交地址放入所述客户端IP包的IPv6包头部的源地址,且把客户端的家乡地址放入所述客户端IP包的IPv6包头部的扩展报头;当客户端没有转交地址时,则把客户端的家乡地址放入所述客户端IP包的IPv6包头部的源地址。
可选的,当所述客户端采用IPv4协议时,所述客户端真实IP地址是指IPv4包的源IP地址,此时所述客户端IP包的头部格式为IPv4包头部。
可以理解的是,所述客户端IP包是一个IP包。
IPv6为每个移动设备设有一个固定的家乡地址(home address),家乡地址与移动设备当前接入互联网的位置无关。
当移动设备在家乡以外的地方使用时,通过一个转交地址(care-of address)来提供移动节点当前的位置信息;移动设备每次改变位置,都要将它的转交地址告诉给家乡地址和它所对应的通信节点;在家乡地址以外的地方,移动设备传送数据包时,通常在IPv6报头中将转交地址作为源地址。
S104、所述代理服务器响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址;
所述代理服务器接收到客户端发送的通信请求后,对通信请求进行解析,从通信请求携带的客户端IP包的头部中解析得到客户端真实IP地址;针对每个客户端IP包建立待处理代理端IP包,为每个待处理代理端IP包增加一个IPv6包头部;将客户端真实IP地址封装到待处理代理端IP包中增加的IPv6包头部的扩展报头,封装完成后得到目标代理端IP包。
可以理解的是,所述目标代理端IP包是一个IP包。
S106、所述代理服务器基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述代理服务器基于代理服务器与所述后端服务器之间的通信连接,代理服务器将所述目标代理端IP包发送给所述后端服务器。
可选的,代理服务器与所述后端服务器之间的通信连接可以采用HTTP协议。
可选的,代理服务器与所述后端服务器之间的通信连接也可以采用非HTTP协议。比如,非HTTP协议包括UDP/TCP、HTTPS,在此举例不做具体限定。
可选的,代理服务器采用Nginx以实现反向代理,在此举例不做具体限定。
可选的,在代理服务器采用Nginx时,因是在每个待处理代理端IP包增加一个IPv6包头部,不影响Nginx原有的http_realip_module的功能,因此可以同时在IP层和HTTP层提供对客户端真实IP地址的传送。其中,所述IP层是指网络层,所述HTTP层是指应用层。
S108、所述后端服务器对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
所述后端服务器对接收的所述目标代理端IP包进行解析,从所述目标代理端IP包的IPv6包头部中获取到与所述目标代理端IP包对应的客户端真实IP地址。
可选的,当所述代理服务器采用Nginx服务器时,所述后端服务器的操作系统可以是Linux,Windows,MacOS,FreeBSD等,只需要所述后端服务器的操作系统持标准的IPv6协议栈,Nginx服务器都可以采用本发明通过MIPv6选项发送所述客户端真实IP地址到后端服务器。
可选的,所述后端服务器的运营商需要进行风险控制时,通过所述后端服务器获取到与所述目标代理端IP包对应的客户端真实IP地址,能够识别所述通信请求的真实来源,根据所述客户端真实IP地址确定与所述客户端真实IP地址对应的风险级别,根据与所述客户端真实IP地址对应的风险级别提供相应的服务,从而在确保服务质量的同时实现了风险控制,进一步提高了采用代理服务器建立通信连接的架构的公共支持及适配性。
可选的,在金融支付中,通过所述后端服务器获取到与所述目标代理端IP包对应的客户端真实IP地址,能够识别所述通信请求的真实来源,避免了危险通信请求通过代理方式绕开金融支付的审查,从而实现了避免金融支付出错造成的经济损失和信息泄露。
本实施例采用代理服务器建立客户端与后端服务器之间的通信连接,将通信请求中携带的客户端IP包中的客户端真实IP地址封装到与客户端IP包对应的目标代理端IP包,再将目标代理端IP包发送给后端服务器,后端服务器通过解析目标代理端IP包获取客户端真实IP地址,实现了在采用代理服务器建立通信连接时后端服务器可以获取到客户端真实IP地址,从而使采用代理服务器建立通信连接的架构适用于需要基于客户端的真实IP地址开展相关业务的应用场景,提高了采用代理服务器建立通信连接的架构的公共支持及适配性;而且整个技术方案只需要在代理服务器中做更改,不会大量增加采用代理服务器建立通信连接的部署难度。
可以理解的是,通过网络抓包工具获取到目标代理端IP包,也可以解析目标代理端IP包获得客户端真实IP地址,因此本发明对debug(调试)也很有帮助。比如,所述网络抓包工具包括Wireshark,在Wireshark中设有MIPv6的标准解析,简化了采用代理服务器建立通信连接的架构的部署。
如图2所示,在一个实施例中,所述对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
S202、所述代理服务器根据所述客户端IP包设立与所述客户端IP包对应的待处理代理端IP包;
代理服务器对每个客户端IP包设立一个与所述客户端IP包对应的待处理代理端IP包。
可以理解的是,所述待处理代理端IP包是一个IP包。
S204、所述代理服务器在所述待处理代理端IP包中增加IPv6包头部,得到与所述客户端IP包对应的待封装代理端IP包;
代理服务器在每个所述待处理代理端IP包中增加一个IPv6包头部,将增加IPv6包头部之后的待处理代理端IP包作为与所述客户端IP包对应的待封装代理端IP包。
可以理解的是,所述待封装代理端IP包是一个IP包。
S206、所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包。
代理服务器从所述客户端IP包的头部中解析得到所述客户端真实IP地址,将所述客户端真实IP地址封装到待处理代理端IP包中增加的IPv6包头部的扩展报头,将封装完成后的所述待封装代理端IP包作为目标代理端IP包。
本实施例通过将所述客户端真实IP地址封装到待处理代理端IP包中增加的IPv6包头部,对待处理代理端IP包的其他数据不会造成影响。
如图3所示,在一个实施例中,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
S302、所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,所述待封装IP地址包括所述客户端真实IP地址,其中,所述客户端真实IP地址存储在区块链中;
需要强调的是,为进一步保证上述客户端真实IP地址的私密和安全性,上述客户端真实IP地址还可以存储于一区块链的节点中。
代理服务器从所述客户端IP包中提取出客户端真实IP地址,将所述客户端真实IP地址作为与所述客户端IP包对应的待封装IP地址。
S304、所述代理服务器根据所述待封装IP地址更新所述待封装代理端IP包的所述IPv6包头部的扩展报头;
代理服务器将所述待封装IP地址添加到所述待封装代理端IP包的所述IPv6包头部的扩展报头中。可以理解的是,添加方法是采用第二类路由头实现,第二类路由头里面只能藏匿一个经由地址,用客户端真实IP地址更新到经由地址。
S306、所述代理服务器将更新所述扩展报头之后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
所述代理服务器将添加了所述待封装IP地址的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
本实施例通过将所述客户端真实IP地址封装到待处理代理端IP包中增加的IPv6包头部的扩展报头,传递了客户端真实IP地址,而且对待处理代理端IP包的其他数据不会造成影响。
如图4所示,在一个实施例中,当所述客户端采用IPv6协议时,所述客户端真实IP地址是指IPv6的家乡地址;
所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
S402、所述代理服务器从所述客户端IP包提取家乡地址,得到与所述客户端IP包对应的IPv6的家乡地址,将与所述客户端IP包对应的IPv6的家乡地址作为所述待封装IP地址,所述待封装IP地址包括所述客户端真实IP地址;
代理服务器从所述客户端IP包的IPv6包头部中提取得到与所述客户端IP包对应的IPv6的家乡地址,在IPv6协议中,IPv6的家乡地址即为所述客户端真实IP地址。
S404、所述代理服务器根据所述待封装IP地址更新所述待封装代理端IP包的所述IPv6包头部的扩展报头;
S406、所述代理服务器将更新所述扩展报头之后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
本实施例在客户端采用IPv6协议时,将所述客户端真实IP地址即家乡地址封装到了所述待封装代理端IP包中,从而使本发明适用于客户端采用IPv6协议的应用场景。
如图5所示,在一个实施例中,当所述客户端采用IPv4协议时,所述客户端真实IP地址是指IPv4包的源IP地址,所述代理服务器及所述后端服务器支持IPv4in IPv6地址转换服务;
所述根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,还包括:
S502、所述代理服务器从所述客户端IP包提取源IP地址,得到与所述客户端IP包对应的IPv4包的源IP地址;
代理服务器从所述客户端IP包的IPv4包头部中源IP地址字段提取得到与所述客户端IP包对应的IPv4包的源IP地址。
S504、所述代理服务器将与所述客户端IP包对应的IPv4包的源IP地址转换成IPv6的家乡地址,得到所述待封装IP地址,所述待封装IP地址包括所述客户端真实IP地址;
代理服务器根据IPv4in IPv6地址转换服务将与所述客户端IP包对应的IPv4包的源IP地址从IPv4格式的IP地址转换成IPv6格式的IPv6的家乡地址,将转换得到的IPv6的家乡地址作为所述待封装IP地址。可以理解的是,所述客户端真实IP地址是转换得到的IPv6的家乡地址的一部分。
将IPv4格式的IP地址转换成IPv6格式的家乡地址的方法可以从现有技术中选择,在此不做赘述。
S506、所述代理服务器根据所述待封装IP地址更新所述待封装代理端IP包的所述IPv6包头部的扩展报头;
S508、所述代理服务器将更新所述扩展报头之后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
本实施例在客户端采用IPv4协议时,将所述客户端真实IP地址即IPv4包的源IP地址转换成IPv6格式后封装到了所述待封装代理端IP包中,从而使本发明适用于客户端采用IPv4协议的应用场景。
如图6所示,在一个实施例中,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
S602、所述代理服务器获取代理服务器IP地址;
代理服务器从自身数据库中获取代理服务器IP地址。
所述代理服务器IP地址是指代理服务器的IP地址。
S604、所述代理服务器根据所述代理服务器IP地址更新所述待封装代理端IP包的所述IPv6包头部的源地址;
代理服务器将所述代理服务器IP地址更新到所述待封装代理端IP包的所述IPv6包头部的源地址。
S606所述代理服务器获取所述代理服务器与所述后端服务器之间通信连接的传输协议类型;
代理服务器从数据库中所述代理服务器获取所述代理服务器与所述后端服务器之间通信连接的传输协议类型。比如,所述传输协议类型包括TCP、UDP,在此举例不做具体限定。
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。
UDP(User Datagram Protocol)是指用户数据报协议,为应用程序提供了一种无需建立连接就可以发送封装的IP数据包的方法。
S608、所述代理服务器根据所述传输协议类型更新所述待封装代理端IP包的所述IPv6包头部的下一扩展头;
代理服务器根据所述传输协议类型更新到所述待封装代理端IP包的所述IPv6包头部的下一扩展头(NextHeader)。
S610、所述代理服务器根据所述客户端IP包对更新之后的所述待封装代理端IP包的所述IPv6包头部进行封装,得到所述目标代理端IP包。
代理服务器所述代理服务器根据所述客户端IP包对更新之后的所述待封装代理端IP包的所述IPv6包头部进行封装,得到所述目标代理端IP包。
可以理解的是,对更新之后的所述待封装代理端IP包的所述IPv6包头部进行封装得到所述目标代理端IP包的方法与步骤S302至步骤S306相同。
可以理解的是,在一个实施例中,可以先执行步骤S302至步骤S306,再对执行步骤S302至步骤S306更新后的所述待封装代理端IP包执行步骤S602至步骤S608,最后将步骤S608更新后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包,在此举例不做具体限定。
在一个实施例中,所述代理服务器采用Nginx服务器;
所述代理服务器与所述后端服务器的连接的套接字采用原始套接字。
所述代理服务器与所述后端服务器的连接的套接字的通信类型采用SOCK_RAW(原始套接字),参数采用IPPROTO_RAW,所述代理服务器与所述后端服务器的连接的套接字的函数调用格式为socket(AF_INET,SOCK_RAW,ipproto_raw)。
所述IPPROTO_RAW提供了应用程序自行指定IP头部的功能。
在一个实施例中,所述后端服务器根据所述客户端真实IP地址确定所述客户端的通信网络,和/或,根据所述客户端真实IP地址确定所述客户端的地理位置信息。
所述根据所述客户端真实IP地址确定客户端的通信网络,包括:所述后端服务器获取IP地址数据库,根据所述客户端真实IP地址从所述IP地址数据库中匹配查找,得到地理位置信息,其中,所述IP地址数据库包括:IP地址、地理位置信息、通信网络。比如,在采用手机登陆手机上的购物客户端购物时,购物平台根据购物客户端真实IP地址确定购物客户端的通信网络,然后根据通信网络做购物推荐,比如,通信网络包括:移动、联通、电信,在此举例不做具体限定。
所述根据所述客户端真实IP地址确定客户端的地理位置信息,包括:所述后端服务器获取IP地址数据库,根据所述客户端真实IP地址从所述IP地址数据库中匹配查找,得到地理位置信息。
在一个实施例中,所述代理服务器采用七层负载均衡软件Nginx,以用于实现反向代理。
在一个实施例中,本发明还提出了一种传递客户端真实IP地址的代理服务器,存储有计算机指令程序,所述计算机指令程序被处理器执行时,使得所述处理器执行时实现如下方法步骤:
所述客户端向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址;
所述代理服务器基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
所述代理服务器可以是Nginx服务器,也可以是其他代理服务器,在此不做具体限定。
本实施例的代理服务器建立客户端与后端服务器之间的通信连接,代理服务器中的计算机指令程序执行时将通信请求中携带的客户端IP包中的客户端真实IP地址封装到与客户端IP包对应的目标代理端IP包,再将目标代理端IP包发送给后端服务器,后端服务器通过解析目标代理端IP包获取客户端真实IP地址,实现了在采用代理服务器建立通信连接时后端服务器可以获取到客户端真实IP地址,从而使采用代理服务器建立通信连接的架构适用于需要基于客户端的真实IP地址开展相关业务的应用场景,提高了采用代理服务器建立通信连接的架构的公共支持及适配性;而且整个技术方案只需要在代理服务器中做更改,不会大量增加采用代理服务器建立通信连接的部署难度。
如图8所示,在一个实施例中,提出了一种传递客户端真实IP地址的系统,所述系统包括:客户端、代理服务器、后端服务器;
所述客户端,用于向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器,用于建立客户端与后端服务器之间的通信连接,响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址,基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器,用于对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
所述从所述目标代理端IP包解析得到所述客户端真实IP地址,包括:所述后端服务器调用标准的recv_from从所述目标代理端IP包中获取到所述客户端真实IP地址。
可选的,所述后端服务器的用HOOK机制让XFRM的检查函数永远返回true,以用于避免所述目标代理端IP包不能通过内核XFRM的检验。
本实施例采用代理服务器建立客户端与后端服务器之间的通信连接,将通信请求中携带的客户端IP包中的客户端真实IP地址封装到与客户端IP包对应的目标代理端IP包,再将目标代理端IP包发送给后端服务器,后端服务器通过解析目标代理端IP包获取客户端真实IP地址,实现了在采用代理服务器建立通信连接时后端服务器可以获取到客户端真实IP地址,从而使采用代理服务器建立通信连接的架构适用于需要基于客户端的真实IP地址开展相关业务的应用场景,提高了采用代理服务器建立通信连接的架构的公共支持及适配性;而且整个技术方案只需要在代理服务器中做更改,不会大量增加采用代理服务器建立通信连接的部署难度。
在一个实施例中,所述后端服务器还用于根据所述客户端真实IP地址确定客户端的通信网络和/或根据所述客户端真实IP地址确定客户端的地理位置信息。
图9示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图9所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现传递客户端真实IP地址的方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行传递客户端真实IP地址的方法。本领域技术活体可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的一种传递客户端真实IP地址的方法可以实现为一种计算机程序的形式,计算机程序可在如图9所示的计算机设备上运行。计算机设备的存储器中可存储组成的一种基于多点定位的活体甄别装置的各个程序模板。
在一个实施例中,还提出了一种存储介质,存储有计算机指令程序,所述计算机指令程序被处理器执行时,使得所述处理器执行时实现如下方法步骤:
所述客户端向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址;
所述代理服务器基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
本实施例的方法步骤执行时将通信请求中携带的客户端IP包中的客户端真实IP地址封装到与客户端IP包对应的目标代理端IP包,再将目标代理端IP包发送给后端服务器,后端服务器通过解析目标代理端IP包获取客户端真实IP地址,实现了在采用代理服务器建立通信连接时后端服务器可以获取到客户端真实IP地址,从而使采用代理服务器建立通信连接的架构适用于需要基于客户端的真实IP地址开展相关业务的应用场景,提高了采用代理服务器建立通信连接的架构的公共支持及适配性;而且整个技术方案只需要在代理服务器中做更改,不会大量增加采用代理服务器建立通信连接的部署难度。
需要说明的是,上述一种传递客户端真实IP地址的方法、一种传递客户端真实IP地址的系统属于一个总的发明构思,一种传递客户端真实IP地址的方法、一种传递客户端真实IP地址的系统实施例中的内容可相互适用。
本领域普通技术活体可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术活体来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (9)

1.一种传递客户端真实IP地址的方法,应用于采用代理服务器建立客户端与后端服务器之间的通信连接,所述方法包括:
所述客户端向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,包括:所述代理服务器根据所述客户端IP包设立与所述客户端IP包对应的待处理代理端IP包,所述代理服务器在所述待处理代理端IP包中增加IPv6包头部,得到与所述客户端IP包对应的待封装代理端IP包,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址;
所述代理服务器基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述后端服务器对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
2.如权利要求1所述的方法,其特征在于,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,所述待封装IP地址包括所述客户端真实IP地址,其中,所述客户端真实IP地址存储在区块链中;
所述代理服务器根据所述待封装IP地址更新所述待封装代理端IP包的所述IPv6包头部的扩展报头;
所述代理服务器将更新所述扩展报头之后的所述待封装代理端IP包作为与所述客户端IP包对应的目标代理端IP包。
3.如权利要求2所述的方法,其特征在于,当所述客户端采用IPv6协议时,所述客户端真实IP地址是指IPv6的家乡地址;
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,包括:
所述代理服务器从所述客户端IP包提取家乡地址,得到与所述客户端IP包对应的IPv6的家乡地址,将与所述客户端IP包对应的IPv6的家乡地址作为所述待封装IP地址。
4.如权利要求2所述的方法,其特征在于,当所述客户端采用IPv4协议时,所述客户端真实IP地址是指IPv4包的源IP地址,所述代理服务器及所述后端服务器支持IPv4 in IPv6地址转换服务;
所述代理服务器从所述客户端IP包中提取IP地址,得到与所述客户端IP包对应的待封装IP地址,包括:
所述代理服务器从所述客户端IP包提取源IP地址,得到与所述客户端IP包对应的IPv4包的源IP地址;
所述代理服务器将与所述客户端IP包对应的IPv4包的源IP地址转换成IPv6的家乡地址,得到所述待封装IP地址。
5.如权利要求1所述的方法,其特征在于,所述代理服务器根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包,包括:
所述代理服务器获取代理服务器IP地址;
所述代理服务器根据所述代理服务器IP地址更新所述待封装代理端IP包的所述IPv6包头部的源地址;
所述代理服务器获取所述代理服务器与所述后端服务器之间通信连接的传输协议类型;
所述代理服务器根据所述传输协议类型更新所述待封装代理端IP包的所述IPv6包头部的下一扩展头;
所述代理服务器根据所述客户端IP包对更新之后的所述待封装代理端IP包的所述IPv6包头部进行封装,得到所述目标代理端IP包。
6.如权利要求1至5任一项所述的方法,其特征在于,所述代理服务器采用Nginx服务器;
所述代理服务器与所述后端服务器的连接的套接字采用原始套接字。
7.如权利要求1至5任一项所述的方法,其特征在于,所述后端服务器根据所述客户端真实IP地址确定所述客户端的通信网络,和/或,根据所述客户端真实IP地址确定所述客户端的地理位置信息。
8.一种传递客户端真实IP地址的系统,其特征在于,所述系统包括:客户端、代理服务器、后端服务器;
所述客户端,用于向所述代理服务器发送通信请求,所述通信请求中携带有客户端IP包,所述客户端IP包包括客户端真实IP地址;
所述代理服务器,用于建立客户端与后端服务器之间的通信连接,响应所述通信请求,对所述客户端IP包进行IP包封装,得到与所述客户端IP包对应的目标代理端IP包,所述目标代理端IP包包括所述客户端真实IP地址,基于与所述后端服务器之间的通信连接,将所述目标代理端IP包发送给所述后端服务器;
所述代理服务器,具体用于根据所述客户端IP包设立与所述客户端IP包对应的待处理代理端IP包,在所述待处理代理端IP包中增加IPv6包头部,得到与所述客户端IP包对应的待封装代理端IP包,根据所述客户端IP包对所述待封装代理端IP包的所述IPv6包头部进行封装,得到与所述客户端IP包对应的目标代理端IP包;
所述后端服务器,用于对所述目标代理端IP包进行解析,得到与所述目标代理端IP包对应的客户端真实IP地址。
9.如权利要求8所述的系统,其特征在于,所述后端服务器还用于根据所述客户端真实IP地址确定客户端的通信网络和/或根据所述客户端真实IP地址确定客户端的地理位置信息。
CN202010354722.2A 2020-04-29 2020-04-29 一种传递客户端真实ip地址的方法及系统 Active CN111586200B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010354722.2A CN111586200B (zh) 2020-04-29 2020-04-29 一种传递客户端真实ip地址的方法及系统
PCT/CN2020/099529 WO2021217869A1 (zh) 2020-04-29 2020-06-30 一种传递客户端真实ip地址的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010354722.2A CN111586200B (zh) 2020-04-29 2020-04-29 一种传递客户端真实ip地址的方法及系统

Publications (2)

Publication Number Publication Date
CN111586200A CN111586200A (zh) 2020-08-25
CN111586200B true CN111586200B (zh) 2022-05-17

Family

ID=72126322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010354722.2A Active CN111586200B (zh) 2020-04-29 2020-04-29 一种传递客户端真实ip地址的方法及系统

Country Status (2)

Country Link
CN (1) CN111586200B (zh)
WO (1) WO2021217869A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112272157B (zh) * 2020-09-15 2022-07-26 杭州数梦工场科技有限公司 主机ip地址的转换方法、装置、计算机设备及存储介质
CN115242888A (zh) * 2021-04-02 2022-10-25 深圳市锐速云计算有限公司 四层tcp/udp协议转发真实ip方法及系统
CN115550307A (zh) * 2022-09-20 2022-12-30 中国银行股份有限公司 基于区块链的业务处理方法、业务端、用户端和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468625A (zh) * 2014-12-26 2015-03-25 浙江宇视科技有限公司 拨号隧道代理装置、利用拨号隧道穿越nat的方法
CN105915658A (zh) * 2016-07-04 2016-08-31 上海优刻得信息科技有限公司 获取客户端ip地址的数据调用方法、数据传输方法
CN109361784A (zh) * 2018-12-07 2019-02-19 成都知道创宇信息技术有限公司 一种在四层代理网络环境下获取客户端真实ip的方法
CN110933190A (zh) * 2019-10-18 2020-03-27 平安科技(深圳)有限公司 一种客户端地址获取方法、装置、存储介质及计算机设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7342918B2 (en) * 2003-04-15 2008-03-11 American Express Travel Related Services Co., Inc. Transaction card information access web service
CN103139185A (zh) * 2011-12-02 2013-06-05 中科信息安全共性技术国家工程研究中心有限公司 一种实现安全反向代理服务的方法
CN103491200A (zh) * 2012-06-13 2014-01-01 中国移动通信集团贵州有限公司 一种虚拟终端服务器传递ip地址的方法、装置及系统
CN109743197B (zh) * 2018-12-24 2022-07-01 中信百信银行股份有限公司 一种基于优先级配置的防火墙部署系统和方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104468625A (zh) * 2014-12-26 2015-03-25 浙江宇视科技有限公司 拨号隧道代理装置、利用拨号隧道穿越nat的方法
CN105915658A (zh) * 2016-07-04 2016-08-31 上海优刻得信息科技有限公司 获取客户端ip地址的数据调用方法、数据传输方法
CN109361784A (zh) * 2018-12-07 2019-02-19 成都知道创宇信息技术有限公司 一种在四层代理网络环境下获取客户端真实ip的方法
CN110933190A (zh) * 2019-10-18 2020-03-27 平安科技(深圳)有限公司 一种客户端地址获取方法、装置、存储介质及计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于nginx的安全管理系统的设计与实现;吴迪;《信息科技辑》;20131016;全文 *

Also Published As

Publication number Publication date
CN111586200A (zh) 2020-08-25
WO2021217869A1 (zh) 2021-11-04

Similar Documents

Publication Publication Date Title
CN111586200B (zh) 一种传递客户端真实ip地址的方法及系统
US7209491B2 (en) Method and system for transmitting data in a packet based communication network
US6775262B1 (en) Method and apparatus for mapping an IP address to an MSISDN number within a wireless application processing network
US7388844B1 (en) Method and system for initiating a virtual private network over a shared network on behalf of a wireless terminal
US20050259673A1 (en) Method and system for end-to-end communication between a universal integrated circuit card and a remote entity over an IP-based wireless wide area network and the internet
CN102090038B (zh) 固定移动融合(fmc)架构
CN110247848B (zh) 发送报文的方法、网络设备及计算机可读存储介质
KR20060028740A (ko) 단말기 및 통신 시스템
CN107360205B (zh) 数据报文的传输方法及装置、系统
JP2005531949A (ja) 移動無線ネットワークの無線ネットワークコントローラと他の装置との間でipパケットを伝送するための方法及び装置
CN111510476B (zh) 通信方法、装置、计算机设备和计算机可读存储介质
WO2021017849A1 (zh) 一种实现5g用户注册的方法、网元设备及存储介质
US20140029493A1 (en) Wireless Communication Interworking Function
JP5447522B2 (ja) 移動無線通信装置内のクライアント−サーバ間通信
US20230189368A1 (en) Associating transport identifiers with quality of service flows
CN102710765A (zh) 一种cdn服务器实现透明代理的方法、装置及系统
CN110290130B (zh) Volte数据的传输方法、装置、接入网设备以及存储介质
CN111788812B (zh) 用于分组数据转换的技术
JP3881198B2 (ja) モバイルip通信システム、モバイルip通信方法、ネットワーク中継装置及び移動体端末
US6956860B1 (en) Facsimile services in mobile networks
KR100997554B1 (ko) 무선 통신 시스템에서의 헤더 압축 패킷 처리 방법, 단말,기지국, 및 제어국
CN114786167B (zh) 无线通信方法和设备
CN114221785A (zh) 一种无感边界数据交换方法
CN106900008B (zh) 宽带部署lte基站的数据流优化方法与系统
JP4670866B2 (ja) トランスレータ

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