[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