1. Brekeke Product Name and Version:
Brekeke SIP Server , Version 3.3.4.4 Standard
2. Java version:
1.7.0_45
3. OS type and the version:
Windows Server 2008 R2
4. UA (phone), gateway or other hardware/software involved:
IMSDroid custom (Android)
5. Your problem:
One Japanese mobile carrier is using "100.xx.xx.xx" addresses as "private IP".
Unfortunately, at Brekeke default setting, "100.xx.xx.xx" is recognized as "global IP"...
So, I wrote dial plan "register.contact.remote".
INVITE/Ringing are sent to UAS source(NAPT) IP correctly, but PRACK and ACK
is sent to UAS private IP, and there are cannot reached for UAS.
(Finally the error occurs on the client.)
I'm at a loss what to do. How can I solve this ?
Please see a session log, and give me suggestions...
Thanks
Environment
==============================================
Brekeke SIP Server: 113.32.xx.xx
UAC
Contact URI: sip:yoko@10.79.xx.xx (Mobile phone private IP...base on RFC1918)
Source IP: 1.78.xx.xx (Mobile carrier NAPT IP)
UAS
Contact URI: sip:john@100.88.xx.xx (Mobile phone private IP...not RFC1918 ?)
Source IP: 49.98.xx.xx (Mobile carrier NAPT IP)
Dial Plan
Matching Patterns:
-----------------------
$request = ^REGISTER
-----------------------
Deploy Patterns:
-----------------------
®ister.contact.remote = true
®ister.contact.nat = true
$continue = true
-----------------------
Session Log
==============================================
session.88: information:
starttime = 06/15/14 00:10:43.457
spiral-hop = 1
plugin = jp.co.cosmosplus.brekeke.plugins.AccountingPlugin
request = INVITE sip:john@113.32.xx.xx SIP/2.0
rulename = registered=sip:john(sip:john@100.88.xx.xx:50540/UDP)
org:From: = sip:yoko@113.32.xx.xx
new:From: = sip:yoko@113.32.xx.xx
org:To: = sip:john@113.32.xx.xx
new:To: = sip:john@113.32.xx.xx
src:addr/port = 1.78.xx.xx:52341 (UDP global-addr)
src:interface = 113.32.xx.xx:5060 (UDP global-addr)
dst:addr/port = 49.98.xx.xx:50540 (UDP global-addr)<====== GOOD: NAPT IP
dst:interface = 113.32.xx.xx:5060 (UDP global-addr)
uac:user-agent= xxxx/1.1.1 SC-02C
uas:user-agent= xxxx/1.1.1 SO-01E
mode:B2BUA = on
mode:RTPrelay = off (user-required)
mode:Auth = auto
mode:NAT = on { Src-Far-End-NAT Dst-Far-End-NAT }
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
INVITE sip:john@113.32.xx.xx SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>
Contact: <sip:yoko@10.79.xx.xx:52341;....
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 10.79.xx.xx
s=-
c=IN IP4 10.79.xx.xx
t=0 0
a=tcap:1 RTP/AVPF
m=audio 35232 RTP/AVP 9 8 0
c=IN IP4 10.79.xx.xx
:
session.88: send: to=UAS:49.98.xx.xx:50540(UDP) <====== GOOD: NAPT IP
==============================================
INVITE sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>
Contact: <sip:yoko@113.32.xx.xx:5060>;....
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 113.32.xx.xx
s=-
c=IN IP4 1.78.xx.xx
t=0 0
a=tcap:1 RTP/AVPF
m=audio 35232 RTP/AVP 9 8 0
c=IN IP4 1.78.xx.xx
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP)
==============================================
SIP/2.0 100 Trying (sent from the Transaction Layer)
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
Content-Length: 0
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP) <====== GOOD: NAPT IP
==============================================
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:john@100.88.xx.xx:50540;transport=udp>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
Require: 100rel
:
session.88: send: to=UAC:1.78.xx.xx:52341(UDP)
==============================================
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:john@113.32.xx.xx:5060>
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
Require: 100rel
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
PRACK sip:john@113.32.xx.xx:5060 SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:yoko@10.79.xx.xx:52341;....
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699551 PRACK
:
session.88: send: to=UAS:100.88.xx.xx:50540(UDP)<====== BAD: Private IP
==============================================
PRACK sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:yoko@113.32.xx.xx:5060>;....
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699551 PRACK
:
:
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP)
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:john@100.88.xx.xx:50540;transport=udp>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 100.88.xx.xx
s=-
c=IN IP4 100.88.xx.xx
t=0 0
m=audio 49410 RTP/AVPF 8 0
:
session.88: send: to=UAC:1.78.xx.xx:52341(UDP)
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:john@113.32.xx.xx:5060>
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 113.32.xx.xx
s=-
c=IN IP4 100.88.xx.xx<====== BAD: Private IP
t=0 0
m=audio 49410 RTP/AVPF 8 0
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
ACK sip:john@113.32.xx.xx:5060 SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:yoko@10.79.xx.xx:52341;...
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 ACK
:
session.88: send: to=UAS:100.88.xx.xx:50540(UDP)<====== BAD: Private IP
==============================================
ACK sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:yoko@113.32.xx.xx:5060>;...
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 ACK
:
Brekeke SIP Server , Version 3.3.4.4 Standard
2. Java version:
1.7.0_45
3. OS type and the version:
Windows Server 2008 R2
4. UA (phone), gateway or other hardware/software involved:
IMSDroid custom (Android)
5. Your problem:
One Japanese mobile carrier is using "100.xx.xx.xx" addresses as "private IP".
Unfortunately, at Brekeke default setting, "100.xx.xx.xx" is recognized as "global IP"...
So, I wrote dial plan "register.contact.remote".
INVITE/Ringing are sent to UAS source(NAPT) IP correctly, but PRACK and ACK
is sent to UAS private IP, and there are cannot reached for UAS.
(Finally the error occurs on the client.)
I'm at a loss what to do. How can I solve this ?
Please see a session log, and give me suggestions...
Thanks
Environment
==============================================
Brekeke SIP Server: 113.32.xx.xx
UAC
Contact URI: sip:yoko@10.79.xx.xx (Mobile phone private IP...base on RFC1918)
Source IP: 1.78.xx.xx (Mobile carrier NAPT IP)
UAS
Contact URI: sip:john@100.88.xx.xx (Mobile phone private IP...not RFC1918 ?)
Source IP: 49.98.xx.xx (Mobile carrier NAPT IP)
Dial Plan
Matching Patterns:
-----------------------
$request = ^REGISTER
-----------------------
Deploy Patterns:
-----------------------
®ister.contact.remote = true
®ister.contact.nat = true
$continue = true
-----------------------
Session Log
==============================================
session.88: information:
starttime = 06/15/14 00:10:43.457
spiral-hop = 1
plugin = jp.co.cosmosplus.brekeke.plugins.AccountingPlugin
request = INVITE sip:john@113.32.xx.xx SIP/2.0
rulename = registered=sip:john(sip:john@100.88.xx.xx:50540/UDP)
org:From: = sip:yoko@113.32.xx.xx
new:From: = sip:yoko@113.32.xx.xx
org:To: = sip:john@113.32.xx.xx
new:To: = sip:john@113.32.xx.xx
src:addr/port = 1.78.xx.xx:52341 (UDP global-addr)
src:interface = 113.32.xx.xx:5060 (UDP global-addr)
dst:addr/port = 49.98.xx.xx:50540 (UDP global-addr)<====== GOOD: NAPT IP
dst:interface = 113.32.xx.xx:5060 (UDP global-addr)
uac:user-agent= xxxx/1.1.1 SC-02C
uas:user-agent= xxxx/1.1.1 SO-01E
mode:B2BUA = on
mode:RTPrelay = off (user-required)
mode:Auth = auto
mode:NAT = on { Src-Far-End-NAT Dst-Far-End-NAT }
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
INVITE sip:john@113.32.xx.xx SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>
Contact: <sip:yoko@10.79.xx.xx:52341;....
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 10.79.xx.xx
s=-
c=IN IP4 10.79.xx.xx
t=0 0
a=tcap:1 RTP/AVPF
m=audio 35232 RTP/AVP 9 8 0
c=IN IP4 10.79.xx.xx
:
session.88: send: to=UAS:49.98.xx.xx:50540(UDP) <====== GOOD: NAPT IP
==============================================
INVITE sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>
Contact: <sip:yoko@113.32.xx.xx:5060>;....
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 113.32.xx.xx
s=-
c=IN IP4 1.78.xx.xx
t=0 0
a=tcap:1 RTP/AVPF
m=audio 35232 RTP/AVP 9 8 0
c=IN IP4 1.78.xx.xx
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP)
==============================================
SIP/2.0 100 Trying (sent from the Transaction Layer)
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
Content-Length: 0
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP) <====== GOOD: NAPT IP
==============================================
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:john@100.88.xx.xx:50540;transport=udp>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
Require: 100rel
:
session.88: send: to=UAC:1.78.xx.xx:52341(UDP)
==============================================
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:john@113.32.xx.xx:5060>
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
Require: 100rel
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
PRACK sip:john@113.32.xx.xx:5060 SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:yoko@10.79.xx.xx:52341;....
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699551 PRACK
:
session.88: send: to=UAS:100.88.xx.xx:50540(UDP)<====== BAD: Private IP
==============================================
PRACK sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:yoko@113.32.xx.xx:5060>;....
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699551 PRACK
:
:
:
session.88: receive: from=UAS:49.98.xx.xx:50540(UDP)
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:john@100.88.xx.xx:50540;transport=udp>
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 100.88.xx.xx
s=-
c=IN IP4 100.88.xx.xx
t=0 0
m=audio 49410 RTP/AVPF 8 0
:
session.88: send: to=UAC:1.78.xx.xx:52341(UDP)
==============================================
SIP/2.0 200 OK
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:john@113.32.xx.xx:5060>
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 INVITE
:
v=0
o=doubango 1983 678901 IN IP4 113.32.xx.xx
s=-
c=IN IP4 100.88.xx.xx<====== BAD: Private IP
t=0 0
m=audio 49410 RTP/AVPF 8 0
:
session.88: receive: from=UAC:1.78.xx.xx:52341(UDP)
==============================================
ACK sip:john@113.32.xx.xx:5060 SIP/2.0
Via: SIP/2.0/UDP 10.79.xx.xx:52341;....
From: <sip:yoko@113.32.xx.xx>;tag=214775390
To: <sip:john@113.32.xx.xx>;tag=bd9d40ee9s
Contact: <sip:yoko@10.79.xx.xx:52341;...
Call-ID: 5bce2523-8dcc-22f9-0117-73d38ac39fea
CSeq: 16699550 ACK
:
session.88: send: to=UAS:100.88.xx.xx:50540(UDP)<====== BAD: Private IP
==============================================
ACK sip:john@100.88.xx.xx:50540;transport=udp SIP/2.0
Via: SIP/2.0/UDP 113.32.xx.xx:5060;....
From: <sip:yoko@113.32.xx.xx>;tag=b188543e6s
To: <sip:john@113.32.xx.xx>;tag=286305718
Contact: <sip:yoko@113.32.xx.xx:5060>;...
Call-ID: 3677e588-5f1b5250-42fc4de0-693d7afe
CSeq: 16699550 ACK
: