From what I understand, your OpenSIPS ends up routing those mid-dialog requests to itself!  This is definitely bogus, unless there is some spiraling logic involved, which I doubt to be the case.  Can you upload text file or pcap with a network capture of your call attempt, so we can figure out what's broken over there?

Liviu Chircu
OpenSIPS Developer
http://www.opensips-solutions.com

On 24.04.2019 18:48, Mark Farmer wrote:
Hi, thanks for the reply.

I added the xlog which told me that it was trying to find permissions for itself - this is an mhomed server. That seems a bit odd to me but I added the permissions and the 403 responses stopped. - Is this the correct thing to do?

The issue I have now is that the RE-INVITES are not making it across the OpenSIPS server to the next hop which is an Asterisk server (via a different NIC). I think the issue is that Asterisk does not add a Record-Route header on the initial INVITE and so loose_route() doesn't know where to relay the message.

This is my rr module config:
loadmodule "rr.so"
modparam("rr", "append_fromtag", 1)
modparam("rr", "enable_double_rr", 1)

Any ideas on how to get my RE_INVITES working please?

Many thanks
Mark.


On Tue, 23 Apr 2019 at 12:43, Liviu Chircu <[email protected] <mailto:[email protected]>> wrote:

    Hi, Mark!

    The best way to proceed is to add an xlog("checking $si:$sp\n")
    before check_source_address(), then some useful xlog() messages on
    each if branch, so we can confirm the theory that this is an
    OpenSIPS issue, and not a problem specific to your setup.

    Liviu Chircu
    OpenSIPS Developer
    http://www.opensips-solutions.com

    On 23.04.2019 14:18, Mark Farmer wrote:
    Should've added I'm running OpenSIPS 2.4.4

    Mark.


    On Tue, 23 Apr 2019 at 12:10, Mark Farmer <[email protected]
    <mailto:[email protected]>> wrote:

        Hi everyone,

        I'm seeing some odd behaviour in tha initial requests are
        allowed but RE-INVITES are resulting in 403. From my logging
        I can see the INVITE coming in so I think it must be
        matching. Why would it not obey and route the request?

        This is the bit of my request route that identifies the source:

        if (check_source_address("1","$avp(trunk_attrs)")) {
                        # request comes from trunks
                        xlog ("MF - $rm FROM $avp(trunk_attrs)");
                        setflag(IS_TRUNK);
                } else {
        send_reply("403","Forbidden");
                        exit;
                }

        Many thanks
        Mark.

-- Mark Farmer
        [email protected] <mailto:[email protected]>



-- Mark Farmer
    [email protected] <mailto:[email protected]>

    _______________________________________________
    Users mailing list
    [email protected]  <mailto:[email protected]>
    http://lists.opensips.org/cgi-bin/mailman/listinfo/users
    _______________________________________________
    Users mailing list
    [email protected] <mailto:[email protected]>
    http://lists.opensips.org/cgi-bin/mailman/listinfo/users



--
Mark Farmer
[email protected] <mailto:[email protected]>

_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to