CN114531417B - 一种通信方法及装置 - Google Patents

一种通信方法及装置 Download PDF

Info

Publication number
CN114531417B
CN114531417B CN202011193498.XA CN202011193498A CN114531417B CN 114531417 B CN114531417 B CN 114531417B CN 202011193498 A CN202011193498 A CN 202011193498A CN 114531417 B CN114531417 B CN 114531417B
Authority
CN
China
Prior art keywords
external network
transaction
port number
intranet
outgoing message
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
CN202011193498.XA
Other languages
English (en)
Other versions
CN114531417A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011193498.XA priority Critical patent/CN114531417B/zh
Priority to EP21885139.2A priority patent/EP4216653A4/en
Priority to PCT/CN2021/126346 priority patent/WO2022089412A1/zh
Publication of CN114531417A publication Critical patent/CN114531417A/zh
Priority to US18/140,779 priority patent/US20230269216A1/en
Application granted granted Critical
Publication of CN114531417B publication Critical patent/CN114531417B/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/2517Translation of Internet protocol [IP] addresses using port numbers
    • 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/2514Translation of Internet protocol [IP] addresses between local and global 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/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • 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/255Maintenance or indexing of mapping tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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/2596Translation of addresses of the same type other than IP, e.g. translation from MAC to MAC addresses

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

本申请涉及通信技术领域,公开了一种通信方法及装置,用以提高外网IP地址与内网IP地址的转换比率,从而提高外网IP地址的利用率。该方法为:接收内网设备发往外网的出报文,其中所述出报文携带内网Transaction‑ID,所述Transaction‑ID用于标记一组域名系统DNS出报文和相应的入报文;为所述出报文分配外网IP、外网端口号和外网Transaction‑ID;将所述出报文的源IP、源端口号和内网Transaction‑ID替换为所述外网IP、外网端口号和外网Transaction‑ID后发送。

Description

一种通信方法及装置
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种通信方法及装置。
背景技术
网络地址转换(network address translation,NAT)技术广泛应用于电信运营商网络,用于外网网络地址和内网网络地址的转换,通过部署运营商级NAT(carrier-gradeNAT,CGN)设备,运营商可以有效地利用有限的外网互联网协议(internet protocol,IP)地址为更多的用户提供因特网(internet)上网服务。但随着全球网际协议版本4(internetprotocol version 4,IPv4)地址全部耗尽,外网IP地址资源越来越紧张,需要一种更有效利用外网IP地址的网络地址转换方案。
发明内容
本申请实施例提供一种通信方法及装置,用以提高外网IP地址与内网IP地址的转换比率,提高外网IP地址的利用率。
第一方面,本申请提供了一种通信方法,该方法包括:接收内网设备发往外网的出报文,其中所述出报文携带内网事务IDTransaction-ID,所述Transaction-ID用于标记一组域名系统DNS出报文和相应的入报文;为所述出报文分配外网IP、外网端口号和外网Transaction-ID;将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID后发送。
采用上述方法,在现有技术使用网络层和传输层两个维度进行网络地址转换的基础上,针对DNS协议的应用层特征,提出基于DNS应用层Transaction-ID的网络地址转换技术,采用基于DNS应用层Transaction-ID的网络地址转换技术,可以从网络层(IP地址)和传输层(UDP端口)和应用层(Transaction-ID)三个维度进行网络地址转换处理,从而提高外网IP地址与内网IP地址的转换比率,从而提高外网IP的利用率。
在一种可能的设计中,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:根据配置的网络地址转换NAT映射表和所述出报文的源IP、源端口号和内网Transaction-ID,为所述出报文分配外网IP、外网端口号和外网Transaction-ID,其中所述NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。
在另一种可能的设计中,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:在外网IP、外网端口号和外网Transaction-ID资源集合中为所述出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。可选的,为所述出报文分配的外网Transaction-ID与所述出报文的内网Transaction-ID相同或不同。
上述设计中,可以采用静态转换或动态转换的方式,将出报文的源IP(即内网IP)、源端口号(即内网端口号)和内网Transaction-ID转换为外网IP、外网端口号和外网Transaction-ID,丰富了网络地址转换的实现方式,有利于满足不同的通信需求。
在一种可能的设计中,将所述出报文的源IP、源端口号和内网Transaction-ID,与为所述出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
上述设计中,如果采用动态转换的方式,将出报文的源IP(内网IP)、源端口号(内网端口号)和内网Transaction-ID与为出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中,便于对外网发往内网设备的入报文对应的内网IP、内网端口号和内网Transaction-ID的识别与确定,保证入报文传输的可靠性。
在一种可能的设计中,所述方法还包括:接收外网发往内网设备的入报文,其中所述入报文携带外网Transaction-ID;根据所述NAT映射表和所述入报文的目的IP、目的端口号和外网Transaction-ID,为所述入报文分配内网IP、内网端口号和内网Transaction-ID;将所述入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID后发送。
上述设计中,根据NAT映射表对外网发往内网设备的入报文的目的IP、目的端口号和外网Transaction-ID进行转换,有利于保证内网设备对入报文的准确接收,提高入报文传输的可靠性。
第二方面,本申请实施例提供一种通信装置,该装置具有实现上述第一方面或者第一方面的任一种可能的设计中方法的功能,所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的单元(模块),比如包括通信单元和处理单元。
在一个可能的设计中,该装置可以是芯片或者集成电路。
在一个可能的设计中,该装置包括处理器和通信接口,所述处理器与所述通信接口耦合,用于实现上述第一方面或者第一方面的任一种可能的设计中所述的方法。可以理解的是,通信接口可以为收发器或输入输出接口。该装置还可以包括存储器,所述存储器存储有可被处理器执行的用于实现上述第一方面或者第一方面的任一种可能的设计中所述的方法的程序。
在一个可能的设计中,该装置可以为NAT设备。
第三方面,本申请提供一种计算机可读存储介质,所述存储介质存储有计算机指令,当所述计算机指令被执行时,可以实现上述第一方面或者第一方面的任一种可能的设计中所述的方法。
第四方面,本申请还提供一种计算机程序产品,包括计算机程序或指令,当所述计算机程序或指令被执行时,可以实现上述第一方面或者第一方面的任一种可能的设计中所述的方法。
第五方面,本申请实施例提供一种芯片,所述芯片用于执行存储器中存储的计算机程序或指令,实现如第一方面或者第一方面的任一种可能的设计中所述的方法。
上述第二方面至第五方面所能达到的技术效果请参照上述第一方面所能达到的技术效果,这里不再重复赘述。
附图说明
图1为本申请实施例提供的通信系统架构示意图;
图2为本申请实施例提供的通信过程示意图;
图3为本申请实施例提供的通信装置结构示意图之一;
图4为本申请实施例提供的通信装置结构示意图之二。
具体实施方式
图1为本申请实施例提供的一种可能的通信系统架构示意图,包括NAT设备、内网设备和外网设备。NAT设备可以将网络分为两个,分别为内网和外网。内网也可以称为私网或私有网络,例如企业用户或家庭用户使用的局域网(local area network,LAN),外网也可以称为公网或公有网络,例如广域网(wide area network,WAN),也即因特网(internet)。使用内网通信的设备称为内网设备,使用外网通信的设备称为外网设备。NAT设备位于内网和外网之间,内网设备与外网设备之间通过NAT设备进行通信。例如:内网设备发出的报文的内网网络地址经过NAT设备后,在外网中有一个经过NAT设备转换后的外网网络地址来表示,外网设备仅知道转换后的外网网络地址,而不知道报文在内网中的内网网络地址;同样外网设备发出的报文的外网网络地址经过NAT设备后,在内网中有一个经过NAT设备转换后的内网网络地址来表示,内网设备仅知道转换后的内网网络地址,而不知道报文在外网中的外网网络地址。
在介绍本申请实施例之前,首先对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
1)、NAT技术,在1994年提出,当时专用网(即内网)中的一些设备本已经分配本地IP地址(即内网IP地址),但又想和internet(即外网)上的设备通信时,可使用NAT方法。这种方法需要在内网连接到外网的路由器上安装NAT软件。装有NAT软件的路由器可以叫做NAT路由器,它至少有一个有效的外网IP地址,这样内网中的设备在和外界通信时,都要在NAT路由器上将其内网IP地址转换为外网IP地址,才能和外网连接。
目前基础NAT(basic-NAT)技术,仅对IP地址进行转换,也即仅在内网设备发往外网的出报文通过NAT设备时,将出报文中的内网IP地址转换为外网IP地址,将外网设备发往内网的入报文中的外网IP地址转换为内网IP地址,对外网IP地址与内网IP地址的转换比率为1:1。为了便于描述,在本申请的后续描述中,也可以将IP地址简称为IP,不再另行说明。
示例性的:对于内网设备发往外网的出报文,将出报文中的内网IP转换为外网IP的示例如表1所示,其中Src IP表示源IP、Dst IP表示目的IP,出报文的Src IP携带内网设备的本地IP,即内网IP,NAT设备将出报文中Src IP由内网IP转换为外网IP,如将UIP1转换为EIP1、UIP2转换为EIP2等,其中UIP表示内网IP,EIP表示外网IP,可见表1中内网IP和外网IP的转换比率为1:1。
表1
2)、网络地址和端口转换(network address and port translation,NAPT)技术,是在basic-NAT技术基础上的增强,增加了端口维度的处理,它使用一个合法外网IP,以不同的用户数据报协议(user datagram protocol,UDP)端口号与不同的内网IP相对应,也就是<内网IP+内网端口>与<外网IP+外网端口>之间的转换,可用于企业只有一个外网IP,但是有多个设备需要访问外网,或者被外网访问的场景。
示例性的:对于内网设备发往外网的出报文,将出报文中的内网IP和端口号转换为外网IP和外网端口的示例如表2所示,其中Port表示传输层协议、Src IP表示源IP、Srcport表示源端口、Dst IP表示目的IP、Dst port表示目的端口。NAT设备将出报文中Src IP、Src port由内网IP和内网端口号转换为外网IP和外网端口号。如将UIP1、Uport1转换为EIP1、Eport1等,其中UIP表示内网IP、Uport表示内网端口、EIP表示外网IP、Uport表示外网端口。目前一个IP有65536个UDP端口,使用NAPT技术后,理论上一个外网IP可以为65536个内网设备提供服务,即外网IP每个UDP端口对应的内网IP不同,在实际使用中也能达到1个外网IP为128个内网IP提供服务的转换比率。
表2
3)、NAT设备,在本申请实施例中NAT设备可以是指具有网络地址转换功能的路由器、网关、交换机等设备,还可以是CGN设备等。
目前NAT技术工作在网络层(network layer)和传输层(transport layer),并没有针对应用层协议的域名系统(domain name system,DNS)特点进行处理,外网IP与内网IP的转换比率低,并且随着全球IPv4地址的耗尽,外网IP资源越来越紧张,如何提高网络地址的转换比率,尽可能的提高外网IP的利用率成为一个待解决的问题。
DNS协议广泛应用于internet,是最为广泛使用的一种协议。在某些运营商网络中DNS链接比例高达48%,比例高于超文本传输协议(hyper text transfer protoco,HTTP)、超文本传输安全协议(hyper text transfer protocol over securesocket layer,HTTPS)和基于UDP的低时延的互联网传输层协议(quick UDP internet connection,QUIC)等协议。本申请旨在聚焦DNS协议特点,在现有NAPT技术使用网络层(IP地址)和传输层(UDP端口)维度的基础上增加DNS应用层Transaction-ID维度处理,以提高外网IP地址与内网IP地址的转换比率。下面将结合附图,对本申请实施例进行详细描述。
另外,需要理解,在本申请实施例中,至少一个还可以描述为一个或多个,多个可以是两个、三个、四个或者更多个,本申请不做限制。在本申请实施例中,“/”可以表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;“和/或”可以用于描述关联对象存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。为了便于描述本申请实施例的技术方案,在本申请实施例中,可以采用“第一”、“第二”等字样对功能相同或相似的技术特征进行区分。该“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。在本申请实施例中,“示例性的”或者“例如”等词用于表示例子、例证或说明,被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
图2为本申请实施例提供的一种通信过程示意图,该过程包括:
S201:NAT设备接收内网设备发往外网的出报文,其中所述出报文携带内网事务ID(Transaction-ID),所述Transaction-ID用于标记一组DNS出报文和相应的入报文。
不同于现有采用DNS协议的DNS报文,仅在网络层使用IP协议、在传输层使用UDP协议,仅通过IP和端口号标识不同的链接。在本申请实施例中,在应用层DNS协议头部携带Transaction-ID标识符,用于标记一组DNS出报文(或请求报文)和相应的入报文(或相应的响应报文)。
即本申请实施例中传输的报文,在传统报文使用五元组(即源IP地址,源端口,目的IP地址,目的端口和传输层协议)传输的基础上,引入新的维度Transaction-ID,构成六元组,使得现有仅通过IP,或仅通过IP和端口号标识不同的链接,变为通过IP、端口号和Transaction-ID标识不同的链接。而每个外网IP有65536个UDP端口(即有65536个端口号),每个UDP端口有65536个Transaction-ID,理论上DNS业务流的NAT转换比例可以提高到1:65536(1个外网IP的65536个端口)*65536(1个端口的65536个Transaction-ID),即外网IP的任意一个端口(UDP端口)的一个Transaction-ID可以为一个内网IP提供服务,外网IP与内网IP的转换比例可以提高到1:4294967296。
另外,对于接收的出报文是否为DNS报文的确定,NAT设备可以通过识别出报文是否符合DNS协议格式规范、是否发往DNS服务器(如目的IP是否为DNS服务器的IP)等方式确定。而对于接收的入报文是否为DNS报文的确定,NAT设备可以通过识别入报文是否符合DNS协议格式规范,是否来自DNS服务器(如源IP是否为DNS服务器的IP)等方式确定,本申请不再进行赘述。
此外,需要理解的是,本申请实施例中出报文指由内网设备发往外网的报文,即由内网发送至外网的报文,对于出报文,其携带的源IP、源端口号和Transaction-ID为内网IP、内网端口号和内网Transaction-ID,在经过NAT设备时需要转换为外网IP、外网端口号和外网Transaction-ID;入报文指由外网设备发往内网的报文,即由外网发送至内网的报文,对于入报文,其携带的目的IP、目的端口号和Transaction-ID为外网IP、外网端口号和外网Transaction-ID,在经过NAT设备时需要转换为内网IP、内网端口号和内网Transaction-ID。
S202:NAT设备为所述出报文分配外网IP、外网端口号和外网Transaction-ID。
在本申请实施例中,NAT设备进行NAT转换可以采取静态转换、动态转换等方式。其中静态转换指IP地址、端口号和Transaction-ID是一对一的,是固定不变的,某组内网IP地址、内网端口号和内网Transaction-ID只能转换(或映射)为某组外网IP地址、外网端口号和外网Transaction-ID。
动态转换指将一组内网IP地址、内网端口号和内网Transaction-ID转换为一组外网IP地址、外网端口号和外网Transaction-ID时,外网IP地址、外网端口号和外网Transaction-ID是不固定的,可以随机转换为任何指定的合法的外网IP地址、外网端口号和外网Transaction-ID。可用于企业只有一个外网IP但是有多个设备需要被互联网访问或者访问互联网的场景。下面以静态转换、动态转换为例进行说明。
方式一:静态转换。
用户可以根据内网中每个内网设备使用的内网IP、内网端口号和内网Transaction-ID,以及NAT设备可使用的外网IP、外网端口号和外网Transaction-ID资源集合配置NAT映射表,NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。NAT设备接收到内网设备发往外网的出报文后,根据出报文的源IP、源端口号和内网Transaction-ID,查找NAT映射表中与所述出报文的源IP、源端口号和内网Transaction-ID存在映射关系的一组外网IP、外网端口号和外网Transaction-ID,为出报文分配外网IP、外网端口号和外网Transaction-ID。
其中NAT设备可使用的外网IP、外网端口号和外网Transaction-ID资源集合,可以根据NAT设备的一个或多个外网IP确定,每个外网IP有65536个UDP端口,每个UDP端口有65536个Transaction-ID,1个外网IP可以对应4294967296组外网IP、外网端口号和外网Transaction-ID资源。
在一种可能的实施中,用户还可以限制NAT设备的IP可使用的端口号,和/或每个可使用的端口可使用的Transaction-ID,NAT设备根据NAT设备的IP可使用的端口号和/或每个可使用的端口可使用的Transaction-ID,进行外网IP、外网端口号和外网Transaction-ID资源集合的确定。可选的,NAT设备的外网IP、外网端口号和外网Transaction-ID资源集合也可以由用户直接进行配置,本申请对此不进行限定。
作为一种示例,以NAT设备保存的NAT映射表如下表3所示,假设NAT设备接收到的出报文携带的源IP为UIP1、源端口号为UPort1和内网Transaction-ID为11111,则为该出报文分配外网IP“EIP1”、外网端口号“EPort1”和外网Transaction-ID“1”。例如,按照NAT映射表1,出报文源IP(Src IP)、源端口号(Src Port)和内网Transaction-ID与替换后的源IP、源端口号和外网Transaction-ID可以如表4所示。
表3
表4
方式二:动态分配。
在外网IP、外网端口号和外网Transaction-ID资源集合中为出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
作为一种示例,NAT设备接收到内网设备发往外网的出报文后,可以采用顺序分配的方式,在外网IP、外网端口号和外网Transaction-ID资源集合中出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。例如:网络设备可以按照外网IP小到大优先、外网端口号由小到大次之,外网Transaction-ID由小到大再次的分配方式,在外网IP、外网端口号和外网Transaction-ID资源集合中为出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
需要理解的是,NAT设备接收到内网设备发往外网的出报文后,还可以采用随机分配或者按照设定分配策略分配等分配方式,在外网IP、外网端口号和外网Transaction-ID资源集合中为出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
在一种可能的实施例中,NAT设备还可以针对内网设备的每个内网IP仅分配一个外网IP和外网端口号,NAT设备接收到内网设备发往外网的出报文后,可以根据出报文的源IP(即内网IP),为该出报文分配外网IP和外网端口号(可采用静态分配或动态分配),同时保持该出报文的外网Transaction-ID与内网Transaction-ID不变。出报文的源IP(SrcIP)、源端口号(Src Port)和内网Transaction-ID与相应的外网IP、外网端口号和外网Transaction-ID可以如表5所示。
表5
S203:NAT设备将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID后发送。
在一种可能的实施中,为了便于对外网发往内网设备的入报文对应的内网IP、内网端口号和内网Transaction-ID的识别与确定,保证入报文传输的可靠性,如果采用动态转换的方式,NAT设备将出报文的源IP、源端口号和内网Transaction-ID替换为外网IP、外网端口号和外网Transaction-ID后,将出报文的源IP(即内网IP)、源端口号(即内网端口号)和内网Transaction-ID,与为出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
外网设备接收到内网设备发出的报文后,响应内网设备发出的报文,当NAT设备接收到外网设备发往内网设备的入报文时,可以根据保存的NAT映射表和入报文的目的IP、目的端口号和外网Transaction-ID,为入报文分配内网IP、内网端口号和内网Transaction-ID,将入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID后发送。
作为一种示例,假设NAT映射表如表3所示,假设入报文的目的IP为EIP1、目的端口号为EPort1和外网Transaction-ID为5,则为入报文分配内网IP为UIP2、内网端口号为UPort4和内网Transaction-ID为11114。
上述主要从NAT设备的角度对本申请提供的方案进行了介绍。可以理解的是,为了实现上述功能,NAT设备包括了执行各个功能相应的硬件结构和/或软件模块(或单元)。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图3为本申请的实施例提供的可能的通信装置的结构示意图。这些通信装置可以用于实现上述方法实施例中NAT设备的功能,因此也能实现上述方法实施例所具备的有益效果。在本申请的实施例中,该通信装置可以是图2中的NAT设备,还可以是应用于NAT设备中的单元(或模块)等。
如图3所示。通信装置300可以包括:处理单元302和通信单元303,还可以包括存储单元301。通信装置300用于实现上述图2中所示的方法实施例中NAT设备的功能。
一种可能的设计中,处理单元302用于实现相应的处理功能。通信单元303用于支持通信装置300与其他网络实体的通信。存储单元301,用于存储通信装置300的程序代码和/或数据。可选地,通信单元303可以包括接收单元和/或发送单元,分别用于执行接收和发送操作。
当通信装置300用于实现方法实施例中NAT设备的功能时:通信单元303,用于接收内网设备发往外网的出报文,其中所述出报文携带内网Transaction-ID,所述Transaction-ID用于标记一组域名系统DNS出报文和相应的入报文;处理单元302,用于为所述出报文分配外网IP、外网端口号和外网Transaction-ID;并将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID;所述通信单元303,还用于将所述处理单元302处理后的所述出报文发送。
在一种可能的设计中,所述处理单元302为所述出报文分配外网IP、外网端口号和外网Transaction-ID时,具体用于:根据配置的网络地址转换NAT映射表和所述出报文的源IP、源端口号和内网Transaction-ID,为所述出报文分配外网IP、外网端口号和外网Transaction-ID,其中所述NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。
在一种可能的设计中,所述处理单元302为所述出报文分配外网IP、外网端口号和外网Transaction-ID时,具体用于:在外网IP、外网端口号和外网Transaction-ID资源集合中为所述出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
在一种可能的设计中,为所述出报文分配的外网Transaction-ID与所述出报文的内网Transaction-ID相同或不同。
在一种可能的设计中,所述处理单元302,还用于将所述出报文的源IP、源端口号和内网Transaction-ID,与为所述出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
在一种可能的设计中,所述通信单元303,还用于接收外网发往内网设备的入报文,其中所述入报文携带外网Transaction-ID;所述处理单元302,还用于根据所述NAT映射表和所述入报文的目的IP、目的端口号和外网Transaction-ID,为所述入报文分配内网IP、内网端口号和内网Transaction-ID;并将所述入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID;所述通信单元303,还用于将所述处理单元302处理后的所述入报文发送。
基于以上实施例,本申请实施例还提供了一种通信装置,参照图4所示,所述通信装置400包括:通信接口401、处理器402以及存储器403,其中:
所述通信接口401、所述处理器402以及所述存储器403之间相互连接。可选的,所述通信接口401、所述处理器402以及所述存储器403通过总线404相互连接;所述总线404可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述通信装置400在实现如图2所示的适用于NAT设备的通信方法时:
通信接口401,用于接收和发送数据;
处理器402,用于调用存储在所述存储器中的程序指令以执行下述方法:
通过所述通信接口401接收内网设备发往外网的出报文,其中所述出报文携带内网Transaction-ID,所述Transaction-ID用于标记一组域名系统DNS出报文和相应的入报文;为所述出报文分配外网IP、外网端口号和外网Transaction-ID;将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID后通过所述通信接口401发送。
在一种可能的设计中,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:根据配置的网络地址转换NAT映射表和所述出报文的源IP、源端口号和内网Transaction-ID,为所述出报文分配外网IP、外网端口号和外网Transaction-ID,其中所述NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。
在一种可能的设计中,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:在外网IP、外网端口号和外网Transaction-ID资源集合中为所述出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
在一种可能的设计中,为所述出报文分配的外网Transaction-ID与所述出报文的内网Transaction-ID相同或不同。
在一种可能的设计中,所述方法还包括:将所述出报文的源IP、源端口号和内网Transaction-ID,与为所述出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
在一种可能的设计中,所述方法还包括:通过所述通信接口401接收外网发往内网设备的入报文,其中所述入报文携带外网Transaction-ID;根据所述NAT映射表和所述入报文的目的IP、目的端口号和外网Transaction-ID,为所述入报文分配内网IP、内网端口号和内网Transaction-ID;将所述入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID后通过所述通信接口401发送。
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时可以执行上述方法实施例中适用于NAT设备的通信方法。
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,该指令被执行时可以执行上述方法实施例中适用于NAT设备的通信方法。
作为本实施例的另一种形式,提供一种芯片,所述芯片运行时,可以执行上述方法实施例中适用于NAT设备的通信方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种通信方法,其特征在于,包括:
接收内网设备发往外网的出报文,其中所述出报文携带内网事务IDTransaction-ID,所述Transaction-ID用于标记一组域名系统DNS出报文和相应的入报文,所述出报文为DNS报文,所述Transaction-ID携带在所述出报文的应用层DNS协议头部;
为所述出报文分配外网IP、外网端口号和外网Transaction-ID;
将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID后发送。
2.如权利要求1所述的方法,其特征在于,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:
根据配置的网络地址转换NAT映射表和所述出报文的源IP、源端口号和内网Transaction-ID,为所述出报文分配外网IP、外网端口号和外网Transaction-ID,其中所述NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。
3.如权利要求1所述的方法,其特征在于,所述为所述出报文分配外网IP、外网端口号和外网Transaction-ID,包括:
在外网IP、外网端口号和外网Transaction-ID资源集合中为所述出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
4.如权利要求3所述的方法,其特征在于,为所述出报文分配的外网Transaction-ID与所述出报文的内网Transaction-ID相同或不同。
5.如权利要求3或4所述的方法,其特征在于,所述方法还包括:
将所述出报文的源IP、源端口号和内网Transaction-ID,与为所述出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
6.如权利要求2或5所述的方法,其特征在于,所述方法还包括:
接收外网发往内网设备的入报文,其中所述入报文携带外网Transaction-ID;
根据所述NAT映射表和所述入报文的目的IP、目的端口号和外网Transaction-ID,为所述入报文分配内网IP、内网端口号和内网Transaction-ID;
将所述入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID后发送。
7.一种通信装置,其特征在于,包括:
通信单元,用于接收内网设备发往外网的出报文,其中所述出报文携带内网事务IDTransaction-ID,所述Transaction-ID用于标记一组域名系统DNS出报文和相应的入报文,所述出报文为DNS报文,所述Transaction-ID携带在所述出报文的应用层DNS协议头部;
处理单元,用于为所述出报文分配外网IP、外网端口号和外网Transaction-ID;并将所述出报文的源IP、源端口号和内网Transaction-ID替换为所述外网IP、外网端口号和外网Transaction-ID;
所述通信单元,还用于将所述处理单元处理后的所述出报文发送。
8.如权利要求7所述的通信装置,其特征在于,所述处理单元为所述出报文分配外网IP、外网端口号和外网Transaction-ID时,具体用于:
根据配置的网络地址转换NAT映射表和所述出报文的源IP、源端口号和内网Transaction-ID,为所述出报文分配外网IP、外网端口号和外网Transaction-ID,其中所述NAT映射表中包含多项内网IP、内网端口号和内网Transaction-ID与外网IP、外网端口号和外网Transaction-ID的映射关系。
9.如权利要求7所述的通信装置,其特征在于,所述处理单元为所述出报文分配外网IP、外网端口号和外网Transaction-ID时,具体用于:
在外网IP、外网端口号和外网Transaction-ID资源集合中为所述出报文分配一组未被占用的外网IP、外网端口号和外网Transaction-ID。
10.如权利要求9所述的通信装置,其特征在于,为所述出报文分配的外网Transaction-ID与所述出报文的内网Transaction-ID相同或不同。
11.如权利要求9或10所述的通信装置,其特征在于,所述处理单元,还用于将所述出报文的源IP、源端口号和内网Transaction-ID,与为所述出报文分配的外网IP、外网端口号和外网Transaction-ID的映射关系记录到NAT映射表中。
12.如权利要求8或11所述的通信装置,其特征在于,所述通信单元,还用于接收外网发往内网设备的入报文,其中所述入报文携带外网Transaction-ID;
所述处理单元,还用于根据所述NAT映射表和所述入报文的目的IP、目的端口号和外网Transaction-ID,为所述入报文分配内网IP、内网端口号和内网Transaction-ID;并将所述入报文的目的IP、目的端口号和外网Transaction-ID替换为所述内网IP、内网端口号和内网Transaction-ID;
所述通信单元,还用于将所述处理单元处理后的所述入报文发送。
13.一种通信装置,其特征在于,包括处理器和通信接口,所述通信接口用于接收来自所述通信装置之外的其它通信装置的信号并传输至所述处理器或将来自所述处理器的信号发送给所述通信装置之外的其它通信装置,所述处理器通过逻辑电路或执行代码指令用于实现如权利要求1-6中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在被一个或多个处理器读取并执行时实现如权利要求1-6中任一项所述的方法。
15.一种芯片,其特征在于,所述芯片用于执行存储器中存储的计算机程序或指令,实现如权利要求1-6中任一项所述的方法。
CN202011193498.XA 2020-10-30 2020-10-30 一种通信方法及装置 Active CN114531417B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202011193498.XA CN114531417B (zh) 2020-10-30 2020-10-30 一种通信方法及装置
EP21885139.2A EP4216653A4 (en) 2020-10-30 2021-10-26 COMMUNICATION METHOD AND DEVICE
PCT/CN2021/126346 WO2022089412A1 (zh) 2020-10-30 2021-10-26 一种通信方法及装置
US18/140,779 US20230269216A1 (en) 2020-10-30 2023-04-28 Communication method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011193498.XA CN114531417B (zh) 2020-10-30 2020-10-30 一种通信方法及装置

Publications (2)

Publication Number Publication Date
CN114531417A CN114531417A (zh) 2022-05-24
CN114531417B true CN114531417B (zh) 2023-09-22

Family

ID=81383562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011193498.XA Active CN114531417B (zh) 2020-10-30 2020-10-30 一种通信方法及装置

Country Status (4)

Country Link
US (1) US20230269216A1 (zh)
EP (1) EP4216653A4 (zh)
CN (1) CN114531417B (zh)
WO (1) WO2022089412A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117118746B (zh) * 2023-10-20 2024-01-09 明阳时创(北京)科技有限公司 一种基于动态dnat的dns攻击防御方法、系统、介质及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353614B1 (en) * 1998-03-05 2002-03-05 3Com Corporation Method and protocol for distributed network address translation
CN101060472A (zh) * 2006-04-17 2007-10-24 中国科学院计算技术研究所 基于路由的会话初始化协议透明穿越网络地址转换的方法
CN101316272A (zh) * 2008-07-09 2008-12-03 南京邮电大学 构建因特网协议版本4和6混合网络的多协议层翻译方法
CN101729606A (zh) * 2008-10-22 2010-06-09 华为技术有限公司 一种实现网络地址转换的方法及相关设备
CN102325197A (zh) * 2011-05-23 2012-01-18 杭州华三通信技术有限公司 一种内网设备与外网设备通信的方法和网络地址转换设备
WO2012119472A1 (zh) * 2011-03-07 2012-09-13 中兴通讯股份有限公司 一种兼容IPv4地址的通信方法、系统及路由器
CN110062056A (zh) * 2018-01-19 2019-07-26 中兴通讯股份有限公司 网络地址转换方法及装置
CN110612707A (zh) * 2017-05-09 2019-12-24 思科技术公司 基于dns路由网络流量

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068655B2 (en) * 2001-06-14 2006-06-27 Nortel Networks Limited Network address and/or port translation
US7333492B2 (en) * 2004-08-31 2008-02-19 Innomedia Pte Ltd Firewall proxy system and method
CN1960316A (zh) * 2005-11-04 2007-05-09 华为技术有限公司 分片报文的网络地址转换方法
CN101159693B (zh) * 2007-10-16 2011-08-10 中兴通讯股份有限公司 复用路由器接口地址的静态pat支持任意端口的方法
CN101567852B (zh) * 2009-05-20 2011-08-24 中兴通讯股份有限公司 Ip报文网络地址转换的方法及装置
US8289968B1 (en) * 2010-10-27 2012-10-16 Juniper Networks, Inc. Distributed network address translation in computer networks
CN105100299A (zh) * 2010-11-25 2015-11-25 华为技术有限公司 报文发送方法、nat表项建立方法及nat设备
WO2011103820A2 (zh) * 2011-04-15 2011-09-01 华为技术有限公司 一种网络地址转换方法及装置
CN103024089B (zh) * 2011-09-20 2016-02-17 中国电信股份有限公司 网络地址转换方法和设备
CN102790811B (zh) * 2012-07-25 2015-10-14 浙江宇视科技有限公司 一种在监控网络中穿越nat设备的方法和装置
CN104184842A (zh) * 2013-05-24 2014-12-03 中兴通讯股份有限公司 一种转发报文的方法及装置
US9894033B2 (en) * 2014-08-04 2018-02-13 Fortinet, Inc. DNS-enabled communication between heterogeneous devices
US10237236B2 (en) * 2015-06-25 2019-03-19 Microsoft Technology Licensing, Llc Media Session
US20160380789A1 (en) * 2015-06-25 2016-12-29 Microsoft Technology Licensing, Llc Media Relay Server
CN107231450A (zh) * 2016-03-25 2017-10-03 中兴通讯股份有限公司 一种实现网络访问的方法和装置
US20180262467A1 (en) * 2017-03-08 2018-09-13 At&T Intellectual Property I, L.P. Cloud-based ddos mitigation
CN111417108B (zh) * 2019-01-07 2023-03-28 中国移动通信有限公司研究院 一种数据传输方法、网络设备和存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353614B1 (en) * 1998-03-05 2002-03-05 3Com Corporation Method and protocol for distributed network address translation
CN101060472A (zh) * 2006-04-17 2007-10-24 中国科学院计算技术研究所 基于路由的会话初始化协议透明穿越网络地址转换的方法
CN101316272A (zh) * 2008-07-09 2008-12-03 南京邮电大学 构建因特网协议版本4和6混合网络的多协议层翻译方法
CN101729606A (zh) * 2008-10-22 2010-06-09 华为技术有限公司 一种实现网络地址转换的方法及相关设备
WO2012119472A1 (zh) * 2011-03-07 2012-09-13 中兴通讯股份有限公司 一种兼容IPv4地址的通信方法、系统及路由器
CN102684972A (zh) * 2011-03-07 2012-09-19 中兴通讯股份有限公司 一种兼容IPv4地址的通信方法及系统
CN102325197A (zh) * 2011-05-23 2012-01-18 杭州华三通信技术有限公司 一种内网设备与外网设备通信的方法和网络地址转换设备
CN110612707A (zh) * 2017-05-09 2019-12-24 思科技术公司 基于dns路由网络流量
CN110062056A (zh) * 2018-01-19 2019-07-26 中兴通讯股份有限公司 网络地址转换方法及装置

Also Published As

Publication number Publication date
WO2022089412A1 (zh) 2022-05-05
EP4216653A4 (en) 2024-02-21
EP4216653A1 (en) 2023-07-26
US20230269216A1 (en) 2023-08-24
CN114531417A (zh) 2022-05-24

Similar Documents

Publication Publication Date Title
US10320738B2 (en) Address allocation method, CGN device, and CGN dual-active system
US8458303B2 (en) Utilizing a gateway for the assignment of internet protocol addresses to client devices in a shared subset
US20060056420A1 (en) Communication apparatus selecting a source address
EP2999194A1 (en) Method and apparatus for accessing network by device
US9705844B2 (en) Address management in a connectivity platform
WO2005109785A1 (ja) 情報処理装置、バブルパケット送信方法およびプログラム
US9426069B2 (en) System and method of cross-connection traffic routing
Babatunde et al. A comparative review of internet protocol version 4 (ipv4) and internet protocol version 6 (ipv6)
US8112545B1 (en) Distributed network address translation control
JP2007096909A (ja) ノード間接続方法及び装置
KR20120055694A (ko) 사용자 액세스 방법, 시스템, 및 액세스 서버, 액세스 장치
US11595304B2 (en) Communication device, communication control system, communication control method, and communication control program
CN114531417B (zh) 一种通信方法及装置
CA2974353A1 (en) System and method for identifying a communication for routing purposes using internet protocol addresses that are allocated by and shared amongst internet service provider networks
CN102439918A (zh) 一种报文转发的方法、设备及系统
CN113014680B (zh) 一种宽带接入的方法、装置、设备和存储介质
CN105357332B (zh) 一种网络地址转换方法及装置
JPH1013471A (ja) ネットワーク間接続方式およびドメインネーム管理方法
CN1697445A (zh) 一种实现虚拟私有网络中数据传输的方法
JP4191180B2 (ja) 通信支援装置、システム、通信方法及びコンピュータプログラム
CN114157632A (zh) 网络隔离方法、装置、设备和存储介质
CN115208857A (zh) 一种地址分配方法、装置及设备
CN104518937B (zh) 虚拟局域网vlan多设备间通信的方法及装置
US10693673B2 (en) Method and apparatus for routing data to cellular network
WO2023216584A1 (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