[Asterisk-Dev] Incorrect behavior : address for SIP responses

Christian Cayeux Christian.Cayeux at alcatel.fr
Wed Jun 8 06:56:43 MST 2005


Hello,

I'm not using nat at all. Looking at the code of chan_sip.c (version 1.0.7),
this is hard coded in sip_alloc : reply address is the recvfrom address.
In a former response to my post, Marius argued that this behavior conforms
to RFC3581 :

> I am not very familiar with the SIP standards, however the behavior
> you describe seems to be legit.
>
> http://www.faqs.org/rfcs/rfc3581.html
>
>   When the client sends the request, if the request is sent using UDP,
>   the client MUST be prepared to receive the response on the same IP
>   address and port it used to populate the source IP address and source
>   port of the request.  For backwards compatibility, the client MUST
>   still be prepared to receive a response on the port indicated in the
>   sent-by field of the topmost Via header field value, as specified in
>   Section 18.1.1 of SIP [1].
>
> Marius

But on my understanding (please tell me if i'm wrong) rfc3581 is an optional
extension and its support is not mandatory. The reference is RFC3261, which
forbids such a behavior.

So, as Asterisk is intended to support RFC3581, should we consider it a bug?
Well, i still believe this is a bug, because this is the cause of potential
serious interop issues. If * is intended to interop with most of SIP
implementations, then it should conform to RFC3261.

Bye,
Christian.

-----Message d'origine-----
De : asterisk-dev-bounces at lists.digium.com
[mailto:asterisk-dev-bounces at lists.digium.com]De la part de Julian J. M.
Envoyé : mercredi 8 juin 2005 15:13
À : Asterisk Developers Mailing List
Objet : Re: [Asterisk-Dev] Incorrect behavior : address for SIP
responses


You are probably using nat=yes for that peer. Then asterisk asumes
that the other end is behind a symetric nat firewall, thus replying to
the originating port, and not 5060.

Julian J. M.

On 5/27/05, Christian Cayeux <Christian.Cayeux at alcatel.fr> wrote:
> Hello all,
>
> When receiving a SIP request, I've observed that asterisk SIP channel
> returns responses to the address it was received from. For exemple, if a
SIP
> UA, name it A, sends an Invite from a port UDP:7777 to asterisk port
> UDP:5060, then Asterisk replies a 100 Trying to A:7777! On so on for each
> response.
>
> But this behavior is not compliant to RFC3261 ( on my understanding :-) )
:
> see section 18.2.2. Its says that (i understand that), when UDP is used
and
> unless specified in Via, the response must be sent to UDP:5060.
>
> Has anyone an opinion on that? Is it already a known problem?
>
> Thanks in advance for info.
>
> Christian.
_______________________________________________
Asterisk-Dev mailing list
Asterisk-Dev at lists.digium.com
http://lists.digium.com/mailman/listinfo/asterisk-dev
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev
-------------- next part --------------
An embedded message was scrubbed...
From: "Marius S" <lov2cod at gmail.com>
Subject: Re: [Asterisk-Dev] Incorrect behavior : address for SIP responses
Date: Fri, 27 May 2005 16:59:42 +0200
Size: 3442
Url: http://lists.digium.com/pipermail/asterisk-dev/attachments/20050608/7974ef60/attachment.eml


More information about the asterisk-dev mailing list