CN107690005A - 通过网络地址转换来转送封包的方法与装置 - Google Patents
通过网络地址转换来转送封包的方法与装置 Download PDFInfo
- Publication number
- CN107690005A CN107690005A CN201610756706.XA CN201610756706A CN107690005A CN 107690005 A CN107690005 A CN 107690005A CN 201610756706 A CN201610756706 A CN 201610756706A CN 107690005 A CN107690005 A CN 107690005A
- Authority
- CN
- China
- Prior art keywords
- package
- internet protocol
- transfer server
- address
- same generation
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000013519 translation Methods 0.000 title claims abstract description 25
- 238000012546 transfer Methods 0.000 claims description 145
- 230000008569 process Effects 0.000 claims description 22
- 230000009183 running Effects 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 230000014616 translation Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 18
- 230000005540 biological transmission Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000005641 tunneling Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- CKRLIWFOVCLXTP-UHFFFAOYSA-N 4-phenyl-1-propyl-3,6-dihydro-2h-pyridine Chemical compound C1N(CCC)CCC(C=2C=CC=CC=2)=C1 CKRLIWFOVCLXTP-UHFFFAOYSA-N 0.000 description 1
- 101000746134 Homo sapiens DNA endonuclease RBBP8 Proteins 0.000 description 1
- 101000969031 Homo sapiens Nuclear protein 1 Proteins 0.000 description 1
- 102100021133 Nuclear protein 1 Human genes 0.000 description 1
- 238000012940 design transfer Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000003319 supportive effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种在一网络系统中通过网络地址转换来转送封包的方法与装置。所述方法包含:控制一转送服务器从一客户端装置接收一第一封包,其中所述第一封包载有一来源因特网协议地址与一目的因特网协议地址;控制所述转送服务器仅修改所述第一封包所载的所述目的因特网协议地址,以转送所述第一封包至一同侪端装置,其中所述同侪端装置从所述第一封包取得所述来源因特网协议地址;以及控制所述转送服务器从所述同侪端装置接收一第二封包且转送所述第二封包至所述客户端装置。本发明可提升服务器的负载能力,且可有效提高网络系统的整体效能。此外,本发明还能够使同侪端装置得知客户端装置的真实的因特网协议地址。
Description
技术领域
本发明涉及封包转送机制(packet relaying mechanism),尤其是涉及一种在一网络系统中通过网络地址转换(network address translation)来转送(relay)封包的方法与相关装置。
背景技术
依据现有技术,一转送服务器(relay server)可通过利用一虚拟专用网服务器(Virtual Private Network server,可简称为“VPN服务器”)来实施。所述VPN服务器可具有一外部因特网协议地址(external Internet Protocol address,可简称为“外部IP地址”),而多位用户可连上具有所述外部IP的所述VPN服务器,以通过虚拟专用网隧道(Virtual Private Network tunnel,可简称为“VPN隧道”)互传封包。基于现有技术的架构,可能会发生某些问题。例如:在所述多个用户中的任一用户使用一客户端装置(clientdevice)连上所述VPN服务器之前,所述客户端装置需要事先被安装了额外的软件,诸如虚拟专用网客户端软件(Virtual Private Network client software,可简称为“VPN客户端软件”),这可能为所述用户带来不便。又例如:在这个架构中,当所述客户端装置通过所述VPN服务器以及所述VPN隧道传送封包至一同侪端装置(peer device),诸如所述多个用户中的另一用户所使用的另一客户端装置,所述同侪端装置无法知道所述客户端装置的外部IP地址,其中所述同侪端装置所收到的封包的来源IP地址均为所述客户端装置于其VPN连线的私人因特网协议地址(private Internet Protocol address,可简称为“私人IP地址”),而非所述客户端装置的外部IP地址。因此,对于使用所述VPN服务器进行通信的某一用户而言,若需要知道通信中的对方的真实IP,则需要进行涉及防火墙(firewall)的额外设定、或是需要进行某些更复杂的设定,这造成很大的不便。
现有技术中的所述转送服务器的实施可能有所变化,但是对于完全地解决全部上述问题,并没有帮助,其中甚至可能出现额外的问题诸如一些副作用。例如:整个架构可能变得更复杂。又例如:某些用户空间应用程序(user space application)可能需要予以升级。又例如:防火墙可能无法发挥应有的功能,这会有安全性疑虑。因此,需要一种新颖的方法及相关的架构,以在较少副作用、或不造成副作用的状况下,妥善地解决既有的问题。
发明内容
本发明的目的之一在于公开一种在一网络系统中通过网络地址转换(networkaddress translation)来转送(relay)封包的方法与相关装置,以解决上述问题。
本发明的另一目的在于公开一种在一网络系统中通过网络地址转换来转送封包的方法与相关装置,以在较少副作用、或不造成副作用的状况下,提升网络系统的整体效能。
本发明的至少一实施例中公开一种在一网络系统中通过网络地址转换来转送封包(例如:多个封包)的方法。所述方法可包含:控制一转送服务器(relay server)从一客户端装置(client device)接收一第一封包,其中所述第一封包载有(carry)一来源因特网协议地址(source Internet Protocol address,source IP address)与一目的因特网协议地址(destination Internet Protocol address,destination IP address);控制所述转送服务器修改所述第一封包所载的所述目的因特网协议地址,以转送所述第一封包至一同侪端装置(peer device),其中所述同侪端装置从所述第一封包取得所述来源因特网协议地址;以及控制所述转送服务器从所述同侪端装置接收一第二封包且转送所述第二封包至所述客户端装置。本发明的某些实施例公开一种依据上述方法在所述网络系统中通过网络地址转换来转送所述封包的装置,其中所述装置可包含所述转送服务器的至少一部分(例如:一部分或全部)。例如:所述转送服务器的所述至少一部分可包含一处理电路,用来控制所述转送服务器的运作。又例如:所述转送服务器的所述至少一部分可包含所述转送服务器的全部。
本发明于公开上述方法的同时,也对应地公开一种在一网络系统中通过网络地址转换来转送封包(例如:多个封包)的装置。所述装置可包含:一处理电路,位在控制所述网络系统中的一转送服务器,用来控制所述转送服务器的运作。例如:所述转送服务器的所述运作可包含:所述转送服务器从一客户端装置接收一第一封包,其中所述第一封包载有一来源因特网协议地址与一目的因特网协议地址;所述转送服务器修改所述第一封包所载的所述目的因特网协议地址,以转送所述第一封包至一同侪端装置,其中所述同侪端装置从所述第一封包取得所述来源因特网协议地址;以及所述转送服务器从所述同侪端装置接收一第二封包且转送所述第二封包至所述客户端装置。
本发明的好处之一是,本发明的方法与相关装置可在较少副作用、或不造成副作用的状况下,妥善地解决既有的问题。另外,本发明的方法与相关装置可提升服务器的负载能力,且可有效提高网络系统的整体效能。此外,本发明的方法与相关装置容许转送服务器对于要传给同侪端装置的封包只修改其目的因特网协议地址(而不修改其来源因特网协议地址),故同侪端装置可以知道客户端装置的真实的因特网协议地址。于是,对同侪端装置而言,转送服务器是透明的,其中,同侪端装置的防火墙和用户空间应用程序都不需要作额外设定。因此,依据本发明的方法与装置所实现的通信(communications)架构对于用户是相当便利的。
附图说明
图1为依据本发明一实施例的一种网络系统(network system)的示意图。
图2为图1所示的类网络地址转换转送服务器(network address translation(NAT)-like relay server,可简称为“类NAT转送服务器”)在一实施例中所涉及的实施细节。
图3为图2所示的处理电路在一实施例中所涉及的控制方案。
图4为依据本发明一实施例的一种在一网络系统中通过网络地址转换来转送(relay)封包的方法的流程图。
其中,附图标记说明如下:
100 网络系统
110-1,110-2,…,110-N,
110-n,110-p 客户端装置
120 类网络地址转换转送服务器
210 处理电路
220 网络接口电路
400 方法
410,420,430 步骤
IP(n),IP(p),IP(r) 因特网协议地址
Tunnel(p,r) 隧道
dst 封包所载的目的因特网协议地址
src 封包所载的来源因特网协议地址
具体实施方式
本发明的一或多个实施例提出一种在一网络系统(network system)中通过网络地址转换(network address translation,NAT)来转送(relay)封包的方法与装置。例如:所述网络系统可包含一转送服务器以及连线至这个转送服务器的多个客户端装置(clientdevice)。依据本发明的方法与装置所实现的通信(communications)架构,诸如所述网络系统,对终端用户(end user)而言是相当方便的,这是因为不需要额外设定、也不需要现有技术中所涉及的各种复杂的设定。基于本发明的通信架构,当所述转送服务器转送一封包时,所述转送服务器可避免同时修改所述封包所载(carry)的所有的因特网协议地址(Internet Protocol address,可简称为“IP地址”)。例如:所述封包所载的所述IP地址可包含一来源IP地址(source IP address)与一目的IP地址(destination IP address),而所述转送服务器可修改所述目的IP地址,而非所述来源IP地址。于是,本发明的通信架构容许所述封包的接收端知道所述封包的传送端的真实的IP,使得所述转送服务器对在所述客户端装置而言是透明的,其中,所述客户端装置的防火墙和用户空间应用程序都不需要作额外设定。因此,依据本发明的方法与装置所实现的通信架构对于用户是相当便利的。
图1为依据本发明一实施例的一种网络系统100的示意图。网络系统100可包含多个客户端装置,诸如N个客户端装置{110-1,110-2,…,110-N},其中符号“N”可代表正整数。所述N个客户端装置{110-1,110-2,…,110-N}的例子可包含(但不限于):多功能移动电话(multifunctional mobile phone)、平板计算机(tablet)、可穿戴装置(wearabledevice)、以及个人计算机(personal computer,PC)诸如膝上型计算机与桌面计算机。另外,网络系统100可另包含转送服务器120,其中转送服务器120可为经过特殊设计的一新颖的转送服务器,诸如“类网络地址转换”转送服务器(NAT-like relay server,可简称为“类NAT转送服务器”)。转送服务器120的例子可包含(但不限于):执行至少一预定程序模块的服务器,其中上述至少一预定程序模块包含对应于上述“在所述转送服务器中通过网络地址转换来转送封包的方法”的程序代码。
如图1所示,网络系统100可另包含所述N个客户端装置{110-1,110-2,…,110-N}以及转送服务器120之间的N个通信通道(communications channel)。依据本实施例,上述“在所述转送服务器中通过网络地址转换来转送封包的装置”可包含网络系统100的至少一部分(例如:一部分或全部),诸如所述N个客户端装置{110-1,110-2,…,110-N}中的一者或多者、所述N个通信通道中的对应的一个或多个通信通道、及/或转送服务器120。另外,转送服务器120可转送(relay)所述N个客户端装置{110-1,110-2,…,110-N}中的任一客户端装置110-n所传送的至少一封包(例如一个或多个封包)至一同侪端装置(peer device),诸如所述N个客户端装置{110-1,110-2,…,110-N}中的另一客户端装置110-p,其中符号“n”可代表落入区间[1,N]的范围的正整数,而符号“p”可代表落入区间[1,N]的范围且不等于n的正整数。
图2为图1所示的转送服务器120在一实施例中所涉及的实施细节。如图2所示,转送服务器120可包含一处理电路210与一网络接口电路220,其中处理电路210与网络接口电路220是彼此耦接,且均位在控制转送服务器120之内。依据本实施例,网络接口电路220可提供网络服务予转送服务器120(尤其是其内的处理电路210),以容许转送服务器120通过所述N个通信通道分别和所述N个客户端装置{110-1,110-2,…,110-N}进行通信运作。例如:在得知转送服务器120的IP地址(尤其是其外部IP地址)的状况下,客户端装置110-n可连(link)至转送服务器120,以建立客户端装置110-n与转送服务器120之间的通信通道。所述通信运作的进行可基于至少一预定协议(例如:一个或多个预定协议),诸如各种既存的网络协议(network protocol)中的一者或多者。所述既存的网络协议的例子可包含(但不限于):因特网协定套组(Internet Protocol Suite(IPS);其有时可被称为“传输控制协议/因特网协议(Transmission Control Protocol/Internet Protocol,TCP/IP)”)中的一部分或全部协议,诸如传输控制协议(Transmission Control Protocol,可简称为“TCP”)、用户数据报协议(User Datagram Protocol,可简称为“UDP”)、…等。
另外,处理电路210可控制转送服务器120的运作。例如:处理电路210可包含至少一处理器(例如:一个或多个处理器),而上述的至少一处理器可执行上述的至少一预定程序模块,以控制转送服务器120的所述运作。这只是为了说明的目的而已,并非对本发明的限制。依据某些实施例,处理电路210的实施可予以变化。例如:处理电路210可实施成特殊应用集成电路(Application-Specific Integrated Circuit,ASIC),以依据上述“在所述转送服务器中通过网络地址转换来转送封包的方法”控制转送服务器120的所述运作。
图3为图2所示的处理电路210在一实施例中所涉及的控制方案。依据所述控制方案,网络系统100中的一发送端诸如客户端装置110-n不需要安装额外的软件,并且,网络系统100中的一接收端诸如客户端装置110-p不需要升级某(些)应用程序来确保所述(些)应用程序的支持性、且不需要针对防火墙的额外设定,故所述控制方案可避免现有技术中的各种问题。
依据本实施例,转送服务器120的行为可被设计成具备某些额外的特性,使得客户端装置110-n与110-p各自的用户不需要分别对客户端装置110-n与110-p进行额外设定即可互相传送封包。如图3所示,当转送来自客户端装置110-n的一封包,诸如一第一封包(其可被绘示成一包裹(package),以便于理解),转送服务器120可以仅仅修改此封包所载的目的IP地址dst,而不修改此封包所载的来源IP地址src。例如:客户端装置110-n的IP地址IP(n)可为“100.10.33.45”,而客户端装置110-p的IP地址IP(p)可为“59.120.41.39”,以及转送服务器120的IP地址IP(r)可为“60.2.2.22”。这些IP地址IP(n)、IP(p)与IP(r)可分别为外部IP地址。当客户端装置110-n刚送出此封包时,此封包所载的目的IP地址dst与来源IP地址src分别为IP地址IP(r)与IP(n),诸如图3最右侧所示封包所载的“60.2.2.22”与“100.10.33.45”,其中“7000”与“5000”可作为对应的埠号(port number;也可译作“网络端口号码”或“通信端口号码”)的例子。
当接收到此封包时,转送服务器120可将此封包所载的目的IP地址dst从IP地址IP(r)修改成客户端装置110-p的IP地址IP(p),诸如图3左上角所示封包所载的“59.120.41.39”其中“8888”可作为对应的埠号的例子。由于转送服务器120避免修改此封包所载的来源IP地址src,故所述同侪端装置诸如客户端装置110-p能够知道客户端装置110-n的外部IP地址(诸如“100.10.33.45”)。例如:当收到此封包时,客户端装置110-p由此封包取得的来源IP地址src是客户端装置110-n的IP地址IP(n),而非转送服务器120的IP地址IP(r)。另外,当客户端装置110-p回传(return)一封包,诸如一第二封包,转送服务器120可提供一默认路径作为封包回传路径。因此,在所述同侪端装置诸如客户端装置110-p不需要额外设定的状况下,所述同侪端装置(例如:客户端装置110-p)所回传的封包就能回传给正确的客户端装置(例如:客户端装置110-n)。基于这个架构,客户端装置110-n与客户端装置110-p各自的操作系统不需要额外设定,客户端装置110-n与客户端装置110-p即可彼此正确地传送封包。
请注意,客户端装置110-n不需要通过网络隧道(network tunnel;可简称为“隧道(tunnel)”)连至转送服务器120。只要知道转送服务器120的IP地址IP(r)和端口号,客户端装置110-n即可使用一般的网络协议(例如:图3所示的TCP、UDP…等)连上转送服务器120,而转送服务器120可通过利用网络端口转递(port forwarding)来转送封包。因此,客户端装置110-n不需要安装额外软件、也不需要额外设定。另外,隧道Tunnel(p,r)可作为上述默认路径的一例。如图3所示,所述同侪端装置诸如客户端装置110-p可通过隧道Tunnel(p,r)连至转送服务器120,并且可于进行封包回传时延着隧道Tunnel(p,r)回传所述第二封包。也就是说,当所述第二封包从所述同侪端装置诸如客户端装置110-p被往外传送时,所述第二封包预设地会延着隧道Tunnel(p,r)回传至转送服务器120。转送服务器120于收到所述第二封包之后,通过修改所述第二封包所载的来源IP地址(从IP地址IP(p)修改成转送服务器120的IP地址IP(r)),就可直接将所述第二封包回传给客户端装置110-n,其中客户端装置110-n所接收到的所述第二封包的来源IP地址是转送服务器120的IP地址IP(r)。
在一实施例中,所述同侪端装置诸如客户端装置110-p所送出的所述第二封包可
以载有(carry;或夹带)一特定信息。也就是说,所述同侪端装置并不限于只能传送确认
(Acknowledgement)封包。另外,在客户端装置110-n触发(trigger)图3所示的通信运作的
状况下,客户端装置110-n会主动建立从客户端装置110-n到所述同侪端装置(诸如客户端
装置110-p)的连线,但所述同侪端装置诸(如客户端装置110-p)不会主动建立像这样的连
线。请注意,所述连线是客户端装置110-n所主动发起,而所述同侪端装置诸如客户端装置
110-p只是在所述连线被建立起之后,沿着所述连线当中已被建立好的路径回传封包。在某
些实施例中,上述“已被建立好的路径”的实施细节可通过例如“来源政策路由(source-
policy routing)”实现的。更详细而言,当所述同侪端装置诸如客户端装置110-p正在和转
送服务器120建立隧道Tunnel(p,r)时,对客户端装置110-p而言,隧道Tunnel(p,r)可视为
客户端装置110-p上的一个新的网络接口(network interface)。此时,客户端装置110-p
中,管理网络封包流动与传送的应用软件(如iptables、ip6tables、arptables、ebtables)
可进一步记录,只要来自于IP地址“60.2.2.22”的封包,就从这个网络接口传送回去。如此
一来,上述所述第二封包即可沿着“已被建立好的路径”回传。
图4为依据本发明一实施例的一种在一网络系统中通过网络地址转换来转送封包的方法400的流程图。方法400可作为上述“在所述转送服务器中通过网络地址转换来转送封包的方法”的一例。另外,方法400可应用于图1所示的转送服务器120,尤其是可应用于图2所示的处理电路210。在处理电路210的控制下,转送服务器120可基于图3所示的控制方案进行上列实施例中的各种运作的至少一部分(例如一部分或全部)。方法400说明如下。
在步骤410中,处理电路210控制转送服务器120从客户端装置110-n接收一第一封包诸如上述者,其中所述第一封包载有来源IP地址src与目的IP地址dst。
在步骤420中,处理电路210控制转送服务器120仅修改所述第一封包所载的目的IP地址dst,以转送所述第一封包至所述同侪端装置,诸如客户端装置110-p,其中所述同侪端装置从所述第一封包取得来源IP地址src。例如:在处理电路210的控制下,于转送所述第一封包至所述同侪端装置之前,转送服务器120避免修改所述第一封包所载的来源IP地址src,以容许所述同侪端装置从所述第一封包取得来源IP地址src。另外,当修改所述第一封包所载的目的IP地址时dst,转送服务器120将所述第一封包所载的目的IP地址dst修改为所述同侪端装置的IP地址(例如:客户端装置110-p的IP地址IP(p)),诸如所述同侪端装置的外部IP地址(例如:图3所示的“59.120.41.39”)。此外,所述同侪端装置(诸如客户端装置110-p)从所述第一封包所取得的来源IP地址src是客户端装置110-n的IP地址(例如:客户端装置110-n的外部IP地址,诸如图3所示的“100.10.33.45”)。
在步骤430中,处理电路210控制转送服务器120从所述同侪端装置诸如客户端装置110-p接收一第二封包诸如上述者、且转送所述第二封包至客户端装置110-n。例如:所述第二封包可从所述同侪端装置(诸如客户端装置110-p)开始、通过转送服务器120、且到达客户端装置110-n,而所述第二封包的这个路径可称为一第二路径。另外,所述第一封包可从客户端装置110-n开始、通过转送服务器120、且到达所述同侪端装置(诸如客户端装置110-p),而所述第一封包的这个路径可称为一第一路径。如此,所述第二路径可以等同于所述第一路径的反向路径。
依据某些实施例,因应转送服务器120的触发,转送服务器120与所述同侪端装置之间的一隧道(诸如隧道Tunnel(p,r))被建立,以容许所述第二封包自动地被转送服务器120转送。例如:基在所述来源政策路由控制,针对来自所述隧道的所有的封包,所述同侪端装置因应这些封包而传送出来的响应封包全被导向所述隧道。由在所述第一封包属于来自所述隧道的这些封包,当所述同侪端装置因应所述第一封包而传送出所述第二封包时,所述第二封包被导向所述隧道,诸如图3所示的隧道Tunnel(p,r)。另外,在所述同侪端装置(诸如客户端装置110-p)从所述第一封包所取得的来源IP地址src是客户端装置110-n的IP地址IP(n)的状况下,所述同侪端装置可利用客户端装置110-n的IP地址IP(n)作为所述第二封包所载的一目的IP地址。于是,当收到所述第二封包时,转送服务器120可依据所述第二封包所载的这个目的IP地址,将所述第二封包传回客户端装置110-n。
在一些实施方式中,转送服务器120在转送所述第二封包之前,会将所述第二封包的来源IP地址改成转送服务器120自己的IP地址,才回传给客户端装置110-n。对客户端装置110-n而言,它可能无法直接连(link)至所述同侪端装置,所以才需要通过转送服务器120来和所述同侪端装置进行通信。假设转送服务器120在回传所述第二封包给客户端装置110-n之前不修改所述第二封包的来源IP地址,则客户端装置110-n可能会认为所述第二封包来自所述同侪端装置。因此,某些实施方式的客户端装置110-n会尝试直接传送下一个封包给所述同侪端装置,而非通过转送服务器120传送所述下一个封包。由于客户端装置110-n无法直接连(link)至所述同侪端装置,故尝试直接传送所述下一个封包给所述同侪端装置(而非通过转送服务器120传送所述下一个封包)就导致失灵(malfunction)。因此,在这些实施例中,转送服务器120在转送所述第二封包之前,会将所述第二封包的来源IP地址改成转送服务器120自己的IP地址。
依据某些实施例,上述“在所述转送服务器中通过网络地址转换来转送封包的装置”可包含转送服务器120的至少一部分(例如:一部分或全部),且可依据方法400于网络系统100中通过网络地址转换来转送所述封包。例如:转送服务器120的上述至少一部分可包含处理电路210,其中处理电路210可用来控制转送服务器120的运作。又例如:转送服务器120的上述至少一部分可包含转送服务器120的全部。
依据某些实施例,所述同侪端装置(诸如客户端装置110-p)从所述第一封包所取得的来源IP地址src可用来进行所述来源政策路由控制。依据某些实施例,所述第一封包可代表客户端装置110-n的用户的一第一信息,且所述第二封包可代表所述同侪端装置的用户的一第二信息,其中这两位用户正在彼此传递信息。依据某些实施例,所述第二封包可为用来回应所述第一封包的确认(Acknowledgement)封包,但本发明不以此为限。
依据某些实施例,转送服务器120与所述同侪端装置之间的所述隧道(诸如隧道Tunnel(p,r))可通过利用虚拟专用网隧道(Virtual Private Network tunnel,可简称为“VPN隧道”)来实施。依据某些实施例,转送服务器120与所述同侪端装置之间的所述隧道(诸如隧道Tunnel(p,r))可通过利用其它类型的网络隧道中的任一者来实施,诸如点对点隧道协议(Point to Point Tunneling Protocol,PPTP)、第二层隧道协议(Layer TwoTunneling Protocol,L2TP)、因特网安全协定(Internet Protocol Security,IPsec)等。
相较于现有技术,本发明有诸多的优点;概述如下:转送服务器120的行为(诸如上列实施例中所述的各种运作)能提升转送服务器120的负载能力。另外,客户端装置110-n不需要额外地安装软件即可和转送服务器120连线。此外,转送服务器120对于要传给所述同侪端装置(诸如客户端装置110-p)的封包只修改这些封包的目的IP地址,且避免修改这些封包的来源IP地址,以容许所述同侪端装置知道客户端装置110-n的真实的IP地址。如此,对所述同侪端装置(诸如客户端装置110-p)而言,转送服务器120是透明的,并且所述同侪端装置的防火墙和用户空间应用程序都不需要进行额外的设定。因此,依据上列所述实施例中的任一者所实现的通信架构能为众多用户(诸如所述N个客户端装置{110-1,110-2,…,110-N}各自的用户)带来极大的便利。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种在一网络系统中通过网络地址转换来转送封包的方法,其特征在于,所述方法包含有:
控制一转送服务器从一客户端装置接收一第一封包,其中所述第一封包载有一来源因特网协议地址与一目的因特网协议地址;
控制所述转送服务器修改所述第一封包所载的所述目的因特网协议地址,以转送所述第一封包至一同侪端装置,其中所述同侪端装置从所述第一封包取得所述来源因特网协议地址;以及
控制所述转送服务器从所述同侪端装置接收一第二封包且转送所述第二封包至所述客户端装置。
2.如权利要求1所述的方法,其特征在于,于转送所述第一封包至所述同侪端装置之前,所述转送服务器避免修改所述第一封包所载的所述来源因特网协议地址,以容许所述同侪端装置从所述第一封包取得所述来源因特网协议地址。
3.如权利要求1所述的方法,其特征在于,当修改所述第一封包所载的所述目的因特网协议地址时,所述转送服务器将所述第一封包所载的所述目的因特网协议地址修改为所述同侪端装置的一因特网协议地址。
4.如权利要求3所述的方法,其特征在于,所述同侪端装置的所述因特网协议地址是所述同侪端装置的一外部因特网协议地址。
5.如权利要求1所述的方法,其特征在于,所述同侪端装置从所述第一封包所取得的所述来源因特网协议地址是所述客户端装置的一因特网协议地址。
6.如权利要求5所述的方法,其特征在于,所述客户端装置的所述因特网协议地址是所述客户端装置的一外部因特网协议地址。
7.如权利要求1所述的方法,其特征在于,所述第二封包从所述同侪端装置开始、通过所述转送服务器、且到达所述客户端装置的一第二路径等同于所述第一封包从所述客户端装置开始、通过所述转送服务器、且到达所述同侪端装置的一第一路径的反向路径。
8.如权利要求7所述的方法,其特征在于,因应所述转送服务器的触发,所述转送服务器与所述同侪端装置之间的一隧道被建立,以容许所述第二封包自动地被所述转送服务器转送。
9.如权利要求7所述的方法,其特征在于,所述同侪端装置从所述第一封包所取得的所述来源因特网协议地址是所述客户端装置的一因特网协议地址;以及所述同侪端装置利用所述客户端装置的所述因特网协议地址作为所述第二封包所载的一目的因特网协议地址。
10.如权利要求9所述的方法,其特征在于,当收到所述第二封包时,所述转送服务器依据所述第二封包所载的所述目的因特网协议地址,将所述第二封包传回所述客户端装置。
11.一种依据权利要求1所述的方法在所述网络系统中通过网络地址转换来转送所述封包的装置,其特征在于,所述装置包含所述转送服务器的至少一部分。
12.如权利要求11所述的装置,其特征在于,所述转送服务器的所述至少一部分包含一处理电路,用来控制所述转送服务器的运作。
13.一种在一网络系统中通过网络地址转换来转送封包的装置,其特征在于,所述装置包含有:
一处理电路,位在控制所述网络系统中的一转送服务器之内,用来控制所述转送服务器的运作,其中所述转送服务器的所述运作包含:
所述转送服务器从一客户端装置接收一第一封包,其中所述第一封包载有一来源因特网协议地址与一目的因特网协议地址;
所述转送服务器修改所述第一封包所载的所述目的因特网协议地址,以转送所述第一封包至一同侪端装置,其中所述同侪端装置从所述第一封包取得所述来源因特网协议地址;以及
所述转送服务器从所述同侪端装置接收一第二封包且转送所述第二封包至所述客户端装置。
14.如权利要求13所述的装置,其特征在于,于转送所述第一封包至所述同侪端装置之前,所述转送服务器避免修改所述第一封包所载的所述来源因特网协议地址,以容许所述同侪端装置从所述第一封包取得所述来源因特网协议地址。
15.如权利要求13所述的装置,其特征在于,当修改所述第一封包所载的所述目的因特网协议地址时,所述转送服务器将所述第一封包所载的所述目的因特网协议地址修改为所述同侪端装置的一因特网协议地址。
16.如权利要求15所述的装置,其特征在于,所述同侪端装置的所述因特网协议地址是所述同侪端装置的一外部因特网协议地址。
17.如权利要求13所述的装置,其特征在于,所述同侪端装置从所述第一封包所取得的所述来源因特网协议地址是所述客户端装置的一因特网协议地址。
18.如权利要求17所述的装置,其特征在于,所述客户端装置的所述因特网协议地址是所述客户端装置的一外部因特网协议地址。
19.如权利要求13所述的装置,其特征在于,所述第二封包从所述同侪端装置开始、通过所述转送服务器、且到达所述客户端装置的一第二路径等同于所述第一封包从所述客户端装置开始、通过所述转送服务器、且到达所述同侪端装置的一第一路径的反向路径。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105124714A TWI625950B (zh) | 2016-08-04 | 2016-08-04 | 於一網路系統中藉助於網路位址轉譯來轉送封包之方法與裝置 |
TW105124714 | 2016-08-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107690005A true CN107690005A (zh) | 2018-02-13 |
Family
ID=58692352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610756706.XA Withdrawn CN107690005A (zh) | 2016-08-04 | 2016-08-29 | 通过网络地址转换来转送封包的方法与装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20180041433A1 (zh) |
EP (1) | EP3280117A1 (zh) |
CN (1) | CN107690005A (zh) |
TW (1) | TWI625950B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988440A (zh) * | 2019-05-22 | 2020-11-24 | 鸿富锦精密电子(天津)有限公司 | 网络地址转换方法及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7209593B2 (ja) * | 2019-07-01 | 2023-01-20 | 株式会社ソラコム | 中継方法、中継システム、及び中継用プログラム |
CN113572867B (zh) * | 2021-09-26 | 2022-01-07 | 北京海誉动想科技股份有限公司 | 通信方法与装置 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6615357B1 (en) * | 1999-01-29 | 2003-09-02 | International Business Machines Corporation | System and method for network address translation integration with IP security |
US6981056B1 (en) * | 2000-06-28 | 2005-12-27 | Cisco Technology, Inc. | Wide area load balancing of web traffic |
KR100360274B1 (ko) * | 2000-12-30 | 2002-11-09 | 엘지전자 주식회사 | Nat 기반 로컬망에서 범용 ip 전화통신 시스템을지원하는 방법 |
US20020186698A1 (en) * | 2001-06-12 | 2002-12-12 | Glen Ceniza | System to map remote lan hosts to local IP addresses |
US7633948B2 (en) * | 2003-07-07 | 2009-12-15 | Panasonic Corporation | Relay device and server, and port forward setting method |
US7640319B1 (en) * | 2003-09-30 | 2009-12-29 | Nortel Networks Limited | Gateway shared by multiple virtual private networks |
US8051177B1 (en) * | 2003-09-30 | 2011-11-01 | Genband Us Llc | Media proxy having interface to multiple virtual private networks |
US7453874B1 (en) * | 2004-03-30 | 2008-11-18 | Extreme Networks, Inc. | Method and system for incrementally updating a checksum in a network data packet |
US7606191B1 (en) * | 2006-05-01 | 2009-10-20 | Sprint Spectrum L.P. | Methods and systems for secure mobile-IP traffic traversing network address translation |
US8908700B2 (en) * | 2007-09-07 | 2014-12-09 | Citrix Systems, Inc. | Systems and methods for bridging a WAN accelerator with a security gateway |
CN101399749B (zh) * | 2007-09-27 | 2012-04-04 | 华为技术有限公司 | 一种报文过滤的方法、系统和设备 |
US9398136B2 (en) * | 2009-04-20 | 2016-07-19 | Apple Inc. | Handheld device capable of providing data tethering services while maintaining suite of handheld service functions |
US8295289B2 (en) * | 2009-07-29 | 2012-10-23 | Telefonaktiebolaget L M Ericsson (Publ.) | Method and system for simultaneous local and EPC connectivity |
CN102035900B (zh) * | 2009-09-24 | 2015-05-06 | 日电(中国)有限公司 | 用于通过中继方式进行nat穿越的方法、系统和中继服务器 |
US9756682B2 (en) * | 2012-02-06 | 2017-09-05 | Aruba Networks, Inc. | Method and system for partitioning wireless local area network |
US9723023B2 (en) * | 2012-03-21 | 2017-08-01 | Raytheon Bbn Technologies Corp. | Destination address rewriting to block peer-to-peer communications |
US8811401B2 (en) * | 2012-06-21 | 2014-08-19 | Breakingpoint Systems, Inc. | Binding of network flows to process threads |
US8856600B2 (en) * | 2012-06-21 | 2014-10-07 | Breakingpoint Systems, Inc. | JTAG-based programming and debug |
US8869157B2 (en) * | 2012-06-21 | 2014-10-21 | Breakingpoint Systems, Inc. | Systems and methods for distributing tasks and/or processing recources in a system |
US8837486B2 (en) * | 2012-07-25 | 2014-09-16 | Cisco Technology, Inc. | Methods and apparatuses for automating return traffic redirection to a service appliance by injecting traffic interception/redirection rules into network nodes |
KR101478662B1 (ko) * | 2013-01-15 | 2015-01-02 | 서정환 | 클라이언트의 ip주소를 서버로 전송하는 중계 시스템 및 방법 |
KR101880346B1 (ko) * | 2013-05-23 | 2018-07-19 | 미쓰비시덴키 가부시키가이샤 | 중계 장치 및 통신 방식 선택 방법 및 프로그램을 기억한 기억 매체 |
WO2016009106A1 (en) * | 2014-07-18 | 2016-01-21 | Nokia Technologies Oy | Access to a node |
CN104283715B (zh) * | 2014-10-22 | 2018-01-12 | 西安未来国际信息股份有限公司 | 一种海量日志转发方法 |
US10033631B1 (en) * | 2015-04-23 | 2018-07-24 | Cisco Technology, Inc. | Route distribution for service appliances |
US9998955B1 (en) * | 2015-06-10 | 2018-06-12 | Amazon Technologies, Inc. | Multi-tier stateful network flow management architecture |
-
2016
- 2016-08-04 TW TW105124714A patent/TWI625950B/zh not_active IP Right Cessation
- 2016-08-29 CN CN201610756706.XA patent/CN107690005A/zh not_active Withdrawn
-
2017
- 2017-03-13 US US15/456,585 patent/US20180041433A1/en not_active Abandoned
- 2017-05-03 EP EP17169164.5A patent/EP3280117A1/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988440A (zh) * | 2019-05-22 | 2020-11-24 | 鸿富锦精密电子(天津)有限公司 | 网络地址转换方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20180041433A1 (en) | 2018-02-08 |
TWI625950B (zh) | 2018-06-01 |
TW201806358A (zh) | 2018-02-16 |
EP3280117A1 (en) | 2018-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9231918B2 (en) | Use of virtual network interfaces and a websocket based transport mechanism to realize secure node-to-site and site-to-site virtual private network solutions | |
CN102333075B (zh) | 用于移动设备的具有动态故障转移的多服务vpn网络客户端 | |
CN102333110B (zh) | 用于移动设备的具有动态翻译用户主页的vpn网络客户端 | |
CN102316093B (zh) | 用于移动设备的双模式多服务vpn网络客户端 | |
JP5958864B2 (ja) | セキュアトンネル型プラットホームシステムおよび方法 | |
CN102316153B (zh) | 对网页邮件本地接入动态构造显示的vpn网络客户端 | |
CN103441996B (zh) | 并发传输文件的方法及系统 | |
CN102333306A (zh) | 用于移动设备的多服务vpn网络客户端 | |
CN102316092A (zh) | 用于移动设备的具有快速重新连接的vpn网络客户端 | |
CN102316094A (zh) | 用于移动设备的具有集成加速的多服务vpn网络客户端 | |
CN103346900B (zh) | 大二层网络中虚拟机热迁移后的路由配置方法和网关 | |
ES2758779T3 (es) | Sistema de red de banda ancha y procedimiento de implementación del mismo | |
BR112021012951A2 (pt) | Aceleração e otimização de tráfego de encapsulamento multiprotocolo | |
CN107547402A (zh) | 一种转发表生成方法和装置 | |
CN103236964B (zh) | 基于Linux的DS-Lite实现方法及其CPE接入设备 | |
US9445384B2 (en) | Mobile device to generate multiple maximum transfer units and data transfer method | |
CN107690005A (zh) | 通过网络地址转换来转送封包的方法与装置 | |
Angelescu | CCNA Certification All-in-one for Dummies | |
CN101026547A (zh) | 一种将Intranet中的IPv6主机接入全球IPv6网络的方法及系统 | |
CN100490393C (zh) | 一种访问客户网络管理平台的方法 | |
CN104426735B (zh) | 一种建立虚拟专用网络连接的方法及装置 | |
CN102710518A (zh) | 广域网下实现nat穿透的方法及系统 | |
CN109660459B (zh) | 一种物理网关及其复用ip地址的方法 | |
CN115085953A (zh) | 一种内网访问方法、装置、设备及计算机可读存储介质 | |
Cisco | Release Notes for Cisco 3200MARC Series Routers for IOS Release 12.2(11)YQ |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180213 |