Well, use $du to the destination of the ACK, instead of $ru.
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS Summit 27-30 Sept 2022, Athens
https://www.opensips.org/events/Summit-2022Athens/
On 9/12/22 6:03 PM, johan wrote:
so the question is how can I do a forward message to an ip port
without opensips rewriting the uri of ACK in stateless mode ?
On 12/09/2022 16:55, johan wrote:
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_msg: SIP Request:
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_msg: method: <ACK>
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_msg: uri:
<sip:[email protected]:*11000*;transport=udp;alias=x.y.z.t~11000~1>
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_msg: version: <SIP/2.0>
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_headers: flags=ffffffffffffffff
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_via_param: found param type 232, <branch> =
<z9hG4bK-2487-1-5>; state=16
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_via: end of header reached, state=5
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_headers: via found, flags=ffffffffffffffff
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_headers: this is the first via
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_to_param: tag=4SpHB6a416Ucg
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_to_param: end of header reached, state=13
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:_parse_to: end of header reached, state=29
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:_parse_to: display={sut},
ruri={sip:[email protected]:5060}
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:get_hdr_field: <To> [62];
uri=[sip:[email protected]:5060]
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:get_hdr_field: to body [sut
<sip:[email protected]:5060>]
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:get_hdr_field: cseq <CSeq>: <1> <ACK>
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:get_hdr_field: content_length=0
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:get_hdr_field: found end of header
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:receive_msg: After parse_msg...
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:receive_msg: preparing to run routing scripts...
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:sl:sl_filter_ACK: too late to be a local ACK!
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:comp_scriptvar: int 20: 5062 / 5060
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:comp_scriptvar: int 20: 5062 / 5062
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]: from sipp
sp==5062==5062, we rewrite to iad listening port 5060 and we forward
to 185.58.97.161
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_to_param: tag=1
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_to_param: end of header reached, state=11
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:_parse_to: end of header reached, state=29
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:_parse_to: display={sipp}, ruri={sip:[email protected]:5062}
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:uac:w_replace_from: dsp=0x7ffe38fec2d8 (len=0) ,
uri=0x7ffe38fec2f0 (len=41)
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
ERROR:uac:replace_uri: decline FROM/TO replacing in sequential
request in auto mode (has TO tag)
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
ERROR:uac:replace_uri: decline FROM/TO replacing in sequential
request in auto mode (has TO tag)
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:MD5StringArray: MD5 calculated: 100352e3496e8c8bc067bbd48b3fff67
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_headers: flags=60
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:parse_headers: flags=ffffffffffffffff
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:forward_request: sending:#012ACK
sip:[email protected]:*5060*;transport=udp;alias=x.y.z.t~11000~1 SIP>
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:forward_request: orig. len=419, new_len=510, proto=1
Sep 12 10:45:38 sipp /data/opensips/sbin/opensips[1684]:
DBG:core:destroy_avp_list: destroying list 0x7f9d4b464ae8
On 12/09/2022 16:24, johan wrote:
Hi,
setup : opensips acts as a client of a remote server (i.e. opensips
registers itself towards a provider) and handles the OPTIONS being
sent. On the same pc I have a sipp instance that generates traffic.
hence
provider <- udp 5060 -> opensips <-udp 5062-> sipp
The issue is now that the provider changes the contact in 200 ok.
Hence in sipp I take the contact from the received 200 and then I put in
the request uri of the ACK.
the problem si opensips rewrites the contact.
How can I avoid that ?
route{
# ASYNC PROCESSING => opensips handles it
if (is_method("OPTIONS|NOTIFY|SUBSCRIBE")) {
send_reply(200,"OK");
drop();
}
if ($sp==IADPORT)
{
xlog("from iad sp==$sp==IADPORT, we rewrite to sipp listening
port SIPPPORT and we forward to SIPPIP");
sethostport("SIPPIP:SIPPPORT");
forward("SIPPIP:SIPPPORT");
}
else if ($sp==SIPPPORT)
{
xlog("from sipp sp==$sp==SIPPPORT, we rewrite to iad listening
port IADPORT and we forward to IADIP");
sethostport("IADIP:IADPORT");
forward("IADIP:IADPORT");
}
else
{
xlog("sp==$sp!=[IADPORT,SIPPPORT], we drop the packet");
drop();
}
}
_______________________________________________
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