INVITE ext-rtp-ip not set in FROM and SDP
Hi all. Hope that somebody can help my... First.......... I'm new to freeswitch... so please be patient ;o) I'm trying to use freeswitch as a SBC.. lync isn't playing nice with NAT... so I'm sending all my call through FS trying to rewrite SIP headers I'm having problems with ext-rtp-ip and SDP in my INVITE send by freeswitch.... the external IP is not set in FROM and SDP when I dial out via lync.. I can set FROM by setting <param name="from-domain" value="xxx.xxx.157.92"/> but SDP is still my internal IP address My setup : 10.70.0.182 10.70.0.59 xxx.xxx.157.92 yyy.yyy.65.50 Lync Srv <------------------> FS <---------------> Firewall Nat <----------------> ISP/SIP gateway FreeSWITCH Version 1.1.beta1 (git-2a25c4f 2012-04-24 16-30-20 +0200) SIP trace: send 1078 bytes to udp/[yyy.yyy.65.50]:5060 at 07:50:03.294218: ------------------------------------------------------------------------ INVITE sip:+4529802936@yyy.yyy.65.50:5060 SIP/2.0 Via: SIP/2.0/UDP xxx.xxx.157.92;rport;branch=z9hG4bK9FZjDgDrUyHvD Max-Forwards: 69 From: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;tag=7vjX1tBj987XS To: <sip:+4529802936@yyy.yyy.65.50:5060> Call-ID: 1b96e79a-094e-1230-a29b-000c29236c5d CSeq: 27334037 INVITE Contact: <sip:gw+gc-gateway@xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway> User-Agent: FreeSWITCH-mod_sofia/1.1.beta1-git-2a25c4f 2012-04-24 16-30-20 +0200 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY Supported: timer, precondition, path, replaces Allow-Events: talk, hold, refer Content-Type: application/sdp Content-Disposition: session Content-Length: 201 X-FS-Support: update_display,send_info Remote-Party-ID: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;party=calling;screen=yes;privacy=off v=0 o=FreeSWITCH 1335307501 1335307502 IN IP4 10.70.0.59 s=FreeSWITCH c=IN IP4 10.70.0.59 t=0 0 m=audio 32702 RTP/AVP 0 8 3 101 13 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=ptime:20 ------------------------------------------------------------------------ sofia status profile external ================================================================================================= Name external Domain Name N/A Auto-NAT false DBName sofia_reg_external Pres Hosts Dialplan XML Context public Challenge Realm auto_to RTP-IP 10.70.0.59 Ext-RTP-IP xxx.xxx.157.92 SIP-IP 10.70.0.59 Ext-SIP-IP xxx.xxx.157.92 URL sip:mod_sofia@xxx.xxx.157.92:5060 BIND-URL sip:mod_sofia@xxx.xxx.157.92:5060;maddr=10.70.0.59 HOLD-MUSIC local_stream://moh OUTBOUND-PROXY N/A CODECS IN G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM CODECS OUT PCMU,PCMA,GSM TEL-EVENT 101 DTMF-MODE rfc2833 CNG 13 SESSION-TO 0 MAX-DIALOG 0 NOMEDIA false LATE-NEG false PROXY-MEDIA false AGGRESSIVENAT false STUN-ENABLED true STUN-AUTO-DISABLE false CALLS-IN 0 FAILED-CALLS-IN 0 CALLS-OUT 2 FAILED-CALLS-OUT 2 REGISTRATIONS 0 sofia status gateway gc-gateway ================================================================================================= Name gc-gateway Profile external Scheme Digest Realm yyy.yyy.65.50:5060 Username User Password yes
From <sip:User@yyy.yyy.65.50:5060> Contact <sip:gw+gc-gateway@1xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway> Exten User To sip:User@yyy.yyy.65.50:5060 Proxy sip:yyy.yyy.65.50:5060 Context public Expires 3600 Freq 3600 Ping 1335339925 PingFreq 15 PingState -1/1/1 State NOREG Status UP CallsIN 0 CallsOUT 0 FailedCallsIN 0 FailedCallsOUT 0 =================================================================================================
External profle: <profile name="external"> <!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files --> <!-- This profile is only for outbound registrations to providers --> <gateways> <X-PRE-PROCESS cmd="include" data="external/*.xml"/> </gateways> <domains> <domain name="all" alias="false" parse="true"/> </domains> <settings> <param name="debug" value="0"/> <param name="sip-trace" value="no"/> <param name="sip-capture" value="no"/> <param name="rfc2833-pt" value="101"/> <param name="sip-port" value="$${external_sip_port}"/> <param name="dialplan" value="XML"/> <param name="context" value="public"/> <param name="dtmf-duration" value="2000"/> <param name="inbound-codec-prefs" value="$${global_codec_prefs}"/> <param name="outbound-codec-prefs" value="$${outbound_codec_prefs}"/> <param name="hold-music" value="$${hold_music}"/> <param name="rtp-timer-name" value="soft"/> <param name="local-network-acl" value="localnet.auto"/> <param name="manage-presence" value="false"/> <!--<param name="aggressive-nat-detection" value="true"/>--> <param name="apply-nat-acl" value="rfc1918"/> <param name="inbound-codec-negotiation" value="generous"/> <param name="nonce-ttl" value="60"/> <param name="auth-calls" value="false"/> <param name="rtp-ip" value="$${local_ip_v4}"/> <param name="sip-ip" value="$${local_ip_v4}"/> <param name="ext-rtp-ip" value="$${external_rtp_ip}"/> <param name="ext-sip-ip" value="$${external_sip_ip}"/> <param name="rtp-timeout-sec" value="300"/> <param name="rtp-hold-timeout-sec" value="1800"/> </settings> </profile> Gateway <?xml version="1.0"?> <include> <gateway name="gc-gateway"> <param name="realm" value="yyy.yyy.65.50:5060"/> <param name="username" value="User"/> <param name="password" value="Password"/> <param name="register" value="false"/> <param name="caller-id-in-from" value="true"/> <param name="ping" value="15"/> </gateway> </include> Best regards Martin
So this INVITE originates from your Lync Srv? When FreeSWITCH is used as a server, I believe it would detect that it doesn't need to use ext-rtp-ip because the INVITE originated inside the network. I have never used FreeSWITCH as a proxy, however. Have you checked out the wiki? http://wiki.freeswitch.org/wiki/Special:Search?search=SBC&go=Go On 25/04/2012 6:46 AM, Martin Soerensen wrote:
Hi all. Hope that somebody can help my...
First.......... I'm new to freeswitch... so please be patient ;o)
I'm trying to use freeswitch as a SBC.. lync isn't playing nice with NAT... so I'm sending all my call through FS trying to rewrite SIP headers
I'm having problems with ext-rtp-ip and SDP in my INVITE send by freeswitch.... the external IP is not set in FROM and SDP when I dial out via lync.. I can set FROM by setting <param name="from-domain" value="xxx.xxx.157.92"/> but SDP is still my internal IP address
My setup :
10.70.0.182 10.70.0.59 xxx.xxx.157.92 yyy.yyy.65.50
Lync Srv <------------------> FS <---------------> Firewall Nat <----------------> ISP/SIP gateway
FreeSWITCH Version 1.1.beta1 (git-2a25c4f 2012-04-24 16-30-20 +0200)
SIP trace:
send 1078 bytes to udp/[yyy.yyy.65.50]:5060 at 07:50:03.294218:
------------------------------------------------------------------------
INVITE sip:+4529802936@yyy.yyy.65.50:5060 SIP/2.0
Via: SIP/2.0/UDP xxx.xxx.157.92;rport;branch=z9hG4bK9FZjDgDrUyHvD
Max-Forwards: 69
From: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;tag=7vjX1tBj987XS
To: <sip:+4529802936@yyy.yyy.65.50:5060>
Call-ID: 1b96e79a-094e-1230-a29b-000c29236c5d
CSeq: 27334037 INVITE
Contact: <sip:gw+gc-gateway@xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway>
User-Agent: FreeSWITCH-mod_sofia/1.1.beta1-git-2a25c4f 2012-04-24 16-30-20 +0200
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY
Supported: timer, precondition, path, replaces
Allow-Events: talk, hold, refer
Content-Type: application/sdp
Content-Disposition: session
Content-Length: 201
X-FS-Support: update_display,send_info
Remote-Party-ID: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;party=calling;screen=yes;privacy=off
v=0
o=FreeSWITCH 1335307501 1335307502 IN IP4 10.70.0.59
s=FreeSWITCH
c=IN IP4 10.70.0.59
t=0 0
m=audio 32702 RTP/AVP 0 8 3 101 13
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
------------------------------------------------------------------------
sofia status profile external
=================================================================================================
Name external
Domain Name N/A
Auto-NAT false
DBName sofia_reg_external
Pres Hosts
Dialplan XML
Context public
Challenge Realm auto_to
RTP-IP 10.70.0.59
Ext-RTP-IP xxx.xxx.157.92
SIP-IP 10.70.0.59
Ext-SIP-IP xxx.xxx.157.92
URL sip:mod_sofia@xxx.xxx.157.92:5060
BIND-URL sip:mod_sofia@xxx.xxx.157.92:5060;maddr=10.70.0.59
HOLD-MUSIC local_stream://moh
OUTBOUND-PROXY N/A
CODECS IN G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM
CODECS OUT PCMU,PCMA,GSM
TEL-EVENT 101
DTMF-MODE rfc2833
CNG 13
SESSION-TO 0
MAX-DIALOG 0
NOMEDIA false
LATE-NEG false
PROXY-MEDIA false
AGGRESSIVENAT false
STUN-ENABLED true
STUN-AUTO-DISABLE false
CALLS-IN 0
FAILED-CALLS-IN 0
CALLS-OUT 2
FAILED-CALLS-OUT 2
REGISTRATIONS 0
sofia status gateway gc-gateway
=================================================================================================
Name gc-gateway
Profile external
Scheme Digest
Realm yyy.yyy.65.50:5060
Username User
Password yes
From <sip:User@yyy.yyy.65.50:5060>
Contact <sip:gw+gc-gateway@1xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway>
Exten User
To sip:User@yyy.yyy.65.50:5060
Proxy sip:yyy.yyy.65.50:5060
Context public
Expires 3600
Freq 3600
Ping 1335339925
PingFreq 15
PingState -1/1/1
State NOREG
Status UP
CallsIN 0
CallsOUT 0
FailedCallsIN 0
FailedCallsOUT 0
=================================================================================================
External profle:
<profile name="external">
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
<!-- This profile is only for outbound registrations to providers -->
<gateways>
<X-PRE-PROCESS cmd="include" data="external/*.xml"/>
</gateways>
<domains>
<domain name="all" alias="false" parse="true"/>
</domains>
<settings>
<param name="debug" value="0"/>
<param name="sip-trace" value="no"/>
<param name="sip-capture" value="no"/>
<param name="rfc2833-pt" value="101"/>
<param name="sip-port" value="$${external_sip_port}"/>
<param name="dialplan" value="XML"/>
<param name="context" value="public"/>
<param name="dtmf-duration" value="2000"/>
<param name="inbound-codec-prefs" value="$${global_codec_prefs}"/>
<param name="outbound-codec-prefs" value="$${outbound_codec_prefs}"/>
<param name="hold-music" value="$${hold_music}"/>
<param name="rtp-timer-name" value="soft"/>
<param name="local-network-acl" value="localnet.auto"/>
<param name="manage-presence" value="false"/>
<!--<param name="aggressive-nat-detection" value="true"/>-->
<param name="apply-nat-acl" value="rfc1918"/>
<param name="inbound-codec-negotiation" value="generous"/>
<param name="nonce-ttl" value="60"/>
<param name="auth-calls" value="false"/>
<param name="rtp-ip" value="$${local_ip_v4}"/>
<param name="sip-ip" value="$${local_ip_v4}"/>
<param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
<param name="ext-sip-ip" value="$${external_sip_ip}"/>
<param name="rtp-timeout-sec" value="300"/>
<param name="rtp-hold-timeout-sec" value="1800"/>
</settings>
</profile>
Gateway
<?xml version="1.0"?>
<include>
<gateway name="gc-gateway">
<param name="realm" value="yyy.yyy.65.50:5060"/>
<param name="username" value="User"/>
<param name="password" value="Password"/>
<param name="register" value="false"/>
<param name="caller-id-in-from" value="true"/>
<param name="ping" value="15"/>
</gateway>
</include>
Best regards
Martin
-- Adam -- NewPace Logo Adam Kelloway Software Engineer, NewPace phone +1 (902) 406--8375 x1031 email Adam.Kelloway@NewPace.com <mailto:Adam.Kelloway@newpace.com> aim <aim:GoIm?screenname=Adam.Kelloway@newpace.com>/msn <msnim:chat?contact=Adam.Kelloway@newpace.com> Adam.Kelloway <aim:GoIm?screenname=Adam.Kelloway@newpace.ca>@NewPace.ca
I have a call coming from lync to FS... then I bridge the call to my gateway... it's the INVIT on the gateway to my ISP/VOIP provider where I have at private IP address in the INVIT... I'm trying to set external IP of my firewall... SIP is working fine.. but not media Regards Martin From: Adam Kelloway [mailto:adam.kelloway@newpace.ca] Sent: 25. april 2012 18:02 To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] INVITE ext-rtp-ip not set in FROM and SDP So this INVITE originates from your Lync Srv? When FreeSWITCH is used as a server, I believe it would detect that it doesn't need to use ext-rtp-ip because the INVITE originated inside the network. I have never used FreeSWITCH as a proxy, however. Have you checked out the wiki? http://wiki.freeswitch.org/wiki/Special:Search?search=SBC&go=Go On 25/04/2012 6:46 AM, Martin Soerensen wrote: Hi all. Hope that somebody can help my... First.......... I'm new to freeswitch... so please be patient ;o) I'm trying to use freeswitch as a SBC.. lync isn't playing nice with NAT... so I'm sending all my call through FS trying to rewrite SIP headers I'm having problems with ext-rtp-ip and SDP in my INVITE send by freeswitch.... the external IP is not set in FROM and SDP when I dial out via lync.. I can set FROM by setting <param name="from-domain" value="xxx.xxx.157.92"/> but SDP is still my internal IP address My setup : 10.70.0.182 10.70.0.59 xxx.xxx.157.92 yyy.yyy.65.50 Lync Srv <------------------> FS <---------------> Firewall Nat <----------------> ISP/SIP gateway FreeSWITCH Version 1.1.beta1 (git-2a25c4f 2012-04-24 16-30-20 +0200) SIP trace: send 1078 bytes to udp/[yyy.yyy.65.50]:5060 at 07:50:03.294218: ------------------------------------------------------------------------ INVITE sip:+4529802936@yyy.yyy.65.50:5060 SIP/2.0 Via: SIP/2.0/UDP xxx.xxx.157.92;rport;branch=z9hG4bK9FZjDgDrUyHvD Max-Forwards: 69 From: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;tag=7vjX1tBj987XS To: <sip:+4529802936@yyy.yyy.65.50:5060> Call-ID: 1b96e79a-094e-1230-a29b-000c29236c5d CSeq: 27334037 INVITE Contact: <sip:gw+gc-gateway@xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway> User-Agent: FreeSWITCH-mod_sofia/1.1.beta1-git-2a25c4f 2012-04-24 16-30-20 +0200 Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY Supported: timer, precondition, path, replaces Allow-Events: talk, hold, refer Content-Type: application/sdp Content-Disposition: session Content-Length: 201 X-FS-Support: update_display,send_info Remote-Party-ID: "Martin Soerensen" <sip:+4578772660@10.70.0.59>;party=calling;screen=yes;privacy=off v=0 o=FreeSWITCH 1335307501 1335307502 IN IP4 10.70.0.59 s=FreeSWITCH c=IN IP4 10.70.0.59 t=0 0 m=audio 32702 RTP/AVP 0 8 3 101 13 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=ptime:20 ------------------------------------------------------------------------ sofia status profile external ================================================================================================= Name external Domain Name N/A Auto-NAT false DBName sofia_reg_external Pres Hosts Dialplan XML Context public Challenge Realm auto_to RTP-IP 10.70.0.59 Ext-RTP-IP xxx.xxx.157.92 SIP-IP 10.70.0.59 Ext-SIP-IP xxx.xxx.157.92 URL sip:mod_sofia@xxx.xxx.157.92:5060 BIND-URL sip:mod_sofia@xxx.xxx.157.92:5060;maddr=10.70.0.59 HOLD-MUSIC local_stream://moh OUTBOUND-PROXY N/A CODECS IN G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM CODECS OUT PCMU,PCMA,GSM TEL-EVENT 101 DTMF-MODE rfc2833 CNG 13 SESSION-TO 0 MAX-DIALOG 0 NOMEDIA false LATE-NEG false PROXY-MEDIA false AGGRESSIVENAT false STUN-ENABLED true STUN-AUTO-DISABLE false CALLS-IN 0 FAILED-CALLS-IN 0 CALLS-OUT 2 FAILED-CALLS-OUT 2 REGISTRATIONS 0 sofia status gateway gc-gateway ================================================================================================= Name gc-gateway Profile external Scheme Digest Realm yyy.yyy.65.50:5060 Username User Password yes
From <sip:User@yyy.yyy.65.50:5060> Contact <sip:gw+gc-gateway@1xxx.xxx.157.92:5060;transport=udp;gw=gc-gateway> Exten User To sip:User@yyy.yyy.65.50:5060 Proxy sip:yyy.yyy.65.50:5060 Context public Expires 3600 Freq 3600 Ping 1335339925 PingFreq 15 PingState -1/1/1 State NOREG Status UP CallsIN 0 CallsOUT 0 FailedCallsIN 0 FailedCallsOUT 0 =================================================================================================
External profle: <profile name="external"> <!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files --> <!-- This profile is only for outbound registrations to providers --> <gateways> <X-PRE-PROCESS cmd="include" data="external/*.xml"/> </gateways> <domains> <domain name="all" alias="false" parse="true"/> </domains> <settings> <param name="debug" value="0"/> <param name="sip-trace" value="no"/> <param name="sip-capture" value="no"/> <param name="rfc2833-pt" value="101"/> <param name="sip-port" value="$${external_sip_port}"/> <param name="dialplan" value="XML"/> <param name="context" value="public"/> <param name="dtmf-duration" value="2000"/> <param name="inbound-codec-prefs" value="$${global_codec_prefs}"/> <param name="outbound-codec-prefs" value="$${outbound_codec_prefs}"/> <param name="hold-music" value="$${hold_music}"/> <param name="rtp-timer-name" value="soft"/> <param name="local-network-acl" value="localnet.auto"/> <param name="manage-presence" value="false"/> <!--<param name="aggressive-nat-detection" value="true"/>--> <param name="apply-nat-acl" value="rfc1918"/> <param name="inbound-codec-negotiation" value="generous"/> <param name="nonce-ttl" value="60"/> <param name="auth-calls" value="false"/> <param name="rtp-ip" value="$${local_ip_v4}"/> <param name="sip-ip" value="$${local_ip_v4}"/> <param name="ext-rtp-ip" value="$${external_rtp_ip}"/> <param name="ext-sip-ip" value="$${external_sip_ip}"/> <param name="rtp-timeout-sec" value="300"/> <param name="rtp-hold-timeout-sec" value="1800"/> </settings> </profile> Gateway <?xml version="1.0"?> <include> <gateway name="gc-gateway"> <param name="realm" value="yyy.yyy.65.50:5060"/> <param name="username" value="User"/> <param name="password" value="Password"/> <param name="register" value="false"/> <param name="caller-id-in-from" value="true"/> <param name="ping" value="15"/> </gateway> </include> Best regards Martin -- Adam -- [cid:image001.png@01CD2320.CC18B7B0] Adam Kelloway Software Engineer, NewPace phone +1 (902) 406-8375 x1031 email Adam.Kelloway@NewPace.com<mailto:Adam.Kelloway@newpace.com> aim<aim:GoIm?screenname=Adam.Kelloway@newpace.com>/msn<msnim:chat?contact=Adam.Kelloway@newpace.com> Adam.Kelloway<aim:GoIm?screenname=Adam.Kelloway@newpace.ca>@NewPace.ca
participants (2)
-
Adam Kelloway
-
Martin Soerensen