[SR-Users] Complex NAT Scenario,HELP!

Agiftel agiftel at gmail.com
Fri Jul 25 11:35:52 CEST 2014


Hi all, I need help configuring a little bit complex NAT/PAT scenario. Idea
is that clients on Internet registers themselvs against kamailio and then it
routes requests to Alcatel PBX. kamailio acts also as NAT proxy ( so that
clients on internet does not need vpn connection. Something like EDGE SERVER
for MS Lync clients)
Below the scenario

Alcatel PBX: 10.9.6.3
Kamailio internal NIC: 172.16.52.240
Kamailio DMZ NIC: 10.9.23.180
PU.BL.I.C.IP: 1.2.3.4


ALCATEL PBX(LAN 10.9.6.3)————--------------
							        |
								|———-(LAN INT 172.16.52.240)
										|
										|KAMAILIO (2 NICs)
										————————————
										|
										|
								|		|
								|————(LAN dmz 10.9.23.180)
						PAT/NAT	|
								|————firewal
										|
										|
										PU.BL.I.C.IP

										^
										|
										|
									Client on internet

As you can see there is a firewall that make NAT and PAT from PU.BL.I.C.IP
to internal Kamailio DMZ nic. 
natted ports are 5060 and range from 30000 to 65000 ( for RTP )

I'am tryng to use kamailio.cfg that comes with installation.. Now I am
making some changes but is not working.
Internal client ( lan 172.16.52.x ), registered on kamailio, can make call
to alcatel phones and viceversa.
External client ( on internet ) can register to kamailio but cannot call
alcatel phone nor client registered on kamailio.

Here some traces

CALL FROM EXTERNAL CLIENT TO INTERNAL CLIENT:

*U 2014/07/25 11:26:55.709196 2.2.2.2:39464 -> 10.9.23.180:5060
INVITE sip:1001 at lwsbc.longwave.eu SIP/2.0.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport.
Max-Forwards: 70.
Contact: <sip:casa at 2.2.2.2:39464>.
To: <sip:1001 at lwsbc.longwave.eu>.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces.
User-Agent: X-Lite 4.6.1 73073-dadc6769-W.
Content-Length: 275.
.
v=0.
o=- 13050753989744621 1 IN IP4 192.168.1.102.
s=X-Lite release 4.6.1 stamp 73073.
c=IN IP4 2.2.2.2.
t=0 0.
m=audio 65220 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:26:55.822346 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 100 LW-SBC is Trying.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
To: <sip:1001 at lwsbc.longwave.eu>.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Server: LW-SBC.
Content-Length: 0.
.


U 2014/07/25 11:26:55.891270 172.16.52.240:5060 -> 172.16.52.53:1384
INVITE sip:bria at 172.16.52.53:1384;rinstance=b31d64b3d4ead28c SIP/2.0.
Record-Route: <sip:1.1.1.1;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Max-Forwards: 69.
Contact: <sip:casa at 2.2.2.2:39464>.
To: <sip:1001 at lwsbc.longwave.eu>.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces.
User-Agent: X-Lite 4.6.1 73073-dadc6769-W.
Content-Length: 510.
.
v=0.
o=- 13050753989744621 1 IN IP4 192.168.1.102.
s=X-Lite release 4.6.1 stamp 73073.
c=IN IP4 1.1.1.1.
t=0 0.
a=ice-lite.
m=audio 30108 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.
a=rtcp:30109.
a=ice-ufrag:wa6qnn48.
a=ice-pwd:L2qWms8nR1SA9Z8rWtDiMpzjyEHV.
a=candidate:Kw2s2DW6WXbD5UKN 1 UDP 2130706432 1.1.1.1 30108 typ host.
a=candidate:Kw2s2DW6WXbD5UKN 2 UDP 2130706431 1.1.1.1 30109 typ host.


U 2014/07/25 11:26:55.973284 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
To: <sip:1001 at lwsbc.longwave.eu>.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Content-Length: 0.
.


U 2014/07/25 11:26:55.986747 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 180 Ringing.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Allow-Events: hold, talk.
Content-Length: 0.
.


U 2014/07/25 11:26:56.040076 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 180 Ringing.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Allow-Events: hold, talk.
Content-Length: 0.
.


U 2014/07/25 11:26:58.473501 10.9.23.180:5060 -> 2.2.2.2:39464
OPTIONS sip:2.2.2.2:39464 SIP/2.0.
Via: SIP/2.0/UDP 10.9.23.180:5060;branch=0.
From: sip:pinger at lwsbc.eu;tag=uloc-53cfd16f-38c-1-b7eb1a5f-72d84677.
To: sip:2.2.2.2:39464.
Call-ID: b2033011-c4175f65-f074de1 at 10.9.23.180.
CSeq: 1 OPTIONS.
Content-Length: 0.
.


U 2014/07/25 11:26:58.551746 2.2.2.2:39464 -> 10.9.23.180:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 10.9.23.180:5060;branch=0;received=1.1.1.1.
Contact: <sip:2.2.2.2:39464>.
To: <sip:2.2.2.2:39464>;tag=0867c967.
From: <sip:pinger at lwsbc.eu>;tag=uloc-53cfd16f-38c-1-b7eb1a5f-72d84677.
Call-ID: b2033011-c4175f65-f074de1 at 10.9.23.180.
CSeq: 1 OPTIONS.
Accept: application/sdp.
Accept-Language: en.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Supported: replaces, eventlist.
User-Agent: X-Lite release 4.6.1 stamp 73073 52ef741c-W.
Content-Length: 0.
.


U 2014/07/25 11:27:01.110665 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:01.152416 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 535.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 1.1.1.1.
t=0 0.
a=ice-lite.
m=audio 30110 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.
a=rtcp:30111.
a=ice-ufrag:ZL2KNsE9.
a=ice-pwd:UMuLNnkUmqkiRVyDj6WRKCMJnOr9.
a=candidate:Kw2s2DW6WXbD5UKN 1 UDP 2130706432 1.1.1.1 30110 typ host.
a=candidate:Kw2s2DW6WXbD5UKN 2 UDP 2130706431 1.1.1.1 30111 typ host.


U 2014/07/25 11:27:01.611529 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:01.649682 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 535.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 1.1.1.1.
t=0 0.
a=ice-lite.
m=audio 30110 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.
a=rtcp:30111.
a=ice-ufrag:ZL2KNsE9.
a=ice-pwd:UMuLNnkUmqkiRVyDj6WRKCMJnOr9.
a=candidate:Kw2s2DW6WXbD5UKN 1 UDP 2130706432 1.1.1.1 30110 typ host.
a=candidate:Kw2s2DW6WXbD5UKN 2 UDP 2130706431 1.1.1.1 30111 typ host.


U 2014/07/25 11:27:02.563132 172.16.52.53:1384 -> 172.16.52.240:5060
.
.
..............

U 2014/07/25 11:27:02.612548 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:02.629843 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 535.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 1.1.1.1.
t=0 0.
a=ice-lite.
m=audio 30110 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.
a=rtcp:30111.
a=ice-ufrag:ZL2KNsE9.
a=ice-pwd:UMuLNnkUmqkiRVyDj6WRKCMJnOr9.
a=candidate:Kw2s2DW6WXbD5UKN 1 UDP 2130706432 1.1.1.1 30110 typ host.
a=candidate:Kw2s2DW6WXbD5UKN 2 UDP 2130706431 1.1.1.1 30111 typ host.


U 2014/07/25 11:27:04.613706 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:04.617573 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 535.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 1.1.1.1.
t=0 0.
a=ice-lite.
m=audio 30110 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.
a=rtcp:30111.
a=ice-ufrag:ZL2KNsE9.
a=ice-pwd:UMuLNnkUmqkiRVyDj6WRKCMJnOr9.
a=candidate:Kw2s2DW6WXbD5UKN 1 UDP 2130706432 1.1.1.1 30110 typ host.
a=candidate:Kw2s2DW6WXbD5UKN 2 UDP 2130706431 1.1.1.1 30111 typ host.


U 2014/07/25 11:27:08.614089 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:08.615487 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:12.614697 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:12.616644 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:14.950640 2.2.2.2:39464 -> 10.9.23.180:5060
.
.
..............

U 2014/07/25 11:27:16.615213 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:16.617182 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:20.615928 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:20.617554 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:24.616354 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:24.617435 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:28.478391 10.9.23.180:5060 -> 2.2.2.2:39464
OPTIONS sip:2.2.2.2:39464 SIP/2.0.
Via: SIP/2.0/UDP 10.9.23.180:5060;branch=0.
From: sip:pinger at lwsbc.eu;tag=uloc-53cfd16f-38c-1-b7eb1a5f-82d84677.
To: sip:2.2.2.2:39464.
Call-ID: b2033011-d4175f65-d274de1 at 10.9.23.180.
CSeq: 1 OPTIONS.
Content-Length: 0.
.


U 2014/07/25 11:27:28.584706 2.2.2.2:39464 -> 10.9.23.180:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 10.9.23.180:5060;branch=0;received=1.1.1.1.
Contact: <sip:2.2.2.2:39464>.
To: <sip:2.2.2.2:39464>;tag=86694f0d.
From: <sip:pinger at lwsbc.eu>;tag=uloc-53cfd16f-38c-1-b7eb1a5f-82d84677.
Call-ID: b2033011-d4175f65-d274de1 at 10.9.23.180.
CSeq: 1 OPTIONS.
Accept: application/sdp.
Accept-Language: en.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Supported: replaces, eventlist.
User-Agent: X-Lite release 4.6.1 stamp 73073 52ef741c-W.
Content-Length: 0.
.


U 2014/07/25 11:27:28.617317 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:28.618441 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:32.564887 172.16.52.53:1384 -> 172.16.52.240:5060
.
.
..............

U 2014/07/25 11:27:32.618675 172.16.52.53:1384 -> 172.16.52.240:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
1.1.1.1;branch=z9hG4bKa2a3.f650fc43a494d751a41b895338b14212.0;received=172.16.52.240.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.


U 2014/07/25 11:27:32.620366 10.9.23.180:5060 -> 2.2.2.2:39464
SIP/2.0 200 OK.
Via: SIP/2.0/UDP
2.2.2.2:39464;branch=z9hG4bK-d8754z-015930358feee765-1---d8754z-;rport=39464.
Record-Route: <sip:1.1.1.1;lr;r2=on;ftag=a3fb3269;nat=yes>.
Record-Route: <sip:10.9.23.180;r2=on;lr=on;ftag=a3fb3269;nat=yes>.
Contact: <sip:bria at 172.16.52.53:1384>.
To: <sip:1001 at lwsbc.longwave.eu>;tag=199d4711.
From: "CASA"<sip:casa at lwsbc.longwave.eu>;tag=a3fb3269.
Call-ID: OTE2ZTRhNDU1NTU4NjU1MzU3MDZlYWUwN2E3MTRjYzk.
CSeq: 1 INVITE.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO.
Content-Type: application/sdp.
Supported: replaces, eventlist.
User-Agent: Bria 3 release 3.5.5 stamp 71243.
Content-Length: 300.
.
v=0.
o=- 1406280399954939 3 IN IP4 172.16.52.53.
s=Bria 3 release 3.5.5 stamp 71243.
c=IN IP4 172.16.52.53.
t=0 0.
m=audio 51960 RTP/AVP 125 100 0 9 8 101.
a=rtpmap:125 opus/48000/2.
a=fmtp:125 useinbandfec=1.
a=rtpmap:100 speex/16000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=sendrecv.

*


KAMAILIO CODE:

cfg:


#!KAMAILIO
#

#!define WITH_MYSQL
#!define WITH_AUTH
#!define WITH_USRLOCDB
#!define WITH_NAT
#!define WITH_DEBUG
#!define WITH_ACCDB
#!define WITH_XMLRPC
#!define WITH_MULTIDOMAIN
#!define WITH_ALIASDB
#!define WITH_ALCATEL
##------!define WITH_PSTN
#!define WITH_XHTTP
#!define WITH_ANTIFLOOD
#------#!define WITH_WEBSOCKETS



#!ifdef ACCDB_COMMENT
  ALTER TABLE acc ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT '';
  ALTER TABLE acc ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT '';
  ALTER TABLE acc ADD COLUMN src_ip varchar(64) NOT NULL default '';
  ALTER TABLE acc ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT '';
  ALTER TABLE acc ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT '';
  ALTER TABLE acc ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT '';
  ALTER TABLE missed_calls ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT
'';
  ALTER TABLE missed_calls ADD COLUMN src_domain VARCHAR(128) NOT NULL
DEFAULT '';
  ALTER TABLE missed_calls ADD COLUMN src_ip varchar(64) NOT NULL default
'';
  ALTER TABLE missed_calls ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT
'';
  ALTER TABLE missed_calls ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT
'';
  ALTER TABLE missed_calls ADD COLUMN dst_domain VARCHAR(128) NOT NULL
DEFAULT '';
#!endif


include_file "modules_lw.cfg"




####### Routing Logic ########


# Main SIP request routing logic
# - processing of any incoming SIP request starts with this route
# - note: this is the same as route { ... }
request_route {
#	sip_trace(); 
#	setflag(22);
	
#!ifdef WITH_WEBSOCKETS	
	if ((($Rp == MY_WS_PORT || $Rp == MY_WSS_PORT)
                && !(proto == WS || proto == WSS))) {
                xlog("L_WARN", "SIP request received on $Rp\n");
                sl_send_reply("403", "Forbidden");
                exit;
        }
#!endif
	 
	    
	# per request initial checks
	route(REQINIT);
	

	# NAT detection
       #!ifdef WITH_ALCATEL
	       if(($rU=~"^25[0-9][0-9]$")) {
		      route(ALCATEL);
		      }
       #!endif	
	route(NATDETECT);

	# CANCEL processing
	if (is_method("CANCEL"))
	{
		if (t_check_trans())
			t_relay();
		exit;
	}

	# handle requests within SIP dialogs
	route(WITHINDLG);

	### only initial requests (no To tag)

	t_check_trans();

	# authentication
	route(AUTH);

	# record routing for dialog forming requests (in case they are routed)
	# - remove preloaded route headers
	remove_hf("Route");
	if (is_method("INVITE|SUBSCRIBE"))
		record_route();

	# account only INVITEs
	if (is_method("INVITE"))
	{
		setflag(FLT_ACC); # do accounting
	}

	# dispatch requests to foreign domains
	route(SIPOUT);

	### requests for my local domains

	# handle presence related requests
	route(PRESENCE);

	# handle registrations
	route(REGISTRAR);

	if ($rU==$null)
	{
		# request with no Username in RURI
		sl_send_reply("484","Address Incomplete");
		exit;
	}

	# dispatch destinations to PSTN
	route(PSTN);
	
	# dispatch destinations to ALCATEL OXE
	route(ALCATEL);

	# user location service
	route(LOCATION);

	route(RELAY);
}

#!ifdef WITH_WEBSOCKETS
route[SETUP_BY_TRANSPORT] {

	if ($ru =~ "transport=ws") {
		xlog("L_INFO", "Request going to WS");
		rtpproxy_manage("froc+SP");
		t_on_reply("REPLY_FROM_WS");
	}
	else if ($proto =~ "ws") {
		xlog("L_INFO", "Request coming from WS");
		rtpproxy_manage("froc-sp");
		t_on_reply("REPLY_TO_WS");
	}
	else {
		xlog("L_INFO", "This is a classic phone call");
		rtpproxy_manage("co");
		t_on_reply("MANAGE_CLASSIC_REPLY");
	}
}

event_route[xhttp:request] {
        set_reply_close();
        set_reply_no_connect();

        if ($Rp != MY_WS_PORT
#!ifdef WITH_TLS
            && $Rp != MY_WSS_PORT
#!endif
        ) {
                xlog("L_WARN", "HTTP request received on $Rp\n");
                xhttp_reply("403", "Forbidden", "", "");
                exit;
        }

        xlog("L_INFO", "HTTP Request Received\n");

        if ($hdr(Upgrade)=~"websocket"
                        && $hdr(Connection)=~"Upgrade"
                        && $rm=~"GET") {

                # Validate Host - make sure the client is using the correct
                # alias for WebSockets
                if ($hdr(Host) == $null || !is_myself("sip:" + $hdr(Host)))
{
                        xlog("L_WARN", "Bad host $hdr(Host)\n");
                        xhttp_reply("403", "Forbidden", "", "");
                        exit;
                }

                if (ws_handle_handshake())
                {
                        # Optional... cache some information about the
                        # successful connection
                        exit;
                }
        }

        xhttp_reply("404", "Not Found", "", "");
}
#!endif


route[RELAY] {

#!ifdef WITH_WEBSOCKETS
route(SETUP_BY_TRANSPORT);
#!endif

	
	# enable additional event routes for forwarded requests
	# - serial forking, RTP relaying handling, a.s.o.
	if (is_method("INVITE|BYE|SUBSCRIBE|UPDATE")) {
		if(!t_is_set("branch_route")) t_on_branch("MANAGE_BRANCH");
	}
	if (is_method("INVITE|SUBSCRIBE|UPDATE")) {
		if(!t_is_set("onreply_route")) t_on_reply("MANAGE_REPLY");
	}
	if (is_method("INVITE")) {
		if(!t_is_set("failure_route")) t_on_failure("MANAGE_FAILURE");
	}

	if (!t_relay()) {
		sl_reply_error();
	}
	exit;
}

# Per SIP request initial checks
route[REQINIT] {
#!ifdef WITH_ANTIFLOOD
	# flood dection from same IP and traffic ban for a while
	# be sure you exclude checking trusted peers, such as pstn gateways
	# - local host excluded (e.g., loop to self)
	if(src_ip!=myself)
	{
		if($sht(ipban=>$si)!=$null)
		{
			# ip is already blocked
			xdbg("request from blocked IP - $rm from $fu (IP:$si:$sp)\n");
			exit;
		}
		if (!pike_check_req())
		{
			xlog("L_ALERT","ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n");
			$sht(ipban=>$si) = 1;
			exit;
		}
	}
#!endif

	if (!mf_process_maxfwd_header("10")) {
		sl_send_reply("483","Too Many Hops");
		exit;
	}

	if(!sanity_check("1511", "7"))
	{
		xlog("Malformed SIP message from $si:$sp\n");
		exit;
	}
}

# Handle requests within SIP dialogs
route[WITHINDLG] {
	if (has_totag()) {
		# sequential request withing a dialog should
		# take the path determined by record-routing
		if (loose_route()) {
	
	#!ifdef WITH_WEBSOCKETS
   	if ($du == "") {
    if (!handle_ruri_alias()) {
     xlog("L_ERR", "Bad alias <$ru>\n");
     sl_send_reply("400", "Bad Request");
     exit;
    }
   }
#!endif
			route(DLGURI);
			if (is_method("BYE")) {
				setflag(FLT_ACC); # do accounting ...
				setflag(FLT_ACCFAILED); # ... even if the transaction fails
			}
			else if ( is_method("ACK") ) {
				# ACK is forwarded statelessy
				route(NATMANAGE);
			}
			else if ( is_method("NOTIFY") ) {
				# Add Record-Route for in-dialog NOTIFY as per RFC 6665.
				record_route();
			}
			route(RELAY);
		} else {
			if (is_method("SUBSCRIBE") && is_uri_host_local()) {
				# in-dialog subscribe requests
				route(PRESENCE);
				exit;
			}
			if ( is_method("ACK") ) {
				if ( t_check_trans() ) {
					# no loose-route, but stateful ACK;
					# must be an ACK after a 487
					# or e.g. 404 from upstream server
					t_relay();
					exit;
				} else {
					# ACK without matching transaction ... ignore and discard
					exit;
				}
			}
			sl_send_reply("404","Not here");
		}
		exit;
	}
}

# Handle SIP registrations
route[REGISTRAR] {
	if (is_method("REGISTER"))
	{
		if(isflagset(FLT_NATS))
		{
			setbflag(FLB_NATB);
			# uncomment next line to do SIP NAT pinging 
			 setbflag(FLB_NATSIPPING);
		}
		xlog("L_NOTICE","#### message flags are: $mf [$mF]\n");
		if (!save("location"))
			sl_reply_error();

		exit;
	}
}

# USER location service
route[LOCATION] {

#!ifdef WITH_SPEEDDIAL
	# search for short dialing - 2-digit extension
	if($rU=~"^[0-9][0-9]$")
		if(sd_lookup("speed_dial"))
			route(SIPOUT);
#!endif

#!ifdef WITH_ALIASDB
	# search in DB-based aliases
	if(alias_db_lookup("dbaliases"))
		route(SIPOUT);
#!endif

	$avp(oexten) = $rU;
	if (!lookup("location")) {
		$var(rc) = $rc;
		route(TOVOICEMAIL);
		t_newtran();
		switch ($var(rc)) {
			case -1:
			case -3:
				send_reply("404", "Not Found");
				exit;
			case -2:
				send_reply("405", "Method Not Allowed");
				exit;
		}
	}

	# when routing via usrloc, log the missed calls also
	if (is_method("INVITE"))
	{
		setflag(FLT_ACCMISSED);
	}
}

# Presence server route
route[PRESENCE] {
	if(!is_method("PUBLISH|SUBSCRIBE"))
		return;

#!ifdef WITH_PRESENCE
	if (!t_newtran())
	{
		sl_reply_error();
		exit;
	};

	if(is_method("PUBLISH"))
	{
		handle_publish();
		t_release();
	}
	else
	if( is_method("SUBSCRIBE"))
	{
		handle_subscribe();
		t_release();
	}
	exit;
#!endif
	
	# if presence enabled, this part will not be executed
	if (is_method("PUBLISH") || $rU==$null)
	{
		sl_send_reply("404", "Not here");
		exit;
	}
	return;
}

# Authentication route
route[AUTH] {
#!ifdef WITH_AUTH

#!ifdef WITH_ALCATEL
	# do not auth traffic from ALCATEL - trusted!
	if(route(ALCATEL))
		return;

#!ifdef WITH_IPAUTH
	if((!is_method("REGISTER")) && allow_source_address())
	{
		# source IP allowed
		return;
	}
#!endif

	if (is_method("REGISTER") || is_from_local())
	{
		# authenticate requests
		if (!auth_check("$fd", "subscriber", "1")) {
			auth_challenge("$fd", "0");
			exit;
		}
		# user authenticated - remove auth header
		if(!is_method("REGISTER|PUBLISH"))
			consume_credentials();
	}
	# if caller is not local subscriber, then check if it calls
	# a local destination, otherwise deny, not an open relay here
	if (!is_from_local() && !is_uri_host_local())
	{
		sl_send_reply("403","Not relaying");
		exit;
	}

#!endif
	return;
}

# Caller NAT detection route
route[NATDETECT] {
#!ifdef WITH_NAT
	xlog("L_NOTICE","####$rm from $fu (IP:$si:$sp) Main Route before 
---NAT---\n");
	force_rport();
	if (!nat_uac_test("19")) {
		if (is_method("REGISTER")) {
			fix_nated_register();
			xlog("L_NOTICE","####$rm from $fu (IP:$si:$sp) in Route[NAT]
fix_nat-register\n");
		} else {
			add_contact_alias();
		}
		setflag(FLT_NATS);
	}
#!endif
	return;
}

# RTPProxy control
route[NATMANAGE] {
#!ifdef WITH_NAT
	xlog("####NATMANAGE M=$rm RURI=$ru F=$fu T=$tu IP=$si ID=$ci\n"); 
	if (is_request()) {
		if(has_totag()) {
			if(check_route_param("nat=yes")) {
				setbflag(FLB_NATB);
			}
		}
	}
	if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
		return;
	if((src_ip==ALCATEL_LAN) || (src_ip==LONGWAVE_LAN))
	  {
       rtpproxy_manage("ie");
    	xlog("L_NOTICE","####$rm $cs from $fu (IP:$si:$sp) in route[RTPPROXY]
RTPproxy with IE Flags\n");
            } else {
                rtpproxy_manage("ei");
                 xlog("L_NOTICE","####$rm $cs from $fu (IP:$si:$sp) in
route[RTPPROXY] RTPproxy with EI Flags\n");
            }
	
	if (is_request()) {
		if (!has_totag()) {
			add_rr_param(";nat=yes");
		}
	}
	if (is_reply()) {
		if(isbflagset(FLB_NATB)) {
			add_contact_alias();
		}
	}
#!endif
	return;
}

# URI update for dialog requests
route[DLGURI] {
#!ifdef WITH_NAT
	if(!isdsturiset()) {
		handle_ruri_alias();
	}
#!endif
	return;
}

# Routing to foreign domains
route[SIPOUT] {
	if (!is_uri_host_local())
	{
		append_hf("P-hint: outbound\r\n");
		route(RELAY);
	}
}

# PSTN GW routing
route[PSTN] {
#!ifdef WITH_PSTN
	# check if PSTN GW IP is defined
	if (strempty($sel(cfg_get.pstn.gw_ip))) {
		xlog("SCRIPT: PSTN rotuing enabled but pstn.gw_ip not defined\n");
		return;
	}

	# route to PSTN dialed numbers starting with '+' or '00'
	#     (international format)
	# - update the condition to match your dialing rules for PSTN routing
	if(!($rU=~"^(\+|00)[1-9][0-9]{3,20}$"))
		return;

	# only local users allowed to call
	if(!is_from_local()) {
		sl_send_reply("403", "Not Allowed");
		exit;
	}

	if (strempty($sel(cfg_get.pstn.gw_port))) {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip);
	} else {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.pstn.gw_ip) + ":"
					+ $sel(cfg_get.pstn.gw_port);
	}

	route(RELAY);
	exit;
#!endif

	return;
}

# XMLRPC routing
#!ifdef WITH_XMLRPC
route[XMLRPC] {
	# allow XMLRPC from localhost
	if ((method=="POST" || method=="GET")
			&& (src_ip==127.0.0.1)) {
		# close connection only for xmlrpclib user agents (there is a bug in
		# xmlrpclib: it waits for EOF before interpreting the response).
		if ($hdr(User-Agent) =~ "xmlrpclib")
			set_reply_close();
		set_reply_no_connect();
		dispatch_rpc();
		exit;
	}
	send_reply("403", "Forbidden");
	exit;
}
#!endif

# route to voicemail server
route[TOVOICEMAIL] {
#!ifdef WITH_VOICEMAIL
	if(!is_method("INVITE"))
		return;

	# check if VoiceMail server IP is defined
	if (strempty($sel(cfg_get.voicemail.srv_ip))) {
		xlog("SCRIPT: VoiceMail rotuing enabled but IP not defined\n");
		return;
	}
	if($avp(oexten)==$null)
		return;

	$ru = "sip:" + $avp(oexten) + "@" + $sel(cfg_get.voicemail.srv_ip)
				+ ":" + $sel(cfg_get.voicemail.srv_port);
	route(RELAY);
	exit;
#!endif

	return;
}

# manage outgoing branches
branch_route[MANAGE_BRANCH] {
	xlog("L_NOTICE","####new branch [$T_branch_idx] to $ru\n");
	route(NATMANAGE);
}

# manage incoming replies

#!ifdef WITH_WEBSOCKETS
onreply_route[REPLY_TO_WS] {

	xlog("L_INFO", "####Reply from softphone: $rs");
	
	if (t_check_status("183")) {
		change_reply_status("180", "Ringing");
		remove_body();
		exit;
	}

	if(!(status=~"[12][0-9][0-9]"))
		return;

	rtpproxy_manage("froc+SP");

	route(NATMANAGE);
}

onreply_route[REPLY_FROM_WS] {

	xlog("L_INFO", "####Reply from webrtc client: $rs");

	if(status=~"[12][0-9][0-9]") {
		rtpproxy_manage("froc-sp");
		route(NATMANAGE);
	}
}
#!endif


onreply_route[MANAGE_REPLY] {
	xlog("L_NOTICE","####incoming reply Code: $T_reply_code from IP:$si:$sp
\n");
	if(status=~"[12][0-9][0-9]")
		route(NATMANAGE);
}

# manage failure routing cases
failure_route[MANAGE_FAILURE] {
	route(NATMANAGE);

	if (t_is_canceled()) {
		exit;
	}

#!ifdef WITH_BLOCK3XX
	# block call redirect based on 3xx replies.
	if (t_check_status("3[0-9][0-9]")) {
		t_reply("404","Not found");
		exit;
	}
#!endif

#!ifdef WITH_VOICEMAIL
	# serial forking
	# - route to voicemail on busy or no answer (timeout)
	if (t_check_status("486|408")) {
		route(TOVOICEMAIL);
		exit;
	}
#!endif
}


# ======================================================
# Populate CDRs Table of Siremis
# ======================================================
route[CDRS] {
	sql_query("cb","call kamailio_cdrs()","rb");
	sql_query("cb","call kamailio_rating('default')","rb");
 
}

# -- Charts
route[STATS] {
 
	# clean very old records
	$var(tmc) = $var(tmc) + 1;
	$var(x) = $var(tmc) mod 144;
	if($var(x) == 0)
	    sql_query("ca",
			"delete from statistics where time_stamp<$Ts - 864000",
			"ra");
 
	# insert values for Kamailio internal statistics
	sql_query("ca",
		"insert into statistics (time_stamp,shm_used_size,"
		"shm_real_used_size,shm_max_used_size,shm_free_used_size,"
		"ul_users,ul_contacts) values ($Ts,$stat(used_size),"
		"$stat(real_used_size),$stat(max_used_size),$stat(free_size),"
		"$stat(location-users),$stat(location-contacts))",
		"ra");
 
	# init the values for first execution, compute the diff for the rest
	if($var(tmc)==1)
	{
		$var(rcv_req_diff) = $stat(rcv_requests);
		$var(fwd_req_diff) = $stat(fwd_requests);
		$var(2xx_trans_diff) = $stat(2xx_transactions);
	} else {
		$var(rcv_req_diff) = $stat(rcv_requests) - $sht(stats=>last_rcv_req);
		$var(fwd_req_diff) = $stat(fwd_requests) - $sht(stats=>last_fwd_req);
		$var(2xx_trans_diff) = $stat(2xx_transactions) 
									- $sht(stats=>last_2xx_trans);
	}
	# update the values for stats stored in cache (htable)
	$sht(stats=>last_rcv_req) = $stat(rcv_requests);
	$sht(stats=>last_fwd_req) = $stat(fwd_requests);
	$sht(stats=>last_2xx_trans) = $stat(2xx_transactions);
 
	# insert values for stats computed in config
	sql_query("ca",
		"update statistics set tm_active=$stat(inuse_transactions),"
		"rcv_req_diff=$var(rcv_req_diff),fwd_req_diff=$var(fwd_req_diff),"
		"2xx_trans_diff=$var(2xx_trans_diff) where time_stamp=$Ts",
		"ra");
}


# ALCATEL GW routing

route[ALCATEL] {
#!ifdef WITH_ALCATEL
	# check if ALCATEL GW IP is defined
	if (strempty($sel(cfg_get.alcatel.gw_ip))) {
		xlog("SCRIPT: ALCATEL routing enabled but alcatel.gw_ip not defined\n");
		return;
	}

	# route to ALCATEL dialed numbers starting with '25xx'
	# - update the condition to match your dialing rules for ALCATEL routing
	if(!($rU=~"^25[0-9][0-9]$"))
		return;

	# only local users allowed to call
	if(!is_from_local()) {
		sl_send_reply("403", "Not Allowed!!!!!");
		exit;
	}

	if (strempty($sel(cfg_get.alcatel.gw_port))) {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.alcatel.gw_ip);
	} else {
		$ru = "sip:" + $rU + "@" + $sel(cfg_get.alcatel.gw_ip) + ":"
					+ $sel(cfg_get.alcatel.gw_port);
	}
			set_advertised_address("10.9.23.180");

	route(RELAY);
	exit;
#!endif

	return;
}





modules:

####### Global Parameters #########

#!ifdef WITH_DEBUG
debug=4
log_stderror=no
#!else
debug=2
log_stderror=no
#!endif

memdbg=5
memlog=5

mhomed=1


log_facility=LOG_LOCAL1

fork=yes
children=4

/* uncomment the next line to disable TCP (default on) */
#disable_tcp=yes

/* uncomment the next line to disable the auto discovery of local aliases
   based on reverse DNS on IPs (default on) */
auto_aliases=no

#!ifdef WITH_TLS
enable_tls=yes
#!endif

# life time of TCP connection when there is no traffic
# - a bit higher than registration expires to cope with UA behind NAT

#tcp_connection_lifetime=3605
tcp_connection_lifetime=3604
tcp_accept_no_cl=yes
tcp_rd_buf_size=16384

server_header="Server: LW-SBC"
server_signature=yes
user_agent_header="User-Agent: LW-SBC"


#!ifdef WITH_XHTTP
tcp_accept_no_cl=yes
#!endif

####### Defined Values #########

# *** Value defines - IDs used later in config
#!ifdef WITH_MYSQL
# - database URL - used to connect to database server by modules such
#       as: auth_db, acc, usrloc, a.s.o.
#!ifndef DBURL
#!define DBURL "mysql://kamailio:kamailiorw@localhost/kamailio"
#!endif
#!endif
#!ifdef WITH_MULTIDOMAIN
# - the value for 'use_domain' parameters
#!define MULTIDOMAIN 1
#!else
#!define MULTIDOMAIN 0
#!endif

# - flags
#   FLT_ - per transaction (message) flags
#	FLB_ - per branch flags
#!define FLT_ACC 1
#!define FLT_ACCMISSED 2
#!define FLT_ACCFAILED 3
#!define FLT_NATS 5

#!define FLB_NATB 6
#!define FLB_NATSIPPING 7
#!define FLT_OUT 8

#!define ALCATEL_LAN 10.9.6.0/24
#!define LONGWAVE_LAN 172.16.52.0/24

#!substdef "!MY_IP_ADDR_DMZ!10.9.23.180!g"
#!substdef "!MY_IP_ADDR_INT!172.16.52.240!g"
#!substdef "!MY_DOMAIN!lwsbc.longwave.eu!g"
#!substdef "!MY_WS_PORT!10080!g"
#!substdef "!MY_WSS_PORT!10443!g"

#!substdef "!ALCATEL_IP!10.9.6.3!g"

#!substdef "!MY_WS_ADDR!tcp:MY_IP_ADDR_DMZ:MY_WS_PORT!g"
#!substdef "!MY_WSS_ADDR!tls:MY_IP_ADDR_DMZ:MY_WSS_PORT!g"


listen=MY_IP_ADDR_DMZ:5060 advertised_address = "1.1.1.1"
listen=MY_IP_ADDR_INT:5060
#!ifdef WITH_WEBSOCKETS
listen=MY_WS_ADDR
#!ifdef WITH_TLS
listen=MY_WSS_ADDR
#!endif
#!endif


alias = "MY_DOMAIN:5060"
alias = "MY_IP_ADDR_DMZ:5060"
alias = "MY_IP_ADDR_INT:5060"
alias = "MY_DOMAIN:10080"
alias = "MY_IP_ADDR_DMZ:10080"



/* port to listen to
 * - can be specified more than once if needed to listen on many ports */
port=5060
port=10080


####### Custom Parameters #########

# These parameters can be modified runtime via RPC interface
# - see the documentation of 'cfg_rpc' module.
#
# Format: group.id = value 'desc' description
# Access: $sel(cfg_get.group.id) or @cfg_get.group.id
#

#!ifdef WITH_PSTN
# PSTN GW Routing
#
# - pstn.gw_ip: valid IP or hostname as string value, example:
# pstn.gw_ip = "10.0.0.101" desc "My PSTN GW Address"
#
# - by default is empty to avoid misrouting
pstn.gw_ip = "10.9.6.3" desc "PSTN GW Address"
pstn.gw_port = "5060" desc "PSTN GW Port"
#!endif

#!ifdef WITH_ALCATEL
# ALCATEL routing
#
alcatel.gw_ip = "10.9.6.3" desc "Alcatel OXE GW, Longwave"
alcatel.gw_port = "5060" desc "Alcatel OXE GW Port"
#!endif

#!ifdef WITH_VOICEMAIL
# VoiceMail Routing on offline, busy or no answer
#
# - by default Voicemail server IP is empty to avoid misrouting
voicemail.srv_ip = "" desc "VoiceMail IP Address"
voicemail.srv_port = "5060" desc "VoiceMail Port"
#!endif



####### Modules Section ########

# set paths to location of modules (to sources or installation folders)
#!ifdef WITH_SRCPATH
mpath="modules_k:modules"
#!else
mpath="/usr/lib/i386-linux-gnu/kamailio/modules/"
#!endif

#!ifdef WITH_MYSQL
loadmodule "db_mysql.so"
#!endif

loadmodule "textopsx.so"

#!ifdef WITH_WEBSOCKETS
loadmodule "websocket.so"
#!endif

loadmodule "mi_fifo.so"
loadmodule "kex.so"
loadmodule "corex.so"
loadmodule "tm.so"
loadmodule "tmx.so"
loadmodule "sl.so"
loadmodule "rr.so"
loadmodule "pv.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "textops.so"
loadmodule "siputils.so"
loadmodule "xlog.so"
loadmodule "sanity.so"
loadmodule "ctl.so"
loadmodule "cfg_rpc.so"
loadmodule "mi_rpc.so"
loadmodule "acc.so"
loadmodule "siptrace.so"
loadmodule "sdpops.so"



# -- for siremis CDRs --------------
loadmodule "rtimer.so"
loadmodule "sqlops.so"

# -- Charts Panel
#loadmodule "htable.so"
#------- GIA' CARICATO CON L'ANTIFLOOD----------

# -- MI Commands Panel
loadmodule "mi_datagram.so"


#!ifdef WITH_AUTH
loadmodule "auth.so"
loadmodule "auth_db.so"
#!ifdef WITH_IPAUTH
loadmodule "permissions.so"
#!endif
#!endif

#!ifdef WITH_ALIASDB
loadmodule "alias_db.so"
#!endif

#!ifdef WITH_SPEEDDIAL
loadmodule "speeddial.so"
#!endif

#!ifdef WITH_MULTIDOMAIN
loadmodule "domain.so"
#!endif

#!ifdef WITH_PRESENCE
loadmodule "presence.so"
loadmodule "presence_xml.so"
#!endif

#!ifdef WITH_NAT
loadmodule "nathelper.so"
loadmodule "rtpproxy-ng.so"
#----loadmodule "rtpproxy.so"
#!endif

#!ifdef WITH_TLS
loadmodule "tls.so"
#!endif

#!ifdef WITH_ANTIFLOOD
loadmodule "htable.so"
loadmodule "pike.so"
#!endif

#!ifdef WITH_XMLRPC
loadmodule "xmlrpc.so"
#!endif

#!ifdef WITH_DEBUG
loadmodule "debugger.so"
#!endif

#!ifdef WITH_XHTTP
loadmodule "xhttp.so"
#!endif

#!ifdef WITH_XHTTP_RPC
loadmodule "xhttp_rpc.so"
#!endif

#!ifdef WITH_XHTTP_PI
loadmodule "xhttp_pi.so"
#!endif

# ----------------- setting module-specific parameters ---------------


# ----- mi_fifo params -----
modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")


# ----- tm params -----
# auto-discard branches from previous serial forking leg
modparam("tm", "failure_reply_mode", 3)
# default retransmission timeout: 30sec
modparam("tm", "fr_timer", 30000)
# default invite retransmission timeout after 1xx: 120sec
modparam("tm", "fr_inv_timer", 120000)
# ------- Modifico il valore di default ( trying -- your call is important
to us )
modparam("tm", "auto_inv_100_reason", "LW-SBC is Trying")


# ----- rr params -----
# add value to ;lr param to cope with most of the UAs
modparam("rr", "enable_full_lr", 1)
# do not append from tag to the RR (no need for this script)
modparam("rr", "append_fromtag", 1)


# ----- registrar params -----
modparam("registrar", "method_filtering", 1)
/* uncomment the next line to disable parallel forking via location */
# modparam("registrar", "append_branches", 0)
/* uncomment the next line not to allow more than 10 contacts per AOR */
#modparam("registrar", "max_contacts", 10)
# max value for expires of registrations
modparam("registrar", "max_expires", 3600)
# set it to 1 to enable GRUU
modparam("registrar", "gruu_enabled", 0)


# ----- acc params -----
/* what special events should be accounted ? */
modparam("acc", "early_media", 0)
modparam("acc", "report_ack", 0)
modparam("acc", "report_cancels", 0)
/* by default ww do not adjust the direct of the sequential requests.
   if you enable this parameter, be sure the enable "append_fromtag"
   in "rr" module */
modparam("acc", "detect_direction", 0)
/* account triggers (flags) */
modparam("acc", "log_flag", FLT_ACC)
modparam("acc", "log_missed_flag", FLT_ACCMISSED)
modparam("acc", "log_extra", 
	"src_user=$fU;src_domain=$fd;src_ip=$si;"
	"dst_ouser=$tU;dst_user=$rU;dst_domain=$rd")
modparam("acc", "failed_transaction_flag", FLT_ACCFAILED)
/* enhanced DB accounting */
#!ifdef WITH_ACCDB
modparam("acc", "db_flag", FLT_ACC)
modparam("acc", "db_missed_flag", FLT_ACCMISSED)
modparam("acc", "db_url", DBURL)
modparam("acc", "db_extra",
	"src_user=$fU;src_domain=$fd;src_ip=$si;"
	"dst_ouser=$tU;dst_user=$rU;dst_domain=$rd")
#!endif


# ----- usrloc params -----
/* enable DB persistency for location entries */
#!ifdef WITH_USRLOCDB
modparam("usrloc", "db_url", DBURL)
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "use_domain", MULTIDOMAIN)
#!endif


# ----- auth_db params -----
#!ifdef WITH_AUTH
modparam("auth_db", "db_url", DBURL)
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
modparam("auth_db", "load_credentials", "")
modparam("auth_db", "use_domain", MULTIDOMAIN)

# ----- permissions params -----
#!ifdef WITH_IPAUTH
modparam("permissions", "db_url", DBURL)
modparam("permissions", "db_mode", 1)
#!endif

#!endif


# ----- alias_db params -----
#!ifdef WITH_ALIASDB
modparam("alias_db", "db_url", DBURL)
modparam("alias_db", "use_domain", MULTIDOMAIN)
#!endif


# ----- speeddial params -----
#!ifdef WITH_SPEEDDIAL
modparam("speeddial", "db_url", DBURL)
modparam("speeddial", "use_domain", MULTIDOMAIN)
#!endif


# ----- domain params -----
#!ifdef WITH_MULTIDOMAIN
modparam("domain", "db_url", DBURL)
# register callback to match myself condition with domains list
modparam("domain", "register_myself", 1)
#!endif


#!ifdef WITH_PRESENCE
# ----- presence params -----
modparam("presence", "db_url", DBURL)

# ----- presence_xml params -----
modparam("presence_xml", "db_url", DBURL)
modparam("presence_xml", "force_active", 1)
#!endif


#!ifdef WITH_NAT
# ----- rtpproxy params -----
modparam("rtpproxy-ng", "rtpproxy_sock", "udp:127.0.0.1:12222")
#----modparam("rtpproxy", "rtpproxy_sock", "udp:127.0.0.1:7722")

# ----- nathelper params -----
modparam("nathelper", "natping_interval", 30)
modparam("nathelper", "ping_nated_only", 1)
modparam("nathelper", "sipping_bflag", FLB_NATSIPPING)
modparam("nathelper", "sipping_from", "sip:pinger at lwsbc.eu")

# params needed for NAT traversal in other modules
modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")
modparam("usrloc", "nat_bflag", FLB_NATB)
#!endif


#!ifdef WITH_TLS
# ----- tls params -----
modparam("tls", "config", "/etc/kamailio/tls.cfg")
#!endif

#!ifdef WITH_ANTIFLOOD
# ----- pike params -----
modparam("pike", "sampling_time_unit", 2)
modparam("pike", "reqs_density_per_unit", 16)
modparam("pike", "remove_latency", 4)

# ----- htable params -----
# ip ban htable with autoexpire after 5 minutes
modparam("htable", "htable", "ipban=>size=8;autoexpire=300;")
modparam("htable", "htable", "a=>size=8;autoexpire=920;")
#!endif

#!ifdef WITH_XMLRPC
# ----- xmlrpc params -----
modparam("xmlrpc", "route", "XMLRPC");
modparam("xmlrpc", "url_match", "^/RPC")
#!endif

#!ifdef WITH_DEBUG
# ----- debugger params -----
modparam("debugger", "cfgtrace", 1)
#!endif

#!ifdef WITH_XHTTP_RPC
modparam("xhttp_rpc", "xhttp_rpc_root", "http_rpc")
#!endif

#!ifdef WITH_XHTTP_PI
modparam("xhttp_pi", "xhttp_pi_root", "http_pi")
modparam("xhttp_pi", "framework", "/etc/kamailio/pi_framework.xml")
#!endif

# -- for siremis CDRs --------------
modparam("rtimer", "timer", "name=cdr;interval=300;mode=1;")
modparam("rtimer", "exec", "timer=cdr;route=CDRS")
modparam("sqlops", "sqlcon",
"cb=>mysql://kamailio:kamailiorw@localhost/kamailio")

# -- For CHARTS
modparam("rtimer", "timer", "name=tst;interval=300;mode=1;")
modparam("rtimer", "exec", "timer=tst;route=STATS")
modparam("sqlops","sqlcon",
         "ca=>mysql://kamailio:kamailiorw@localhost/kamailio")
modparam("htable", "htable", "stats=>size=6;")

# -- MI Commands Panel
modparam("mi_datagram", "socket_name", "udp:127.0.0.1:8033")

# ----- siptrace params ----- 
modparam("siptrace", "db_url", DBURL) 
modparam("siptrace", "table", "sip_trace") 
modparam("siptrace", "trace_flag", 22)
modparam("siptrace", "traced_user_avp", "$avp(s:user)") 
modparam("siptrace", "trace_on", 1) 
#modparam("siptrace", "trace_sl_acks", 1) 
#modparam("siptrace", "trace_local_ip", "10.9.23.180:5060") 



/etc/default/ngcp-rtpengine-daemon



RUN_MEDIAPROXY=yes
LISTEN_TCP=127.0.0.1:25060
LISTEN_UDP=127.0.0.1:22222
LISTEN_NG=127.0.0.1:12222
ADDRESS=10.9.23.180
ADV_ADDRESS=1.1.1.1
# ADDRESS_IPV6=...
# ADV_ADDRESS_IPV6=...
TIMEOUT=60
SILENT_TIMEOUT=3600
PIDFILE=/var/run/ngcp-rtpengine-daemon.pid
FORK=yes
# TOS=184
TABLE=0
NO_FALLBACK=yes
PORT_MIN=30000
PORT_MAX=50000
# REDIS=127.0.0.1:6379
# REDIS_DB=1
# B2B_URL=http://127.0.0.1:8090/
LOG_LEVEL=7       



Regards



--
View this message in context: http://sip-router.1086192.n5.nabble.com/Complex-NAT-Scenario-HELP-tp129226.html
Sent from the Users mailing list archive at Nabble.com.



More information about the sr-users mailing list