CN107071079A - 一种私网终端获取公网ip的方法及系统 - Google Patents

一种私网终端获取公网ip的方法及系统 Download PDF

Info

Publication number
CN107071079A
CN107071079A CN201710131923.4A CN201710131923A CN107071079A CN 107071079 A CN107071079 A CN 107071079A CN 201710131923 A CN201710131923 A CN 201710131923A CN 107071079 A CN107071079 A CN 107071079A
Authority
CN
China
Prior art keywords
public network
terminal
icmp
private net
module
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
CN201710131923.4A
Other languages
English (en)
Other versions
CN107071079B (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.)
China Southern Power Grid Internet Service Co ltd
Original Assignee
Shanghai Feixun Data Communication 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 Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201710131923.4A priority Critical patent/CN107071079B/zh
Publication of CN107071079A publication Critical patent/CN107071079A/zh
Application granted granted Critical
Publication of CN107071079B publication Critical patent/CN107071079B/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/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5061Pools of addresses

Landscapes

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

Abstract

本发明公开一种私网终端获取公网IP的方法:私网终端向公网终端发送ICMP请求报文,ICMP请求报文含有定义为请求自身公网IP的特征码;公网终端在接收到报文后,检测该报文中是否含有特征码,若是,则公网终端提取该报文的私网终端所在的源IP地址,构造ICMP应答报文,并将含有特征码及私网终端所在的源IP地址的ICMP应答报文发送给私网终端;私网终端在接收到该应答报文后,检测该应答报文中是否含有特征码,若是,则提取ICMP应答报文中的私网终端所在的源IP地址作为为私网终端的公网IP地址。本发明通过改进的ICMP ping功能,使得处于内网的私网终端可以方便的获取其在公网上的IP。

Description

一种私网终端获取公网IP的方法及系统
技术领域
本发明涉及通信领域,尤其涉及一种私网终端获取公网IP的方法及系统。
背景技术
网络地址转换(Net Address Translation,简称NAT)技术是一种地址映射技术,通常用于子域内具有私网IP地址的主机访问外部主机时将该主机的私网IP地址映射为一个外部唯一可识别的公网IP地址;同时,将外部主机返回给内部主机的公网IP地址映射回内部标志该主机的私网IP地址,使得返回的数据包正确到达内部目的主机。该技术使得不同私有网络可以使用相同的私网IP地址段而不会导致外部网络的地址信息出现混乱,从而扩展了IP地址的应用范围,在一定程度上缓解了当前Ipv4地址空间不足的问题。
NAT一般可分为三种类型:静态NAT、动态不可重用NAT、动态可重用NAT(端口地址翻译/网络端口地址翻译),端口地址翻译英文全称为Port Address Translation,简称PAT,网络端口地址翻译英文全称为Net Port Address Translation,简称NAPT。
(1)静态NAT:内部私网IP地址和外部公网IP地址的映射是静态一一对应的。如果结合端口来实现静态映射关系,就是端口重定向或静态PAT/NAPT。
(2)动态不可重用NAT:使用外部公网IP地址池技术,将一些公网IP地址存放到一个地址池中。在进行NAT转换时,从这个公网IP地址池中获取一个可用的公网IP地址进行转换。通信完毕之后,该公网IP地址也被释放回地址池中。在使用过程中,一个公网IP地址只能有一个映射关系。
(3)动态可重用NAT(PAT/NAPT)。与动态不可重用模式相比,通信的映射是通过IP地址和端口号的组合来完成的。
一般而言,在中国由于IPv4地址的严重缺乏,我们在接入Internet时会把网络划分为公网和内网,内网和公网之间通过NAT进行转化。所以当我们在内网布置AP时,会碰到这么一个问题,AP无法知道自己的公网地址,只知道自己的内网地址。而某些应用要求AP必须知道自己的公网地址。
发明内容
本发明提供一种私网终端获取公网IP的方法及系统,用以解决现有技术中存在私网终端只知道自己私网地址,而不知道自己的公网IP地址的问题。
本发明方法包括:
S100私网终端向公网终端发送ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
S200所述公网终端在接收到所述ICMP请求报文后,检测所述ICMP请求报文中是否含有所述特征码,若是,则进入步骤S300,否则进入步骤S400;
S300所述公网终端提取所述ICMP请求报文的所述私网终端所在的源IP地址,构造ICMP应答报文,并将含有所述特征码及所述私网终端所在的源IP地址的ICMP应答报文发送给所述私网终端;
S400所述公网终端复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并将所述ICMP应答报文发送给所述私网终端;
S500所述私网终端在接收到所述ICMP应答报文后,检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端所在的源IP地址,所述私网终端所在的源IP地址即为所述私网终端的公网IP地址。
ICMP是(Internet Control Message Protocol)Internet控制报文协议,属于网络层协议,它是TCP/IP协议族的一个子协议,主要用于在主机与路由器之间传递控制信息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。本发明则是在ICMP的ping功能基础上,双方定义好代表“获取公网IP”的特征码,利用公网终端接收ICMP请求报文时,知晓作为发送方的私网终端所在的公网的源IP地址,因此如果检测到该请求报文中含有所述特征码时,则提取私网终端所在的源IP地址,并构建含有提取的源IP地址及特征码的ICMP回应报文给到私网终端,从而使得私网终端能从接收到的ICMP回应报文中获悉自己的公网IP。
进一步地,所述步骤S100包括步骤:
S110私网终端将目的地址为公网终端的ICMP请求报文发送给路由器,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
S120所述路由器在接收到所述ICMP请求报文后,根据路由表项将所述ICMP请求报文发送给所述公网终端。
进一步地,还包括步骤:
S010在所述私网终端中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;
S020在所述公网终端中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
进一步地,所述特征码位于所述ICMP请求报文的有效载荷字段的首部。
进一步地,所述特征码长度小于或等于10字节。
本发明还提供一种私网终端获取公网IP的系统,包括私网终端、路由器、公网终端,所述私网终端通过所述路由器与所述公网终端通信连接,所述私网终端包括第一报文构建模块、第一报文收发模块、第一检测模块,所述第一报文收发模块分别与所述第一报文构建模块、第一检测模块相连;所述公网终端包括第二报文构建模块、第二报文收发模块、第二检测模块、IP提取模块,所述第二检测模块分别与所述第二报文构建模块、所述第二检测模块及所述IP提取模块,所述IP提取模块与所述第二报文构建模块相连;其中:所述私网终端的第一报文构建模块构建用于获取自身公网IP的ICMP请求报文,所述第一报文收发模块通过所述路由器向所述公网终端的第二报文收发模块发送所述ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;所述公网终端的第二报文收发模块在接收到所述ICMP请求报文后,所述公网终端的第二检测模块检测所述ICMP请求报文中是否含有所述特征码,若是,则通过所述IP提取模块提取所述ICMP请求报文的所述私网终端所在的源IP地址,所述第二报文构建模块构建ICMP应答报文,并将含有所述特征码及所述私网终端所在的源IP地址的ICMP应答报文通过所述路由器发送给所述私网终端的第一报文收发模块;若所述公网终端的第二检测模块未检测到所述ICMP请求报文中含有所述特征码,则所述第二报文构建模块复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并通过所述第二报文收发模块将所述ICMP应答报文通过所述路由器发送给所述私网终端的第一报文收发模块;所述私网终端的第一报文收发模块在接收到所述ICMP应答报文后,所述私网终端的第一检测模块检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端所在的源IP地址,所述私网终端所在的源IP地址即为所述私网终端的公网IP地址。
进一步地,所述路由器包括中转模块、存储模块、及分别与所述中转模块、存储模块相连的查找模块,其中:所述私网终端的第一报文收发模块将目的地址为公网终端的ICMP请求报文发送给所述路由器的中转模块,所述ICMP请求报文含有定义为请求自身公网IP的特征码;所述路由器的中转模块在接收到所述ICMP请求报文后,通过所述查找模块在所述存储模块中存储的路由表项查找公网终端的IP地址;所述路由器的中转模块根据所述查找到的公网终端IP地址,将所述ICMP请求报文发送给所述公网终端的第二报文收发模块。
进一步地,所述私网终端还包括与所述第一报文构建模块相连的第一设置模块,所述公网终端还包括与所述第二报文构建模块相连的第二设置模块,其中:所述私网终端的第一设置模块在所述私网终端中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;所述公网终端的第二设置模块在所述公网终端中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
进一步地,所述特征码位于所述ICMP请求报文的有效载荷字段的首部。
进一步地,所述特征码长度小于或等于10字节。
本发明通过改进的ICMP ping功能,使得处于内网位置的AP可以方便的获取其在公网上的IP。本发明提出的上述方案,对现有系统的改动很小,不会影响系统的兼容性,而且实现简单、高效。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种私网终端获取公网IP的方法实施例一流程图;
图2为本发明一种私网终端获取公网IP的方法另一实施例流程图;
图3为本发一种私网终端获取公网IP的系统实施例框图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明公开了一种本发明方法,实施例一如图1所示,包括:
S100私网终端向公网终端发送ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
S200所述公网终端在接收到所述ICMP请求报文后,检测所述ICMP请求报文中是否含有所述特征码,若是,则进入步骤S300,否则进入步骤S400;
S300所述公网终端提取所述ICMP请求报文的所述私网终端所在的源IP地址,构造ICMP应答报文,并将含有所述特征码及所述私网终端所在的源IP地址的ICMP应答报文发送给所述私网终端;
S400所述公网终端复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并将所述ICMP应答报文发送给所述私网终端;
S500所述私网终端在接收到所述ICMP应答报文后,检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端所在的源IP地址,所述私网终端所在的源IP地址即为所述私网终端的公网IP地址。
具体的,假如在私网上的主机A想要知道自己的公网IP地址,通过本发明实现方式如下:首先,私网上的主机A来ping公网上终端B的IP地址后,Ping命令会构建一个固定格式的ICMP请求数据包,该请求数据包会包含特征码X,然后由ICMP协议将这个数据包连同终端B的IP地址一起交给IP层协议(和ICMP一样,实际上是一组后台运行的进程),IP层协议通过终端B的IP地址和自己的子网掩码,发现它跟自己不属于同一网段内,就直接交给路由处理,路由得到这个数据帧后再跟公网终端B进行联系,将ICMP请求报文发送给公网终端B,终端B在收到ICMP请求报文后检测看该报文中是否含有特征码X,如果是的话,则说明是私网终端A想要获取自身的公网IP地址,于是,公网终端B便提取ICMP请求报文的源IP地址,也就是路由的IP地址,然后构建ICMP应答报文,该报文中包含了特征码X和提取的源IP地址,然后将该应答报文发送给路由,路由在接收到该ICMP应答报文后再转发给主机A,主机A在收到应答报文后,先要查看是否有特征码X,有的话则说明公网终端B对获取公网IP的请求报文做了回应,主机A可从应答的报文中看到其所在网络的公网IP地址。
在上述实施例中,我们还需要对私网终端的ping、公网终端的ping功能进行相应的设置,具体的,包括步骤:
S010在所述私网终端中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;
S020在所述公网终端中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
比如我们定义“321532”为请求自身公网IP的特征码,设置报文的payload(有效载荷)格式为一6byte的特征码,其后为一字符串:“Reply with my IP”,ICMP一般要求最小payload为64字节,我们对不满64字节的部分可以用0来填充,所以整个payload格式如下:
特征码 “Reply with my IP” Pad 0
当然,由于我们已经定义了特征码,因此,特征码后的字符串我们也可以不设定,或者干脆全用0填充亦可。只是如果定义了特征码和字符串的话,可以进行双重的校验,以便公网终端更加确定该报文是为了获取公网IP而来。避免请求报文由于偶然也出现了特征码数据,但并不是为了获取公网IP。
同样的,公网终端也需要进行相应的设置,同样需要定义请求公网IP的特征码,以便收到请求报文后,若发现该请求报文中含有特征码,便知道这个报文是发送方想要获取自身的公网IP,从而进行相应的提取动作,应答的报文的payload同样需要设置格式,相应的,应答报文的payload同样均为64字节,分成三部分:特征码、XX.XX.XX.XX(提取的公网IP地址)、若干0(不64字节部分用0填充)。
较佳的,上述特征码位于所述ICMP请求报文的有效载荷字段的首部。只要双方约定好位置即可,一般位于首部的话便于检测。
较佳的,所述特征码长度小于或等于10字节。值得注意的是,特征码的长度太小则容易与普通的报文混淆,特征码长度太长也较为繁冗,因此一般设定10字节左右较为合适。
本发明方法的另一实施例,首先假设有某台服务器处于公网位置。我们现在改进ICMP,即ping。正常按照ICMP协议,当某个IP终端A ping另外一个终端B,即发送ICMPrequest报文时,我们会在ICMP request报文的payload中加一段数据。当B收到ICMPresponse时,会构建一个ICMP response报文,对于response报文的payload,B会原封不动的复制A的payload。
现在我们进行改进:我们把payload定义格式如下:
Payload最前面为一10byte特征码,例如1234512345,可自定义。其后为一字符串:“Vendor:Please reply with my public IPv4address”,因为ICMP一般要求最小payload为64byte,我们对字符串后门不满64byte的部分填充0。
所以整个payload(64bypte长)如下所示:
特征码 “Vendor:Please reply with my public IPv4ddress” Pad 0
现在AP为了获得自己的公网地址,发送这个改进的ICMP request给B。当B收到后,开始检测payload的前10byte,如果不是所定义的特征码,则B回送正常的ICMP response给A,即复制ICMP request的payload到ICMP response中。如果是特征码。则ICMP response按以下格式:
特征码 “xx.xx.xx.xx” Pad 0
其中ICMP response的特征码和ICMP request的特征码一致,字符串“xx.xx.xx.xx”是公网地址。注:B由于在公网上,可以提取ICMP request的源IP地址,而这个地址一定就A的公网地址。
基于相同的技术构思,本发明实施例还提供一种私网终端100获取公网IP的系统,该系统可执行上述方法实施例。本发明实施例提供的系统如图3所示,包括私网终端100、路由器200、公网终端300,所述私网终端100通过所述路由器200与所述公网终端300通信连接,所述私网终端100包括第一报文构建模块110、第一报文收发模块120、第一检测模块130,所述第一报文收发模块120分别与所述第一报文构建模块110、第一检测模块130相连;所述公网终端300包括第二报文构建模块310、第二报文收发模块330、第二检测模块320、IP提取模块340,所述第二检测模块320分别与所述第二报文构建模块310、所述第二检测模块320及所述IP提取模块340,所述IP提取模块340与所述第二报文构建模块310相连;其中:所述私网终端100的第一报文构建模块110构建用于获取自身公网IP的ICMP请求报文,所述第一报文收发模块120通过所述路由器200向所述公网终端300的第二报文收发模块330发送所述ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;所述公网终端300的第二报文收发模块330在接收到所述ICMP请求报文后,所述公网终端300的第二检测模块320检测所述ICMP请求报文中是否含有所述特征码,若是,则通过所述IP提取模块340提取所述ICMP请求报文的所述私网终端100所在的源IP地址,所述第二报文构建模块310构建ICMP应答报文,并将含有所述特征码及所述私网终端100所在的源IP地址的ICMP应答报文通过所述路由器200发送给所述私网终端100的第一报文收发模块120;若所述公网终端300的第二检测模块320未检测到所述ICMP请求报文中含有所述特征码,则所述第二报文构建模块310复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并通过所述第二报文收发模块330将所述ICMP应答报文通过所述路由器200发送给所述私网终端100的第一报文收发模块120;所述私网终端100的第一报文收发模块120在接收到所述ICMP应答报文后,所述私网终端100的第一检测模块130检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端100所在的源IP地址,所述私网终端100所在的源IP地址即为所述私网终端100的公网IP地址。
在上述系统实施例一的基础上,所述路由器200包括中转模块210、存储模块230、及分别与所述中转模块210、存储模块230相连的查找模块220,其中:所述私网终端100的第一报文收发模块120将目的地址为公网终端300的ICMP请求报文发送给所述路由器200的中转模块210,所述ICMP请求报文含有定义为请求自身公网IP的特征码;所述路由器200的中转模块210在接收到所述ICMP请求报文后,通过所述查找模块220在所述存储模块230中存储的路由表项查找公网终端300的IP地址;所述路由器200的中转模块210根据所述查找到的公网终端300IP地址,将所述ICMP请求报文发送给所述公网终端300的第二报文收发模块330。
由于私网终端100与公网终端300不在同一网段(即不在同一网络),因此需要路由器200来进行中转。
在上述任一实施例的基础上,所述私网终端100还包括与所述第一报文构建模块110相连的第一设置模块140,所述公网终端300还包括与所述第二报文构建模块310相连的第二设置模块350,其中:所述私网终端100的第一设置模块140在所述私网终端100中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;所述公网终端300的第二设置模块350在所述公网终端300中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
本发明系统在用于获取公网IP之前,需要对各自终端上的ICMP的ping功能进行相应的设置。
上述任一实施例中,所述特征码位于所述ICMP请求报文的有效载荷字段的首部。
上述任一实施例中,所述特征码长度小于或等于10字节。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种私网终端获取公网IP的方法,其特征在于,包括步骤:
S100私网终端向公网终端发送ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
S200所述公网终端在接收到所述ICMP请求报文后,检测所述ICMP请求报文中是否含有所述特征码,若是,则进入步骤S300,否则进入步骤S400;
S300所述公网终端提取所述ICMP请求报文的所述私网终端所在的源IP地址,构造ICMP应答报文,并将含有所述特征码及所述私网终端所在的源IP地址的ICMP应答报文发送给所述私网终端;
S400所述公网终端复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并将所述ICMP应答报文发送给所述私网终端;
S500所述私网终端在接收到所述ICMP应答报文后,检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端所在的源IP地址,所述私网终端所在的源IP地址即为所述私网终端的公网IP地址。
2.根据权利要求1所述的一种私网终端获取公网IP的方法,其特征在于,所述步骤S100包括步骤:
S110私网终端将目的地址为公网终端的ICMP请求报文发送给路由器,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
S120所述路由器在接收到所述ICMP请求报文后,根据路由表项将所述ICMP请求报文发送给所述公网终端。
3.根据权利要求1或2所述的一种私网终端获取公网IP的方法,其特征在于,还包括步骤:
S010在所述私网终端中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;
S020在所述公网终端中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
4.根据权利要求1所述的一种私网终端获取公网IP的方法,其特征在于,所述特征码位于所述ICMP请求报文的有效载荷字段的首部。
5.根据权利要求1所述的一种私网终端获取公网IP的方法,其特征在于,所述特征码长度小于或等于10字节。
6.一种私网终端获取公网IP的系统,其特征在于,包括私网终端、路由器、公网终端,所述私网终端通过所述路由器与所述公网终端通信连接,所述私网终端包括第一报文构建模块、第一报文收发模块、第一检测模块,所述第一报文收发模块分别与所述第一报文构建模块、第一检测模块相连;所述公网终端包括第二报文构建模块、第二报文收发模块、第二检测模块、IP提取模块,所述第二检测模块分别与所述第二报文构建模块、所述第二检测模块及所述IP提取模块,所述IP提取模块与所述第二报文构建模块相连;其中:
所述私网终端的第一报文构建模块构建用于获取自身公网IP的ICMP请求报文,所述第一报文收发模块通过所述路由器向所述公网终端的第二报文收发模块发送所述ICMP请求报文,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
所述公网终端的第二报文收发模块在接收到所述ICMP请求报文后,所述公网终端的第二检测模块检测所述ICMP请求报文中是否含有所述特征码,若是,则通过所述IP提取模块提取所述ICMP请求报文的所述私网终端所在的源IP地址,所述第二报文构建模块构建ICMP应答报文,并将含有所述特征码及所述私网终端所在的源IP地址的ICMP应答报文通过所述路由器发送给所述私网终端的第一报文收发模块;
若所述公网终端的第二检测模块未检测到所述ICMP请求报文中含有所述特征码,则所述第二报文构建模块复制所述ICMP请求报文的有效载荷字段至ICMP应答报文中,并通过所述第二报文收发模块将所述ICMP应答报文通过所述路由器发送给所述私网终端的第一报文收发模块;
所述私网终端的第一报文收发模块在接收到所述ICMP应答报文后,所述私网终端的第一检测模块检测所述ICMP应答报文中是否含有所述特征码,若是,则提取所述ICMP应答报文中的所述私网终端所在的源IP地址,所述私网终端所在的源IP地址即为所述私网终端的公网IP地址。
7.根据权利要求6所述的一种私网终端获取公网IP的系统,其特征在于,
所述路由器包括中转模块、存储模块、及分别与所述中转模块、存储模块相连的查找模块,其中:
所述私网终端的第一报文收发模块将目的地址为公网终端的ICMP请求报文发送给所述路由器的中转模块,所述ICMP请求报文含有定义为请求自身公网IP的特征码;
所述路由器的中转模块在接收到所述ICMP请求报文后,通过所述查找模块在所述存储模块中存储的路由表项查找公网终端的IP地址;
所述路由器的中转模块根据所述查找到的公网终端IP地址,将所述ICMP请求报文发送给所述公网终端的第二报文收发模块。
8.根据权利要求6或7所述的一种私网终端获取公网IP的系统,其特征在于,所述私网终端还包括与所述第一报文构建模块相连的第一设置模块,所述公网终端还包括与所述第二报文构建模块相连的第二设置模块,其中:
所述私网终端的第一设置模块在所述私网终端中定义请求自身公网IP的特征码,设置用于获取公网IP的ICMP请求报文的有效载荷字段的格式;
所述公网终端的第二设置模块在所述公网终端中定义请求公网IP的特征码,设置用于获取公网IP的ICMP应答报文的有效载荷字段的格式。
9.根据权利要求6所述的一种私网终端获取公网IP的系统,其特征在于,所述特征码位于所述ICMP请求报文的有效载荷字段的首部。
10.根据权利要求6所述的一种私网终端获取公网IP的系统,其特征在于,所述特征码长度小于或等于10字节。
CN201710131923.4A 2017-03-07 2017-03-07 一种私网终端获取公网ip的方法及系统 Active CN107071079B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710131923.4A CN107071079B (zh) 2017-03-07 2017-03-07 一种私网终端获取公网ip的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710131923.4A CN107071079B (zh) 2017-03-07 2017-03-07 一种私网终端获取公网ip的方法及系统

Publications (2)

Publication Number Publication Date
CN107071079A true CN107071079A (zh) 2017-08-18
CN107071079B CN107071079B (zh) 2020-10-20

Family

ID=59622836

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710131923.4A Active CN107071079B (zh) 2017-03-07 2017-03-07 一种私网终端获取公网ip的方法及系统

Country Status (1)

Country Link
CN (1) CN107071079B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108768849A (zh) * 2018-06-20 2018-11-06 新华三技术有限公司 报文处理方法及装置
CN111897581A (zh) * 2020-09-25 2020-11-06 广州朗国电子科技有限公司 息屏唤醒方法、装置、存储介质及一体机设备
CN112104590A (zh) * 2019-06-18 2020-12-18 浙江宇视科技有限公司 一种检测私网内网络设备私接公网的方法及系统
CN113709242A (zh) * 2021-08-26 2021-11-26 华为技术有限公司 报文转发方法和通信装置
CN114629816A (zh) * 2022-03-14 2022-06-14 京东科技信息技术有限公司 公网ip网络状态探测方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030236913A1 (en) * 2002-06-25 2003-12-25 Hoban Adrian C. Network address translation for internet control message protocol packets
CN101052009A (zh) * 2007-05-14 2007-10-10 中兴通讯股份有限公司 私网网元用公网地址借助nat设备实现内部访问的方法
CN101179506A (zh) * 2007-11-26 2008-05-14 中兴通讯股份有限公司 私网终端对公网终端进行检测的方法
CN101478546A (zh) * 2009-01-23 2009-07-08 成都市华为赛门铁克科技有限公司 一种保护网络安全的方法和网络安全保护设备
CN101873359A (zh) * 2010-06-28 2010-10-27 北京神州泰岳软件股份有限公司 实现udp打洞的方法
CN102158569A (zh) * 2011-06-02 2011-08-17 杭州华三通信技术有限公司 一种基于地址转换的数据传输方法及其设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030236913A1 (en) * 2002-06-25 2003-12-25 Hoban Adrian C. Network address translation for internet control message protocol packets
CN101052009A (zh) * 2007-05-14 2007-10-10 中兴通讯股份有限公司 私网网元用公网地址借助nat设备实现内部访问的方法
CN101179506A (zh) * 2007-11-26 2008-05-14 中兴通讯股份有限公司 私网终端对公网终端进行检测的方法
CN101478546A (zh) * 2009-01-23 2009-07-08 成都市华为赛门铁克科技有限公司 一种保护网络安全的方法和网络安全保护设备
CN101873359A (zh) * 2010-06-28 2010-10-27 北京神州泰岳软件股份有限公司 实现udp打洞的方法
CN102158569A (zh) * 2011-06-02 2011-08-17 杭州华三通信技术有限公司 一种基于地址转换的数据传输方法及其设备

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108768849A (zh) * 2018-06-20 2018-11-06 新华三技术有限公司 报文处理方法及装置
CN108768849B (zh) * 2018-06-20 2020-09-08 新华三技术有限公司 报文处理方法及装置
CN112104590A (zh) * 2019-06-18 2020-12-18 浙江宇视科技有限公司 一种检测私网内网络设备私接公网的方法及系统
CN112104590B (zh) * 2019-06-18 2023-03-24 浙江宇视科技有限公司 一种检测私网内网络设备私接公网的方法及系统
CN111897581A (zh) * 2020-09-25 2020-11-06 广州朗国电子科技有限公司 息屏唤醒方法、装置、存储介质及一体机设备
CN111897581B (zh) * 2020-09-25 2021-08-31 广州朗国电子科技有限公司 息屏唤醒方法、装置、存储介质及一体机设备
CN113709242A (zh) * 2021-08-26 2021-11-26 华为技术有限公司 报文转发方法和通信装置
CN114629816A (zh) * 2022-03-14 2022-06-14 京东科技信息技术有限公司 公网ip网络状态探测方法及系统
CN114629816B (zh) * 2022-03-14 2023-11-03 京东科技信息技术有限公司 公网ip网络状态探测方法及系统

Also Published As

Publication number Publication date
CN107071079B (zh) 2020-10-20

Similar Documents

Publication Publication Date Title
CN107071079A (zh) 一种私网终端获取公网ip的方法及系统
JP5335886B2 (ja) ローカル・ネットワーク間でデータ・パケットを通信するための方法および装置
CN102934410B (zh) 用私用ipv4可达性增强ds-lite
US10382593B2 (en) IPv4/IPv6 bridge
CN102215273B (zh) 一种为内网用户提供外网接入的方法和装置
US7930370B2 (en) Method and system for remote configuration of managed nodes
CN103856580B (zh) 一种IPv6客户机访问IPv4服务器的方法
CN106302842A (zh) 一种域名解析方法、装置及系统
CN109076082A (zh) 面向身份的网络和协议中的匿名身份
CN107222587B (zh) 一种远程访问私网设备的方法
US8472420B2 (en) Gateway device
CN104168140B (zh) Vtep异常情况处理方法及装置
CN103618801A (zh) 一种p2p资源共享的方法、设备及系统
US8605736B2 (en) Method, system and apparatus for heterogeneous addressing mapping
WO2020038443A1 (zh) 桥接通信的方法和设备
CN103581361A (zh) 一种域名解析代理方法、设备及系统
CN102970387A (zh) 一种域名解析方法、装置及系统
CN101610266A (zh) 一种检测地址解析协议arp报文合法性的方法及装置
CN103795581A (zh) 地址处理方法和设备
CN114189492A (zh) 一种基于网络地址转换技术的网卡压力测试方法和系统
CN103888554B (zh) IPv4与IPv6互通的域名解析方法和系统
US10904037B2 (en) Relaying apparatus, relaying method, and relaying system
CN104506665B (zh) 一种IPv4/IPv6地址区分方法及系统
WO2016095751A1 (zh) 一种域名解析方法及装置
CN101355568A (zh) 一种静态pat支持绑定路由器接口的方法及系统

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
TR01 Transfer of patent right

Effective date of registration: 20201027

Address after: 318015 no.2-3167, zone a, Nonggang City, no.2388, Donghuan Avenue, Hongjia street, Jiaojiang District, Taizhou City, Zhejiang Province

Patentee after: Taizhou Jiji Intellectual Property Operation Co.,Ltd.

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Patentee before: Phicomm (Shanghai) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231109

Address after: Room 606-609, Compound Office Complex Building, No. 757, Dongfeng East Road, Yuexiu District, Guangzhou, Guangdong Province, 510699

Patentee after: China Southern Power Grid Internet Service Co.,Ltd.

Address before: 318015 no.2-3167, area a, nonggangcheng, 2388 Donghuan Avenue, Hongjia street, Jiaojiang District, Taizhou City, Zhejiang Province

Patentee before: Taizhou Jiji Intellectual Property Operation Co.,Ltd.

TR01 Transfer of patent right