CN106559508A - 一种服务器公私网ip地址的自动切换方法 - Google Patents

一种服务器公私网ip地址的自动切换方法 Download PDF

Info

Publication number
CN106559508A
CN106559508A CN201510630586.4A CN201510630586A CN106559508A CN 106559508 A CN106559508 A CN 106559508A CN 201510630586 A CN201510630586 A CN 201510630586A CN 106559508 A CN106559508 A CN 106559508A
Authority
CN
China
Prior art keywords
server
terminal
address
network
switching method
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.)
Pending
Application number
CN201510630586.4A
Other languages
English (en)
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.)
GRANDSTREAM NETWORKS Inc
SHENZHEN GRANDSTREAM NETWORKS TECHNOLOGY Co Ltd
Original Assignee
GRANDSTREAM NETWORKS Inc
SHENZHEN GRANDSTREAM NETWORKS 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 GRANDSTREAM NETWORKS Inc, SHENZHEN GRANDSTREAM NETWORKS TECHNOLOGY Co Ltd filed Critical GRANDSTREAM NETWORKS Inc
Priority to CN201510630586.4A priority Critical patent/CN106559508A/zh
Publication of CN106559508A publication Critical patent/CN106559508A/zh
Pending legal-status Critical Current

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/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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/5053Lease time; Renewal aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种服务器公私网IP地址的自动切换方法,终端设置有私网和公网地址及端口,主要包括以下步骤:步骤a:启动网络监测模块,用于监测网络状态是否发生变更,至少包括网络接口状态的变更、IP地址的变更;步骤b:监测网络状态变更方法包括采用traceroute或ping命令,或者直接使用ICMP协议;步骤c:如果终端识别到与服务器在同一个局域网,终端自动切换使用服务器的私网地址进行注册或通讯,否则终端切换使用所述服务器的公网地址。本发明自动切换方法可以确保通讯的连续性,避免由于使用地点或网络环境的变更引发的通讯中断,同时可以合理地使用网络资源保证通讯的质量和稳定性。

Description

一种服务器公私网 IP 地址的自动切换方法
技术领域
本发明属于通讯领域,尤其是VoIP通信中公网和私网的切换技术。
背景技术
VOIP网络电话,中文就是“通过IP数据包发送实现的语音业务”,它使你可以通过互联网免费或是资费很低地传送语音、传真、视频和数据等业务。随着VOIP通信技术的不断发展,现在已经越来越多应用到企业办公领域,同时该技术也可以应用到手机等移动端,企业内部可以更灵活高效地沟通,并极大的降低企业的通信成本。
出于安全角度考虑,企业网络通常是在防火墙或者NAT后面,每个企业一般都组建一个自己的局域网,而我们的IP-PBX一般都部署在企业内部,因此在企业里一般都是采用私网地址注册到IP-PBX服务器上,但如果企业工作人员正好在外地出差等情况没在公司里,势必就需要切换到服务器映射出去的外网地址上,如果不能及时切换,势必会影响到工作效率,比如说在公司内部,但用的是公网地址,就会造成不必要的地址转换,同时由于公网网络状况不稳定,可能会造成相应的延迟和卡顿等现象,以及由于NAT穿透引发的单通甚至无语音的问题;如果在外时,用的是公司内部的私网地址,必然不能注册到相应的服务器,直接造成服务不可用,从而降低沟通效率,影响用户体验。特别是现在协同办公以及基于云应用的发展,很多VoIP业务都可以在手机等移动端完成,带来便捷性的同时也引入了由于移动端应用在不同的使用地点时与服务器的连接问题,并且往往需要根据需要切换使用服务器的公网地址或私网地址。
鉴于以上存在的问题,利用一些技术,自动识别移动端或终端所处的网络环境,当与服务器端处于同一个局域网时使用服务器内部的私网地址,在其他情况下使用服务器对外的公网地址,一方面确保了通讯的连续性,同时也能合理地利用网络资源,确保通话以及服务的质量。
发明内容
本发明目的在于提供一种服务器公私网IP地址的自动切换方法,通过特定的技术来识别和判断服务器和终端是否属于同一个局域网,终端自动切换使用服务器的公网地址或私网地址。
一种服务器公私网IP地址的自动切换方法,终端设置有私网和公网地址及端口,其特征在于,所述自动切换方法主要包括以下步骤:步骤a:启动网络监测模块,用于监测网络状态是否发生变更,至少包括网络接口状态的变更、IP地址的变更;步骤b:监测网络状态变更方法包括采用traceroute或ping命令,或者直接使用ICMP协议;步骤c:如果所述终端识别到与服务器在同一个局域网,所述终端自动切换使用所述服务器的私网地址进行注册或通讯,否则所述终端切换使用所述服务器的公网地址。
优选的,当所述终端使用所述ping命令时,如果所述服务器通过私网地址返回响应,说明所述终端与所述服务器位于同一个局域网内。
优选的,当所述终端使用所述ping命令时,如果所述服务器没有响应,此时需要通过STUN和所述traceroute命令来进一步判断和处理。
优选的,所述终端先尝试使用所述STUN协议来发现局域网对应的公网地址,并使用所述traceroute命令获取所述终端至所述服务器私网地址的完整路由路径。
优选的,所述路由路径中未包含使用所述STUN协议发现的外网地址时,所述终端自动切换使用所述服务器的私网地址进行注册或者通讯。
优选的,所述路由路径中包含使用所述STUN协议发现的外网地址时,所述终端自动切换使用所述服务器的公网地址进行注册或者通讯。
优选的,所述终端自动切换NAT穿透方式,使用所述STUN协议或发送活报文,用于为此终端与防火墙之间的端口映射。
优选的,所述终端向外发送SIP INVITE请求,携带上一个与所述服务器协商好的自定义头域,用于确保NAT穿透和处理。
本发明的终端利用网络环境的识别和判断,合理地选择使用服务器的私网或公网地址进行通讯。本发明提供的一种服务器公私网IP地址自动切换技术方案可以确保通讯的连续性,避免由于使用地点或网络环境的变更引发的通讯中断,同时可以合理地使用网络资源保证通讯的质量和稳定性,避免由于NAT穿透引发的一系列问题。
附图说明
图1为发明具体实施例进行IP地址的自动切换方法流程图。
图2为本发明具体实施例中判断局域网对应公网地址的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明实施例中的技术方案进行清楚、完整的描述。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例都属于本发明保护的范围。
本发明实施例提供了移动终端如何去注册IP-PBX机制,在移动终端进行相关网络检测处理以及注册服务器地址自动切换。
图1为本发明具体实施例进行IP地址的自动切换方法流程图,由该图可知,具体包括如下步骤:
步骤110:终端同时设置服务器的私网(以太网)地址和公网地址及端口,用于进行注册或通讯时自动切换使用。
步骤120:启动网络监测模块,用于监测网络状态的变更,包括网络接口状态的变更、IP地址的变更等。
步骤130:在网络可用并且网络发生变更的情况下,尝试明确终端与服务器私网地址的网络连接以及路由路径。上述网络变更的情况主要包括网络接口状态的变更、IP地址端口的变更等,通过traceroute或ping命令,或直接使用ICMP协议。
步骤140:先使用ping查看服务器是否有响应,若有响应则转到步骤150,否则转到步骤160。
步骤150:如果服务器通过私网地址返回了相关的响应,说明终端与服务器位于同一个局域网内,终端自动切换使用服务器的私网地址进行注册或通讯。这边终端也会检查之前是否已经注册,以及进一步检查判断之前注册的IP地址是否是服务器的私网地址。
步骤160:如果服务器没有响应ping请求,可能是服务器出于安全的考虑关闭了ICMP的响应或是服务器临时不可达,此时需要通过STUN和traceroute命令来做进一步的判断和处理。并在终端识别到与服务器并不在同一个局域网内,切换使用服务器的公网地址。
此外,上述终端识别到与服务器不在同一个局域网内时,也可以外使用其他的一些技术以确保通讯的正常进行。
图2为本发明具体实施例中判断局域网对应公网地址的流程图。
在本发明具体实施例中,通过STUN和traceroute命令做进一步的判断和处理,由图可知主要包括以下操作步骤:
(1)尝试使用STUN协议来发现局域网对应的公网地址,并使用traceroute命令获取终端至服务器私网地址的完整路由。具体发现公网地址的方式如下:
移动终端上的应用程序(即STUN CLIENT)可以向STUN SERVER发送一个绑定请求消息,当这个请求到达STUN服务器的时候,在STUN CLIENT和STUN SERVER之间可能经过一个或者多个NAT,每经过一层NAT就会修改请求消息的源地址和端口,这样当STUN SERVER收到请求消息的源地址和端口就会变为最接近STUN SERVER的NAT的源地址和端口,STUN SERVER然后把该源地址和端口写到响应消息的XOR-MAPPED-ADDRESS的属性项中,然后把该绑定响应发回给STUN CLIENT,该响应每经过一层NAT就会去修改目的地址和端口,但不会去修改XOR-MAPPED-ADDRESS的属性项中源地址和端口的值,这样STUN CLIENT就可以通过该响应得到最外层NAT上对应的公网地址。
(2)当traceroute可以正确返回相关的路由路径并且路由路径中并未包含使用STUN协议发现的外网地址时,一般认为终端与服务器在同一个局域网内,终端自动切换使用服务器的私网地址进行注册或通讯。
(3)当traceroute可以正确返回路由路径并且路由路径中包含了使用STUN协议发现的外网地址时,说明终端与服务器私网地址并不直接可达,切换使用服务器的公网地址进行注册或通讯。
(4)当traceroute无法获取路由路径或无具体响应时,说明终端与服务器私网地址之间并不直接可达,此时切换使用服务器公网地址进行注册或通讯。
在本发明具体实施例二中,当上述终端识别到与服务器不在同一个局域网内时,具体可以通过以下操作方法来确保通讯的正常进行。
步骤 310:终端自动切换NAT穿透方式,使用STUN方式或发送保活报文,用于维持终端与防火墙之间的端口映射,确保服务器可以通过这个映射向终端发送请求或响应。
步骤 320:终端在向外发送SIP INVITE请求,携带上一个与服务器协商好的自定义头域(比如X-GS-NAT),服务器接收到类似这样的请求就自动使能或打开NAT穿透相关的功能或选项,用于确保媒体的NAT穿透和处理。
步骤 330:当网络发生变更,通过步骤120和步骤140之间的方式,确定如果终端和IP-PBX在同一个局域网内时,将自动将以上的两个功能关闭,不需要通过以上两种方式来保障公私网之间的通信。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种服务器公私网IP地址的自动切换方法,终端设置有私网和公网地址及端口,其特征在于,所述自动切换方法主要包括以下步骤:
步骤a:启动网络监测模块,用于监测网络状态是否发生变更,至少包括网络接口状态的变更、IP地址的变更;
步骤b:监测网络状态变更方法包括采用traceroute或ping命令,或者直接使用ICMP协议;
步骤c:如果所述终端识别到与服务器在同一个局域网,所述终端自动切换使用所述服务器的私网地址进行注册或通讯,否则所述终端切换使用所述服务器的公网地址。
2.根据权利要求1所述的自动切换方法,其特征在于,当所述终端使用所述ping命令时,如果所述服务器通过私网地址返回响应,说明所述终端与所述服务器位于同一个局域网内。
3.根据权利要求1所述的自动切换方法,其特征在于,当所述终端使用所述ping命令时,如果所述服务器没有响应,此时需要通过STUN和所述traceroute命令来进一步判断和处理。
4.根据权利要求3所述的自动切换方法,其特征在于,所述终端先尝试使用所述STUN协议来发现局域网对应的公网地址,并使用所述traceroute命令获取所述终端至所述服务器私网地址的完整路由路径。
5.根据权利要求4所述的自动切换方法,其特征在于,所述路由路径中未包含使用所述STUN协议发现的外网地址时,所述终端自动切换使用所述服务器的私网地址进行注册或者通讯。
6.根据权利要求5所述的自动切换方法,其特征在于,所述路由路径中包含使用所述STUN协议发现的外网地址时,所述终端自动切换使用所述服务器的公网地址进行注册或者通讯。
7.根据权利要求6所述的自动切换方法,其特征在于,所述终端自动切换NAT穿透方式,使用所述STUN协议或发送活报文,用于为此终端与防火墙之间的端口映射。
8.根据权利要求7所述的自动切换方法,其特征在于,所述终端向外发送SIP INVITE请求,携带上一个与所述服务器协商好的自定义头域,用于确保NAT穿透和处理。
CN201510630586.4A 2015-09-29 2015-09-29 一种服务器公私网ip地址的自动切换方法 Pending CN106559508A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510630586.4A CN106559508A (zh) 2015-09-29 2015-09-29 一种服务器公私网ip地址的自动切换方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510630586.4A CN106559508A (zh) 2015-09-29 2015-09-29 一种服务器公私网ip地址的自动切换方法

Publications (1)

Publication Number Publication Date
CN106559508A true CN106559508A (zh) 2017-04-05

Family

ID=58416802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510630586.4A Pending CN106559508A (zh) 2015-09-29 2015-09-29 一种服务器公私网ip地址的自动切换方法

Country Status (1)

Country Link
CN (1) CN106559508A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241742A (zh) * 2017-06-15 2017-10-10 深圳市潮流网络技术有限公司 一种网络切换动态修改应用配置方法
CN112543351A (zh) * 2020-12-17 2021-03-23 瓴盛科技有限公司 一种网络视频数据处理方法和处理系统
CN112866365A (zh) * 2021-01-11 2021-05-28 杭州复杂美科技有限公司 节点通信方法、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102664901A (zh) * 2012-05-15 2012-09-12 苏州工业园区云视信息技术有限公司 Sip呼叫中自适应穿越nat的方法
US20120309389A1 (en) * 2008-04-21 2012-12-06 Olson Timothy S Dynamic call anchoring
CN103209462A (zh) * 2013-03-12 2013-07-17 深圳创维数字技术股份有限公司 一种移动通信方法、移动通信服务器以及系统
CN104135419A (zh) * 2014-07-24 2014-11-05 中国联合网络通信集团有限公司 基于专用交换机的通信链路构建方法、系统与专用交换机

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120309389A1 (en) * 2008-04-21 2012-12-06 Olson Timothy S Dynamic call anchoring
CN102664901A (zh) * 2012-05-15 2012-09-12 苏州工业园区云视信息技术有限公司 Sip呼叫中自适应穿越nat的方法
CN103209462A (zh) * 2013-03-12 2013-07-17 深圳创维数字技术股份有限公司 一种移动通信方法、移动通信服务器以及系统
CN104135419A (zh) * 2014-07-24 2014-11-05 中国联合网络通信集团有限公司 基于专用交换机的通信链路构建方法、系统与专用交换机

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241742A (zh) * 2017-06-15 2017-10-10 深圳市潮流网络技术有限公司 一种网络切换动态修改应用配置方法
CN107241742B (zh) * 2017-06-15 2024-02-02 深圳市潮流网络技术有限公司 一种网络切换动态修改应用配置方法
CN112543351A (zh) * 2020-12-17 2021-03-23 瓴盛科技有限公司 一种网络视频数据处理方法和处理系统
CN112866365A (zh) * 2021-01-11 2021-05-28 杭州复杂美科技有限公司 节点通信方法、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
US8397276B2 (en) Protecting a network from unauthorized access
US20130308628A1 (en) Nat traversal for voip
US8650312B2 (en) Connection establishing management methods for use in a network system and network systems using the same
US20070101414A1 (en) Method for stateful firewall inspection of ice messages
KR101258988B1 (ko) VoIP 서비스 시스템 및 그 시스템의 패킷처리방법
CA2435699A1 (en) Methods for discovering network address and port translators
US9497108B2 (en) Media sessions
JP5988407B1 (ja) 通信経路制御装置、通信経路制御システム、通信経路制御方法及び通信経路制御プログラム
US8082580B1 (en) Session layer pinhole management within a network security device
US20100002701A1 (en) System and method for media communication through network address translation
US8374178B2 (en) Apparatus and method for supporting NAT traversal in voice over internet protocol system
CN106559508A (zh) 一种服务器公私网ip地址的自动切换方法
US20060140174A1 (en) VoIP (voice over internet protocol) call processing
US8194686B2 (en) Communications relay device, program and method, and network system
US20190068653A1 (en) Media bypass
US8812694B2 (en) Dialog establishment over a peer-to-peer architecture
US9516575B2 (en) Mobile device based proxy for browser-originated procedures
KR100899440B1 (ko) 사설 주소를 사용하는 망에서 VoIP 서비스를 제공하는방법 및 이를 구현하는 단말장치
EP2608488B1 (en) Dialog establishment over a peer-to-peer architecture
KR20020037223A (ko) 공인 및 사설 아이피주소를 이용한 통신서비스방법 및시스템
CN103179091A (zh) Sip终端穿越防火墙的方法

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170405

WD01 Invention patent application deemed withdrawn after publication