鼎信通达

Rport的作用(举例)---解决信令穿越的问题

2019-10-24 09:23:23   作者:   来源:CTI论坛   评论:0 点击:


  1. 下面举一个发送REGISTER信息的实例,在请求信息的Via头域中包含了没有值的rport参数,如下所示:
  • REGISTER sip: 124.40 . 120.188 : 5060 SIP / 2.0
  • Via: SIP/ 2.0 / UDP 124.42 . 4.203 : 15500 ;branch = z9hG4bK - d8754z -1049ed261d2e643d - 1 --- d8754z -;rport
  • Max - Forwards: 70
  • Contact: < sip: 19988888888 @ 192.168 . 2.65 : 12344 ;rinstance =7cd1c532e92fdb0e > ;expires =
  • To: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 >
  • From: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 >;tag =203ba359
  • Call -ID: Yzc4N2IwMzY5OWU4MTdkMzY0NWY4OWU3NjMzNmJiM2U.
  • CSeq: 1 REGISTER
  • Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
  • User - Agent: eyeBeam release 1105a stamp 56793
  • Content- Length:
  2. 发送到的服务器支持rport机制,它看到请求中的rport后,将通过分析UDP包信息得到的的NAT的公网地址(124.42.4.203)和端口信息(15500)分别作为received和rport属性带给客户端:
  • SIP / 2.0 200 OK
  • Via: SIP / 2.0 / UDP 124.42 . 4.203 : 15500 ;branch = z9hG4bK - d8754z -1049ed261d2e643d - 1 --- d8754z - ;rport = 15500 ;received = 124.42. 4.203
  • From: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 >;tag = 203ba359
  • To: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 > ;tag= 0005 - 058 - 7d6dc90516ae2e21
  • Call - ID: Yzc4N2IwMzY5OWU4MTdkMzY0NWY4OWU3NjMzNmJiM2U.
  • CSeq: 4 REGISTER
  • Allow: INVITE,ACK,OPTIONS,BYE,CANCEL,REGISTER,INFO,UPDATE,PRACK,REFER,SUBSCRIBE,NOTIFY,MESSAGE
  • Contact: < sip: 124.40 . 120.188 : 5060 >
  • Content - Length:
  3. 客户端在得到响应信息后,知道了所使用的公网地址和端口,在之后定期重发的REGISTER信息中,Contact变换成124.42.4.203: 15500,例如新发的REGISTER信息变为:
  • REGISTER sip: 124.40 . 120.188 : 5060 SIP / 2.0
  • Via: SIP / 2.0 / UDP 124.42 . 4.203 : 15500 ;branch = z9hG4bK - d8754z -1049ed261d2e643d - 1 --- d8754z - ;rport
  • Max - Forwards: 70
  • Contact: < sip: 19988888888 @ 124.42 . 4.203 : 15500 ;rinstance =7cd1c532e92fdb0e > ;expires =
  • To: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 >
  • From: " 19988888888 " < sip: 19988888888 @ 124.40 . 120.188 : 5060 >;tag = 203ba359
  • Call - ID: Yzc4N2IwMzY5OWU4MTdkMzY0NWY4OWU3NjMzNmJiM2U.
  • CSeq: 2 REGISTER
  • Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
  • User - Agent: eyeBeam release 1105a stamp 56793
  • Content - Length:
  这样IPPBX(或者SIP Proxy)知道了怎么将消息,发送给放在Nat后面的SIP终端,实现了NAT穿透。
  备注:
  1. 若使用freeswitch服务器,rport机制没有生效时,看下freeswithc的sip profile里面的NDLB-force-rport参数,设为 NDLB-force-rport=safe , 重启该profile 生效
  2. 若是分机的contact地址是私网的,导致无法送呼叫到分机,
  服务器用freeswitch 时,在分机的变量里,把sip-force-contact 设为 NDLB-connectile-dysfunction 即可,就不送到SIP分机的contact中的值,而是送到注册的公网地址。

相关热词搜索: 鼎信通达 Rport

上一篇:鼎信网关PCM数据包解析转换

下一篇:最后一页

分享到: 收藏