CN113099056B - 基于kamailio实现VoIP的NAT穿越的方法 - Google Patents

基于kamailio实现VoIP的NAT穿越的方法 Download PDF

Info

Publication number
CN113099056B
CN113099056B CN202110312266.XA CN202110312266A CN113099056B CN 113099056 B CN113099056 B CN 113099056B CN 202110312266 A CN202110312266 A CN 202110312266A CN 113099056 B CN113099056 B CN 113099056B
Authority
CN
China
Prior art keywords
kamailio
ippbx
user agent
nat
call
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
CN202110312266.XA
Other languages
English (en)
Other versions
CN113099056A (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.)
ITIBIA TECHNOLOGIES (SUZHOU) CO LTD
Original Assignee
ITIBIA TECHNOLOGIES (SUZHOU) 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 ITIBIA TECHNOLOGIES (SUZHOU) CO LTD filed Critical ITIBIA TECHNOLOGIES (SUZHOU) CO LTD
Priority to CN202110312266.XA priority Critical patent/CN113099056B/zh
Publication of CN113099056A publication Critical patent/CN113099056A/zh
Application granted granted Critical
Publication of CN113099056B publication Critical patent/CN113099056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • 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
    • H04L61/2564NAT traversal for a higher-layer protocol, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1045Proxies, e.g. for session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1053IP private branch exchange [PBX] functionality entities or arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0075Details of addressing, directories or routing tables

Abstract

本发明涉及基于kamailio实现VoIP的NAT穿越的方法,注册,NAT后的用户代理,需注册时,Kamailio对注册信息进行身份验证;电话的注册信息请求触发Kamailio发送注册信息请求给IPPBX,IPPBX自动向Kamailio发送在线电话邀请,所有从IPPBX中发送的邀请信息通过用户地址处理后发送给目标用户;呼叫,用户代理启动呼叫,当一新呼叫到达并通过身份验证时,Kamailio将其转发给IPPBX,如被呼叫者在线,IPPBX将呼叫发送给Kamailio,Kamailio进行地址查找并发送给呼叫者;NAT后用户代理的保活机制,向NAT后面的用户代理发送SIP请求,用户代理发回应答。

Description

基于kamailio实现VoIP的NAT穿越的方法
技术领域
本发明涉及一种基于kamailio实现VoIP的NAT穿越的方法。
背景技术
Kamailio的nat_traversal模块提供SIP信息的远端NAT处理的功能,模块包含检测在NAT后面的用户代理,修改SIP的报文头使用户代理在NAT后面也能透明的工作,向NAT后面的用户代理发送保活信息使得其在网络上可见。模块能够处理像在一级NAT网络环境中一样处理用户代理在多级NAT网络环境中的情况。模块设计可用于复杂环境,例如多个SIP代理可能参与处理注册和路由,并且传入和传出路径不一定相同,或者路由路径甚至可能在连续的对话之间发生变化。
本发明就是利用Kamailio中的NAT穿越功能实现IPPBX的用户代理在NAT后的可见。
发明内容
本发明的目的是克服现有技术存在的不足,提供一种基于kamailio实现VoIP的NAT穿越的方法。
本发明的目的通过以下技术方案来实现:
基于kamailio实现VoIP的NAT穿越的方法,包括以下步骤:
1)注册
NAT后的用户代理,需进行注册时,Kamailio对注册信息进行身份验证,如果成功,用一个新的注册信息通知IPPBX,在Kamailio中对注册信息进行身份验证;
电话的注册信息请求触发Kamailio发送注册信息请求给IPPBX,通过用户全局参数配置的Kamailio的IP和端口:kamailio.bindip、kamailio.bindport作为联系信息在注册信息中发送给IPPBX;所有电话发送的邀请信息被验证后发送给IPPBX;因IPPBX中的注册信息是Kamailio的IP和端口,所以IPPBX自动向Kamailio发送在线电话邀请,所有从IPPBX中发送的邀请信息通过用户地址处理后发送给目标用户;
2)呼叫
用户代理启动呼叫,呼叫验证在Kamailio中处理,当一新的呼叫到达并通过身份验证时,Kamailio将其转发给IPPBX,如果被呼叫者在线,IPPBX将呼叫发送给Kamailio,然后Kamailio进行地址查找并发送给呼叫者;
3)NAT后用户代理的保活机制
保活机制是向NAT后面的用户代理发送SIP请求,使用户代理发回应答,让数据包从NAT内部经常发送到代理服务器,防止NAT超时连接;许多NAT不考虑从NAT的外部到内部传输的数据包来重置连接过期计时器,因此保持用户代理的活动,需从其触发一个应答;
需发送保活信息的情况包括:
1)注册请求,为已注册的用户代理保留其对传入呼叫的可见性,为注册请求触发保活的情况;
2)订阅请求,用于订阅某些事件以保持其接收通知的可见性,为订阅请求触发保活的情况;
3)对话状态,用于已启动传出呼叫的用户代理,以保持其可见性,进一步接收对话中的消息,为传出邀请请求触发保活的情况。
进一步地,上述的基于kamailio实现VoIP的NAT穿越的方法,其中,电话的路由信息由IPPBX管理,与呼叫无关的SIP消息的路由在Kamailio中处理,利用Kamailio的脚本语言进行配置和扩展。
进一步地,上述的基于kamailio实现VoIP的NAT穿越的方法,其中,Kamailio维持NAT后的用户代理的保活状态,维持用户代理的网络可访问性。
进一步地,上述的基于kamailio实现VoIP的NAT穿越的方法,其中,在公网中使用Kamailio搭建IPPBX的代理服务器,使私网中的用户代理可以访问IPPBX。
本发明与现有技术相比具有显著的优点和有益效果,具体体现在以下方面:
本发明尽量使用现有的默认IPPBX配置信息,电话的路由信息由IPPBX管理,与呼叫无关的SIP消息的路由在Kamailio中处理,利用Kamailio的脚本语言进行配置和扩展;
Kamailio维持NAT后的用户代理的保活状态,维持用户代理的网络可访问性;
在公网中使用Kamailio搭建IPPBX的代理服务器,使私网中的用户代理可以访问IPPBX。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明具体实施方式了解。本发明的目的和其他优点可通过在所写的说明书中所特别指出的结构来实现和获得。
附图说明
图1:本发明的流程示意图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现详细说明具体实施方案。
如图1所示,基于kamailio实现VoIP的NAT穿越的方法,包括以下步骤:
1)注册
NAT后的用户代理,需进行注册时,Kamailio对注册信息进行身份验证,如果成功,用一个新的注册信息通知IPPBX,在Kamailio中对注册信息进行身份验证;
电话的注册信息请求触发Kamailio发送注册信息请求给IPPBX,通过用户全局参数配置的Kamailio的IP和端口:kamailio.bindip、kamailio.bindport作为联系信息在注册信息中发送给IPPBX;所有电话发送的邀请信息被验证后发送给IPPBX;因IPPBX中的注册信息是Kamailio的IP和端口,所以IPPBX自动向Kamailio发送在线电话邀请,所有从IPPBX中发送的邀请信息通过用户地址处理后发送给目标用户;
2)呼叫
用户代理启动呼叫,呼叫验证在Kamailio中处理,当一新的呼叫到达并通过身份验证时,Kamailio将其转发给IPPBX,如果被呼叫者在线,IPPBX将呼叫发送给Kamailio,然后Kamailio进行地址查找并发送给呼叫者;
3)NAT后用户代理的保活机制
保活机制是向NAT后面的用户代理发送SIP请求,使用户代理发回应答,让数据包从NAT内部经常发送到代理服务器,防止NAT超时连接;许多NAT不考虑从NAT的外部到内部传输的数据包来重置连接过期计时器,因此保持用户代理的活动,需从其触发一个应答;
需发送保活信息的情况包括:
1)注册请求,为已注册的用户代理保留其对传入呼叫的可见性,为注册请求触发保活的情况;
2)订阅请求,用于订阅某些事件以保持其接收通知的可见性,为订阅请求触发保活的情况;
3)对话状态,用于已启动传出呼叫的用户代理,以保持其可见性,进一步接收对话中的消息,为传出邀请请求触发保活的情况。
尽量使用现有的默认IPPBX配置信息,电话的路由信息由IPPBX管理,与呼叫无关的SIP消息的路由在Kamailio中处理,利用Kamailio的脚本语言进行配置和扩展。
Kamailio维持NAT后的用户代理的保活状态,维持用户代理的网络可访问性。
在公网中使用Kamailio搭建IPPBX的代理服务器,使私网中的用户代理可以访问IPPBX。
需要说明的是:以上所述仅为本发明的优选实施方式,并非用以限定本发明的权利范围;同时以上的描述,对于相关技术领域的专门人士应可明了及实施,因此其它未脱离本发明所揭示的精神下所完成的等效改变或修饰,均应包含在申请专利范围中。

Claims (4)

1.基于kamailio实现VoIP的NAT穿越的方法,其特征在于:包括以下步骤:
1)注册
NAT后的用户代理,需进行注册时,Kamailio对注册信息进行身份验证,如果成功,用一个新的注册信息通知IPPBX,在Kamailio中对注册信息进行身份验证;
电话的注册信息请求触发Kamailio发送注册信息请求给IPPBX,通过用户全局参数配置的Kamailio的IP和端口:kamailio.bindip、kamailio.bindport作为联系信息在注册信息中发送给IPPBX;所有电话发送的邀请信息被验证后发送给IPPBX;因IPPBX中的注册信息是Kamailio的IP和端口,所以IPPBX自动向Kamailio发送在线电话邀请,所有从IPPBX中发送的邀请信息通过用户地址处理后发送给目标用户;
2)呼叫
用户代理启动呼叫,呼叫验证在Kamailio中处理,当一新的呼叫到达并通过身份验证时,Kamailio将其转发给IPPBX,如果被呼叫者在线,IPPBX将呼叫发送给Kamailio,然后Kamailio进行地址查找并发送给呼叫者;
3)NAT后用户代理的保活机制
保活机制是向NAT后面的用户代理发送SIP请求,使用户代理发回应答,让数据包从NAT内部经常发送到代理服务器;保持用户代理的活动,需从其触发一个应答;
需发送保活信息的情况包括:
1)注册请求,为已注册的用户代理保留其对传入呼叫的可见性,为注册请求触发保活的情况;
2)订阅请求,用于订阅某些事件以保持其接收通知的可见性,为订阅请求触发保活的情况;
3)对话状态,用于已启动传出呼叫的用户代理,以保持其可见性,进一步接收对话中的消息,为传出邀请请求触发保活的情况。
2.根据权利要求1所述的基于kamailio实现VoIP的NAT穿越的方法,其特征在于:电话的路由信息由IPPBX管理,与呼叫无关的SIP消息的路由在Kamailio中处理,利用Kamailio的脚本语言进行配置和扩展。
3.根据权利要求1所述的基于kamailio实现VoIP的NAT穿越的方法,其特征在于:Kamailio维持NAT后的用户代理的保活状态,维持用户代理的网络可访问性。
4.根据权利要求1所述的基于kamailio实现VoIP的NAT穿越的方法,其特征在于:在公网中使用Kamailio搭建IPPBX的代理服务器,使私网中的用户代理可访问IPPBX。
CN202110312266.XA 2021-03-24 2021-03-24 基于kamailio实现VoIP的NAT穿越的方法 Active CN113099056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110312266.XA CN113099056B (zh) 2021-03-24 2021-03-24 基于kamailio实现VoIP的NAT穿越的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110312266.XA CN113099056B (zh) 2021-03-24 2021-03-24 基于kamailio实现VoIP的NAT穿越的方法

Publications (2)

Publication Number Publication Date
CN113099056A CN113099056A (zh) 2021-07-09
CN113099056B true CN113099056B (zh) 2022-07-22

Family

ID=76669385

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110312266.XA Active CN113099056B (zh) 2021-03-24 2021-03-24 基于kamailio实现VoIP的NAT穿越的方法

Country Status (1)

Country Link
CN (1) CN113099056B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588922A (zh) * 2004-09-28 2005-03-02 王安生 Sip软交换系统中呼叫控制与媒体流穿越私网的方法
CN1678005A (zh) * 2004-03-31 2005-10-05 国际商业机器公司 多个虚拟电话共用单一物理地址的设备、系统和方法
CN102487546A (zh) * 2010-12-01 2012-06-06 中兴通讯股份有限公司 一种会话初始化协议终端的注册方法及系统
US9473452B1 (en) * 2013-01-02 2016-10-18 8X8, Inc. NAT traversal in VoIP communication system
CN106131084A (zh) * 2016-08-30 2016-11-16 迈普通信技术股份有限公司 Rtp媒体流穿越方法、sip服务器和sip通信系统
CN106506711A (zh) * 2015-09-06 2017-03-15 北京京东尚科信息技术有限公司 Genesys环境中SIP消息的NAT穿越的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1678005A (zh) * 2004-03-31 2005-10-05 国际商业机器公司 多个虚拟电话共用单一物理地址的设备、系统和方法
CN1588922A (zh) * 2004-09-28 2005-03-02 王安生 Sip软交换系统中呼叫控制与媒体流穿越私网的方法
CN102487546A (zh) * 2010-12-01 2012-06-06 中兴通讯股份有限公司 一种会话初始化协议终端的注册方法及系统
US9473452B1 (en) * 2013-01-02 2016-10-18 8X8, Inc. NAT traversal in VoIP communication system
CN106506711A (zh) * 2015-09-06 2017-03-15 北京京东尚科信息技术有限公司 Genesys环境中SIP消息的NAT穿越的方法及装置
CN106131084A (zh) * 2016-08-30 2016-11-16 迈普通信技术股份有限公司 Rtp媒体流穿越方法、sip服务器和sip通信系统

Also Published As

Publication number Publication date
CN113099056A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
US9131006B2 (en) Method and system for extending services to cellular devices
US7333492B2 (en) Firewall proxy system and method
US8125888B2 (en) Session initiation protocol survivable server
KR101458336B1 (ko) Sip를 이용하는 기업 네트워크의 생존성을 위한 백업 sip 서버
EP2111701B1 (en) System and method for reestablishing, with a client device, a signaling session associated with a call in progress
US7983660B2 (en) Mobile telephone device identifying whether incoming wireless call anchored by an enhanced services server
US20080117839A1 (en) Method and system for managing integrated media group communications
US7995737B2 (en) Accommodation of two independent telephony systems
US7411917B1 (en) Method and system for providing registration-based SIP NAT traversal
JP4757438B2 (ja) ネットワーク、構内交換機及びそれに用いるマルチプロトコル通信端末制御方法
US7751536B1 (en) Line appearance reservation for SIP endpoints
KR20050076414A (ko) 음성 서비스 시스템 및 그 접속 방법
RU2608673C2 (ru) Обработка сообщений протокола инициирования сеансов в телекоммуникационном устройстве беспроводной связи
US8374178B2 (en) Apparatus and method for supporting NAT traversal in voice over internet protocol system
JP2014535209A (ja) Sipプロキシ・フェイルオーバ方法
US7787373B2 (en) Method and apparatus for providing secure blast calls
US8351593B2 (en) Emergency recording during VoIP session
CN113099056B (zh) 基于kamailio实现VoIP的NAT穿越的方法
US20150004965A1 (en) System and method for separation of call origination and call delivery techniques
KR101080383B1 (ko) 브이오아이피 호설정 방법 및 이를 수행하는 브이오아이피 통신 시스템
JP5158588B2 (ja) SIP電話機、VoIPシステム及びそれらに用いる同一ネットワーク内通信方法並びにそのプログラム
JP2006352543A (ja) Sip電話交換システム
JP7452084B2 (ja) 通話システム、通話端末、通信制御装置、通話プログラム、通信制御プログラム、及び、通話方法
US9628298B2 (en) Routing technique
JP2022129789A (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