[Freeswitch-users] Wrong IP on ACK?

David Aldworth daldworth at teliax.com
Tue Nov 4 09:43:03 PST 2008


Hi bkw -

We did that and it does indeed fix the issue. However, in the case  
that you have multiple SIP UA's behind a router there tend to be many  
dynamically generated ports in use. The obvious solution would be to  
statically map a port to an internal IP and then set the externip and  
localhost settings. I agree, this would work. Except if you are using  
a dsl or cable modem provider that also like to update your WAN ip on  
a regular basis. But what confuses me more is that all the sip  
messaging works fine right up until the ACK we send back to the 200  
OK. Obviously FS is sending the ACK to the Contact field IP but is  
there a way in FS to tell it to just respond on the IP and port that  
the 200 OK came from? I thought that is what the force rport setting  
did but i guess it does not.

David

On Nov 4, 2008, at 10:32 AM, Brian West wrote:

> You need to set localnet and externip or externhost on Asterisk so it
> doesn't lie about its IP.
>
> /b
>
> On Nov 4, 2008, at 11:10 AM, David Aldworth wrote:
>
>> For some reason when trunking with Asterisk PBX's (yes, I know) FS
>> wants to send the ACK to the internal ip found in the Contact field  
>> of
>> the 200 OK. We have the force rport setting on but it's still not
>> responding to that IP. Register's work. Most of the sip signalling
>> works, just when the customer specifies the Contact filed with an
>> internal ip. Below is a packet capture and our external.xml conf  
>> file.
>>
>> U 2008/11/04 09:17:08.259672 64.74.188.23:5060 -> 68.188.189.202:5060
>> INVITE sip:989607XXXX at 68.188.189.202:5060 SIP/2.0.
>> Via: SIP/2.0/UDP 64.74.188.23;rport;branch=z9hG4bKc6y6pr80HyeaN.
>> Max-Forwards: 68.
>> From: "user" <sip:303452XXXX at 64.74.188.23>;tag=Dt6v81cDZXa3B.
>> To: <sip:989607XXXX at 68.188.189.202:5060>.
>> Call-ID: de7c471c-252e-122c-3cba-5f1bac93b621.
>> CSeq: 106789378 INVITE.
>> Contact: <sip:mod_sofia at 64.74.188.23:5060>.
>> User-Agent: FreeSWITCH-mod_sofia/1.0.1-exported.
>> Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, PRACK, MESSAGE, SUBSCRIBE,
>> NOTIFY, REFER, UPDATE, REGISTER, INFO, PUBLISH.
>> Supported: 100rel, timer, precondition, path, replaces.
>> Allow-Events: talk, presence, dialog, call-info, sla, include- 
>> session-
>> description, presence.winfo, message-summary.
>> Min-SE: 120.
>> Content-Type: application/sdp.
>> Content-Disposition: session.
>> Content-Length: 370.
>>
>> U 2008/11/04 09:21:32.861720 68.188.189.202:5060 -> 64.74.188.23:5060
>> SIP/2.0 100 Trying.
>> Via: SIP/2.0/UDP
>> 64.74.188.23
>> ;branch=z9hG4bKZFem0FmX4g19H;received=64.74.188.23;rport=5060.
>> From: "user" <sip:303452XXXX at 64.74.188.23>;tag=4UF788r8ct8aD.
>> To: <sip:989607XXXX at 68.188.189.202:5060>.
>> Call-ID: 7c2d8578-252f-122c-3cba-5f1bac93b621.
>> CSeq: 106789510 INVITE.
>> User-Agent: Asterisk PBX.
>> Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
>> Supported: replaces.
>> Contact: <sip:989607XXXX at 192.168.0.5>.
>> Content-Length: 0.
>> .
>>
>> U 2008/11/04 09:21:32.861845 68.188.189.202:5060 -> 64.74.188.23:5060
>> SIP/2.0 200 OK.
>> Via: SIP/2.0/UDP
>> 64.74.188.23
>> ;branch=z9hG4bKZFem0FmX4g19H;received=64.74.188.23;rport=5060.
>> From: "user" <sip:303452XXXX at 64.74.188.23>;tag=4UF788r8ct8aD.
>> To: <sip:989607XXXX at 68.188.189.202:5060>;tag=as1da4b7aa.
>> Call-ID: 7c2d8578-252f-122c-3cba-5f1bac93b621.
>> CSeq: 106789510 INVITE.
>> User-Agent: Asterisk PBX.
>> Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY.
>> Supported: replaces.
>> Contact: <sip:989607XXXX at 192.168.0.5>.
>> Content-Type: application/sdp.
>> Content-Length: 285.
>> .
>> v=0.
>> o=root 10970 10970 IN IP4 192.168.0.5.
>> s=session.
>> c=IN IP4 192.168.0.5.
>> t=0 0.
>> m=audio 15876 RTP/AVP 18 0 101.
>> a=rtpmap:18 G729/8000.
>> a=fmtp:18 annexb=no.
>> a=rtpmap:0 PCMU/8000.
>> a=rtpmap:101 telephone-event/8000.
>> a=fmtp:101 0-16.
>> a=silenceSupp:off - - - -.
>> a=ptime:20.
>> a=sendrecv.
>>
>>
>> U 2008/11/04 09:21:32.862573 64.74.188.23:5060 -> 192.168.0.5:5060
>> ACK sip:989607XXXX at 192.168.0.5 SIP/2.0.
>> Via: SIP/2.0/UDP 64.74.188.23;rport;branch=z9hG4bK0r7c2a501SQvD.
>> Max-Forwards: 70.
>> From: "user" <sip:303452XXXX at 64.74.188.23>;tag=4UF788r8ct8aD.
>> To: <sip:989607XXXX at 68.188.189.202:5060>;tag=as1da4b7aa.
>> Call-ID: 7c2d8578-252f-122c-3cba-5f1bac93b621.
>> CSeq: 106789510 ACK.
>> Contact: <sip:mod_sofia at 64.74.188.23:5060>.
>> Content-Length: 0.
>> .
>>
>>
>>
>>
>>
>> external.xml
>>
>>
>>  <settings>
>>    <param name="debug" value="0"/>
>>    <param name="sip-trace" value="no"/>
>>    <param name="rfc2833-pt" value="101"/>
>>    <param name="sip-port" value="5060"/>
>>    <param name="dialplan" value="XML"/>
>>    <param name="context" value="public"/>
>>    <param name="dtmf-duration" value="100"/>
>>    <param name="codec-prefs" value="$${outbound_codec_prefs}"/>
>>    <param name="hold-music" value="$${hold_music}"/>
>>    <param name="use-rtp-timer" value="true"/>
>>    <param name="rtp-timer-name" value="soft"/>
>>    <param name="multiple-registrations" value="true"/>
>>    <param name="manage-presence" value="true"/>
>>    <param name="aggressive-nat-detection" value="true"/>
>>    <param name="NDLB-force-rport" value="true"/>
>>    <param name="inbound-codec-negotiation" value="generous"/>
>>    <param name="nonce-ttl" value="60"/>
>>    <param name="auth-calls" value="true"/>
>>    <param name="rtp-timeout-sec" value="1800"/>
>>    <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>
>>
>> _______________________________________________
>> Freeswitch-users mailing list
>> Freeswitch-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org





More information about the FreeSWITCH-users mailing list