[OpenSIPS-Users] Cluster (anycast) adds extra hex 00 in the tail to replicated responses.

Denys Pozniak denys.pozniak at gmail.com
Mon Jan 9 10:43:19 UTC 2023


Thanks!

@Nick, maybe it is needed to add version 3.4 to the site as well since it
is missing in the drop-down menu?

https://yum.opensips.org/packages.php

*OS: CentOS 7*
*Build type: nightly*
*OpenSIPS version: 3.3, 3.2, 3.1 *


пн, 9 янв. 2023 г. в 11:43, Nick Altmann <nick at altmann.pro>:

> It's 3.4/nightly.
>
> --
> Nick
>
>
> Hello!
>> Thanks!!!
>>
>> Do we have a yum repository where packages from the master branch are
>> built?
>>
>>
>> пн, 9 янв. 2023 г. в 10:27, Răzvan Crainea <razvan at opensips.org>:
>>
>>> Hi, Denys!
>>>
>>> I've just pushed a fix[1] in the master branch - can you please give it
>>> a try and let me know if this fixes your setup, so I can backport it
>>> down to 3.1?
>>>
>>> [1]
>>>
>>> https://github.com/OpenSIPS/opensips/commit/81e9b14a16acd284469d8958c57dcece69699a85
>>>
>>> Best regards,
>>>
>>> Răzvan Crainea
>>> OpenSIPS Core Developer
>>> http://www.opensips-solutions.com
>>>
>>> On 1/9/23 10:03, Denys Pozniak wrote:
>>> > Hello!
>>> >
>>> > Sorry to bring the topic up, but so far I have no idea what the
>>> problem
>>> > is. Or do I need to open an issue on github?
>>> >
>>> > вт, 3 янв. 2023 г. в 13:58, Denys Pozniak <denys.pozniak at gmail.com
>>> > <mailto:denys.pozniak at gmail.com>>:
>>> >
>>> >     Hello!
>>> >
>>> >     I'm trying to build a classic anycast cluster topology with two
>>> >     OpenSIPS nodes, in which requests are processed by one proxy and
>>> >     responses by another.
>>> >     The client and server are emulated via baresip.
>>> >     But I ran into a problem in that the replicated responses have an
>>> >     extra 00 in the tail of the reply (the original reply from baresip
>>> >     UAS does not have it).
>>> >
>>> >     ngrep -x:
>>> >     #
>>> >     U 192.168.100.100:5060 <http://192.168.100.100:5060> ->
>>> >     192.168.56.103:37279 <http://192.168.56.103:37279> #5
>>> >        53 49 50 2f 32 2e 30 20    31 38 30 20 52 69 6e 67    SIP/2.0
>>> 180
>>> >     Ring
>>> >        69 6e 67 0d 0a 52 65 63    6f 72 64 2d 52 6f 75 74
>>> >       ing..Record-Rout
>>> >        65 3a 20 3c 73 69 70 3a    31 39 32 2e 31 36 38 2e    e:
>>> >     <sip:192.168.
>>> >        31 30 30 2e 31 30 30 3b    6c 72 3e 0d 0a 56 69 61
>>> >       100.100;lr>..Via
>>> >        3a 20 53 49 50 2f 32 2e    30 2f 55 44 50 20 31 39    :
>>> >     SIP/2.0/UDP 19
>>> >        32 2e 31 36 38 2e 35 36    2e 31 30 33 3a 33 37 32
>>> >     2.168.56.103:372 <http://2.168.56.103:372>
>>> >        37 39 3b 72 65 63 65 69    76 65 64 3d 31 39 32 2e
>>> >       79;received=192.
>>> >        31 36 38 2e 35 36 2e 31    30 33 3b 62 72 61 6e 63
>>> >       168.56.103;branc
>>> >        68 3d 7a 39 68 47 34 62    4b 62 65 63 38 65 38 66
>>> >       h=z9hG4bKbec8e8f
>>> >        30 32 36 62 65 39 31 34    61 3b 72 70 6f 72 74 3d
>>> >       026be914a;rport=
>>> >        33 37 32 37 39 0d 0a 54    6f 3a 20 3c 73 69 70 3a    37279..To:
>>> >     <sip:
>>> >        31 30 30 40 31 39 32 2e    31 36 38 2e 31 30 30 2e
>>> >     100 at 192.168.100. <mailto:100 at 192.168.100.>
>>> >        31 30 30 3b 74 72 61 6e    73 70 6f 72 74 3d 75 64
>>> >       100;transport=ud
>>> >        70 3e 3b 74 61 67 3d 32    37 65 33 63 32 31 38 65
>>> >       p>;tag=27e3c218e
>>> >        30 65 61 31 32 30 64 0d    0a 46 72 6f 6d 3a 20 3c
>>> >       0ea120d..From: <
>>> >        73 69 70 3a 32 30 30 40    31 39 32 2e 31 36 38 2e
>>> >       sip:200 at 192.168.
>>> >        31 30 30 2e 31 30 30 3a    35 30 36 30 3e 3b 74 61
>>> >       100.100:5060>;ta
>>> >        67 3d 35 36 38 35 66 33    38 39 61 39 37 66 65 31
>>> >       g=5685f389a97fe1
>>> >        30 32 0d 0a 43 61 6c 6c    2d 49 44 3a 20 31 32 34
>>> >       02..Call-ID: 124
>>> >        39 37 61 63 37 36 65 38    30 34 66 35 36 0d 0a 43
>>> >       97ac76e804f56..C
>>> >        53 65 71 3a 20 36 33 37    30 37 20 49 4e 56 49 54    Seq: 63707
>>> >     INVIT
>>> >        45 0d 0a 53 65 72 76 65    72 3a 20 62 61 72 65 73    E..Server:
>>> >     bares
>>> >        69 70 20 76 32 2e 31 30    2e 30 20 28 78 38 36 5f    ip v2.10.0
>>> >     (x86_
>>> >        36 34 2f 4c 69 6e 75 78    29 0d 0a 43 6f 6e 74 61
>>> >       64/Linux)..Conta
>>> >        63 74 3a 20 3c 73 69 70    3a 31 30 30 2d 30 78 63    ct:
>>> >     <sip:100-0xc
>>> >        62 63 31 39 30 40 31 39    32 2e 31 36 38 2e 35 36
>>> >       bc190 at 192.168.56
>>> >        2e 31 30 36 3a 35 30 38    30 3e 0d 0a 41 6c 6c 6f
>>> >       .106:5080>..Allo
>>> >        77 3a 20 49 4e 56 49 54    45 2c 41 43 4b 2c 42 59    w:
>>> >     INVITE,ACK,BY
>>> >        45 2c 43 41 4e 43 45 4c    2c 4f 50 54 49 4f 4e 53
>>> >       E,CANCEL,OPTIONS
>>> >        2c 4e 4f 54 49 46 59 2c    53 55 42 53 43 52 49 42
>>> >       ,NOTIFY,SUBSCRIB
>>> >        45 2c 49 4e 46 4f 2c 4d    45 53 53 41 47 45 2c 55
>>> >       E,INFO,MESSAGE,U
>>> >        50 44 41 54 45 2c 52 45    46 45 52 0d 0a 43 6f 6e
>>> >       PDATE,REFER..Con
>>> >        74 65 6e 74 2d 4c 65 6e    67 74 68 3a 20 30 0d 0a
>>> >       tent-Length: 0..
>>> >        0d 0a 00                                              ...
>>> >     #
>>> >
>>> >     So it throws a Baresip error:
>>> >     call: SIP Progress: 100 Trying-2 (/)
>>> >     call: SIP Progress: 100 Giving it a try (/)
>>> >     call: SIP Progress: 180 Ringing (/)
>>> >     call: could not decode SDP answer: Bad message [74]
>>> >
>>> >     192.168.56.103 - baresip UAC
>>> >     192.168.56.106 - baresip UAS
>>> >     192.168.100.100 - anycast OpenSIPS
>>> >
>>> >     opensips.cfg (node2):
>>> >     ...
>>> >     socket = udp:192.168.100.100 anycast
>>> >     socket= bin:192.168.56.105:5566 <http://192.168.56.105:5566>
>>> >     ...
>>> >     modparam ("tm", "tm_replication_cluster", 1)
>>> >     modparam("clusterer", "db_mode", 0)
>>> >     modparam("clusterer", "my_node_id", 2)
>>> >     modparam("clusterer", "my_node_info", "cluster_id=1,
>>> >     url=bin:192.168.56.105:5566 <http://192.168.56.105:5566>")
>>> >     modparam("clusterer", "neighbor_node_info",
>>> >     "cluster_id=1,node_id=1,url=bin:192.168.56.104:5566
>>> >     <http://192.168.56.104:5566>")
>>> >     modparam("clusterer", "sharing_tag", "vip1/2=active")
>>> >     ...
>>> >     ####### Routing Logic ########
>>> >
>>> >     route{
>>> >
>>> >              if ( !mf_process_maxfwd_header(10) ) {
>>> >                      send_reply(483,"Too Many Hops");
>>> >                      exit;
>>> >              }
>>> >
>>> >              sl_send_reply(100, "Trying-2");
>>> >
>>> >              if (has_totag()) {
>>> >
>>> >                      if ( !loose_route() && !t_check_trans() ) {
>>> >                              if ( is_method("ACK") ) {
>>> >                                      t_anycast_replicate();
>>> >                                      exit;
>>> >                              }
>>> >                      }
>>> >
>>> >                      t_relay();
>>> >                      exit;
>>> >              }
>>> >
>>> >              if (is_method("CANCEL")) {
>>> >                      if (t_check_trans()) {
>>> >                              t_relay();
>>> >
>>> >                      } else {
>>> >                              t_anycast_replicate();
>>> >                      }
>>> >
>>> >                      exit;
>>> >              }
>>> >
>>> >              t_check_trans();
>>> >
>>> >              if (!is_method("REGISTER|MESSAGE")) {
>>> >                      record_route();
>>> >              }
>>> >
>>> >              if ( is_method("INVITE") && $si!="5080" ) {
>>> >                      $du = "sip:192.168.56.106:5080
>>> >     <http://192.168.56.106:5080>";
>>> >              }
>>> >
>>> >              t_relay();
>>> >              exit;
>>> >
>>> >     }
>>> >
>>> >     [root at localhost opensips]# opensips -V
>>> >     version: opensips 3.3.2 (x86_64/linux)
>>> >     flags: STATS: On, DISABLE_NAGLE, USE_MCAST, SHM_MMAP, PKG_MALLOC,
>>> >     Q_MALLOC, F_MALLOC, HP_MALLOC, DBG_MALLOC, FAST_LOCK-ADAPTIVE_WAIT
>>> >     ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN
>>> >     16, MAX_URI_SIZE 1024, BUF_SIZE 65535
>>> >     poll method support: poll, epoll, sigio_rt, select.
>>> >     main.c compiled on 16:12:02 Oct 19 2022 with gcc 4.8.5
>>> >
>>> >
>>> >     --
>>> >
>>> >     BR,
>>> >     Denys Pozniak
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> >
>>> > BR,
>>> > Denys Pozniak
>>> >
>>> >
>>> >
>>> > _______________________________________________
>>> > Users mailing list
>>> > Users at lists.opensips.org
>>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>
>>
>> --
>>
>> BR,
>> Denys Pozniak
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>


-- 

BR,
Denys Pozniak
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20230109/97bd9f93/attachment-0001.html>


More information about the Users mailing list