Brekeke Forum Index » Brekeke SIP Server Forum

Post new topic   Reply to topic
Through Registration : Problem with Contact in OK-Messages
Author Message
mjendrian
Brekeke Newbie


Joined: 30 Oct 2012
Posts: 3
Location: France

PostPosted: Tue Oct 30, 2012 11:53 am    Post subject: Through Registration : Problem with Contact in OK-Messages Reply with quote

1. Brekeke Product Name and version:
SIP SERVER 3

2. Java version:
1.7.0_09

3. OS type and the version:
3.2.0-31-virtual #50-Ubuntu

4. UA (phone), gateway or other hardware/software involved:
Bria Softphone

5. Select your network pattern from http://www.brekeke-sip.com/bbs/network/networkpatterns.html :
The setup 3 would be closest I guess. The setup is in a virtual private cloud in the Amazon E2C. Some phones are directly connected with a VPN-connection to a main SIP proxy in the VPC and the Brekeke SIP SERVER is used as kind of SBC with through registration active to the main SIP proxy. The BREKEKE SIP SERVER has a fixed IP address and a static public IP address.

6. Your problem:
Through Registration works perfectly as do calls from phones connected through the BREKEKE SERVER to phones connected to the main SIP Server. Calls in the other direction fail. (from phones connected to the main SIP Server to the phones connected through BREKEKE). BREKEKE sends the "ACK" coming from the main SIP server back to it instead of sending it to the called telephone.

I will try to illustrate the problem with an example. To keep it as simple as possible, I only show the four messages involved in the answer.

MAIN SIP SERVER ADDRESS : 10.8.0.21
BREKEKE INTERNAL ADDRESS : 10.8.0.12
BREKEKE EXTERNAL ADDRESS : 222.222.222.222
EXTERNAL NATED PHONE ADDRESS : 111.111.111.111

"OK" MESSAGE FROM EXTERNAL PHONE TO BREKEKE (answers the call)

session.12: receive: from=UAS:111.111.111.111:55521(UDP) at 10/30/12 19:06:45.356
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 222.222.222.222:5060;received=222.222.222.222;branch=z9hG4bK8e8474f8558ad24c-30-da5d10c7
Call-ID: 5bfd03ac-44fe22a9-dd74dd16-78b62552@222.222.222.222
From: "" <sip:9001@#########>;tag=b3f8e1c21s
To: "" <sip:9003@#########>;tag=aiRc0rWcaYP89j7QEEeJcEmBlrAj2vSL
CSeq: 102 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Contact: "9003" <sip:9003@111.111.111.111:55521;ob>
Supported: replaces, 100rel, timer, norefersub
Content-Type: application/sdp
Content-Length: 211

v=0
o=- 3560609200 3560609201 IN IP4 111.111.111.111
s=cpc_med
c=IN IP4 111.111.111.111
t=0 0
m=audio 4010 RTP/AVP 8 101
a=sendrecv
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15

==============================================

OK MESSAGE FROM BREKEKE TO MAIN SIP SERVER (replaces the external contact-header address by it's internal IP address)

session.12: content-type=application/sdp plugin=com.brekeke.net.content.application.Sdp

session.12: pkt=7 dp=2 st=0 sip:9003@#########(111.11.111.111:55521) --> sip:9001@#########(10.8.0.21:5060)
send="SIP/2.0 200 OK"

session.12: processtime=1

session.12: send: to=UAC:10.8.0.21:5060(UDP) at 10/30/12 19:06:45.357
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.8.0.21;branch=z9hG4bK7abd.503fbf1.0
Via: SIP/2.0/UDP 10.6.4.65:5060;branch=z9hG4bK-ac65e8fa
Call-ID: aa0e31a7-7fee7527@10.6.4.65
From: "" <sip:9001@#########>;tag=621f07a718239727o0
To: "" <sip:9003@#########>;tag=bfe87fb74s
CSeq: 102 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Contact: "9003" <sip:9003@10.8.0.12:5060;ob>
Supported: replaces, 100rel, timer, norefersub
Record-Route: <sip:10.8.0.21;lr;ftag=621f07a718239727o0>
Content-Type: application/sdp
Content-Length: 202

v=0
o=- 3560609200 3560609201 IN IP4 10.8.0.12
s=cpc_med
c=IN IP4 10.8.0.12
t=0 0
m=audio 10006 RTP/AVP 8 101
a=sendrecv
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15

==============================================

ACK MESSAGE FROM MAIN SIP SERVER TO BREKEKE (the RURI-IP address is the internal BREKEKE address communicated in the contact before)

session.12: receive: from=UAC:10.8.0.21:5060(UDP) at 10/30/12 19:06:45.467
==============================================
ACK sip:9003@10.8.0.12:5060;ob SIP/2.0
Via: SIP/2.0/UDP 10.8.0.21;branch=z9hG4bK7abd.503fbf1.2
Via: SIP/2.0/UDP 10.6.4.65:5060;branch=z9hG4bK-63c46f45
From: "" <sip:9001@#########>;tag=621f07a718239727o0
To: "" <sip:9003@#########>;tag=bfe87fb74s
Call-ID: aa0e31a7-7fee7527@10.6.4.65
CSeq: 102 ACK
Max-Forwards: 70
Route: <sip:10.8.0.21;lr;ftag=621f07a718239727o0>
Contact: "" <sip:9001@10.6.4.65:5060>
User-Agent: Cisco/SPA525G-7.4.4
Content-Length: 0


==============================================

ACK MESSAGE SENT BACK FROM BREKEKE TO MAIN SIP SERVER (the RURI-address is correctly replaced, but the target is wrong)

session.12: pkt=8 dp=1 st=0 sip:9001@#########(10.8.0.21:5060) --> sip:9003@#########(10.8.0.21)
send="ACK sip:9003@111.111.111.111:55521;ob SIP/2.0"

session.12: processtime=2

session.12: send: to=UAS:10.8.0.21(UDP) at 10/30/12 19:06:45.468
==============================================
ACK sip:9003@111.111.111.111:55521;ob SIP/2.0
Via: SIP/2.0/UDP 222.222.222.222:5060;branch=z9hG4bK2b84cd32558ad24c-9def7f90-da5d10c7
From: "" <sip:9001@#########>;tag=b3f8e1c21s
To: "" <sip:9003@#########>;tag=aiRc0rWcaYP89j7QEEeJcEmBlrAj2vSL
Call-ID: 5bfd03ac-44fe22a9-dd74dd16-78b62552@222.222.222.222
CSeq: 102 ACK
Max-Forwards: 69
Route: <sip:10.8.0.21;lr;ftag=621f07a718239727o0>
Contact: "" <sip:9001@222.222.222.222:5060>
User-Agent: Cisco/SPA525G-7.4.4
Content-Length: 0

So BREKEKE sends the ACK message back to the main SIP server, while it should be routed to the answering phone, which is connected through BREKEKE. Everything is perfect, only the target of the message is wrong. So my question would be, how can I force the BREKEKE SIP server to send the response to it's correct destination?

Any hint would be welcome.

Kind regards,

Martin
Back to top
View user's profile
lakeview
Brekeke Master Guru


Joined: 15 Nov 2007
Posts: 319
Location: Florida

PostPosted: Wed Oct 31, 2012 11:54 am    Post subject: Reply with quote

Why the MAIN SIP SERVER (10.8.0.21) added the Route header in ACK to point its IP address 10.8.0.21?

> Route: <sip:10.8.0.21;lr;ftag=621f07a718239727o0>


RFC3261 wrote:
The proxy will forward the request to the resource indicated by the URI in the topmost Route header field value or in the Request-URI if no Route header field is present.

Therefore, Brekeke SIP Server forwarded ACK to 10.8.0.21 because this address is defined in the Route header.

To avoid this issue, let you add "net.sip.fixed.addrport.uas=true" in the Brekeke SIP Server's [Config] -> [Advanced] page.
Or add "&net.sip.fixed.addrport.uas=true" in DialPlan's Deploy Patterns.
Back to top
View user's profile
mjendrian
Brekeke Newbie


Joined: 30 Oct 2012
Posts: 3
Location: France

PostPosted: Wed Oct 31, 2012 11:58 am    Post subject: Solved Reply with quote

Hello,

marvelous. This did solve my problem.

I will see, what I can do in order to remove that route.

Thank you very much for your answer.

Kind regards,

Martin
Back to top
View user's profile
mjendrian
Brekeke Newbie


Joined: 30 Oct 2012
Posts: 3
Location: France

PostPosted: Wed Oct 31, 2012 12:15 pm    Post subject: Reply with quote

The Main SIP Server did not consume the route header properly. I fixed that issue and the calls do work in both directions like a charm now. Even without the parameter in the advanced configuration.

Thank you for pointing this out to me. That helped alot.

The Brekeke SIP server is really a nice software, very easy to deploy and to configure. And on top of this with alot of possibilities to adapt to it's environment.

Kind regards,

Martin
Back to top
View user's profile
lakeview
Brekeke Master Guru


Joined: 15 Nov 2007
Posts: 319
Location: Florida

PostPosted: Wed Oct 31, 2012 12:36 pm    Post subject: Reply with quote

Martin, I'm glad to hear it Smile
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    Brekeke Forum Index » Brekeke SIP Server Forum All times are GMT - 7 Hours
Page 1 of 1