[OpenSIPS-Users] mid_registrar work arround
volga629 at networklab.ca
volga629 at networklab.ca
Tue Aug 21 11:38:25 EDT 2018
Example right now we have on each node one vip for LAN and one vip for
WAN.
When failover happened node 1 will hold LAN and WAN vips of node 2. If
on node 2 was active registrations they will be relocated to node 1 and
source ip will be vip's node 2.
The question how to define all the vips internal and external variables
like VIP-INT list internal and VIP-EXT list so will be possible
dynamically use it in script.
volga629
On Tue, Aug 21, 2018 at 12:19 PM, volga629 at networklab.ca wrote:
> Hello Ben,
> The script bellow is to find the way define vips in variable so if
> failover happends on keepalived script can process traffic and set
> proper vips (source ip)
>
> volga629.
>
> On Tue, Aug 14, 2018 at 4:38 PM, Ben Newlin <Ben.Newlin at genesys.com>
> wrote:
>> Volga,
>>
>> I must be misunderstanding. If you are able to determine the correct
>> receiving interface in OpenSIPS and you are using the Path header
>> to communicate that to the next hop destination, I'm not sure I'm
>> clear on what the issue is you are still trying to solve?
>>
>> Ben Newlin
>>
>> On 8/14/18, 2:32 PM, "Users on behalf of volga629 at networklab.ca"
>> <users-bounces at lists.opensips.org on behalf of
>> volga629 at networklab.ca> wrote:
>>
>> Hello Ben,
>> Yes, I create logic like this
>>
>> if(!has_totag() && is_method("INVITE")) {
>> create_dialog();
>>
>> if($Ri== vip1 ip addr) {
>> set_dlg_sharing_tag("vip1");
>> $avp(vip) = "vip1 ip addr";
>> } else if($Ri== vip2 ip addr) {
>> set_dlg_sharing_tag("vip2");
>> $avp(vip) = "vip2 ip addr";
>> } else if($Ri == vip3 ip addr) {
>> set_dlg_sharing_tag("vip3");
>> $avp(vip) = "vip3 ip addr";
>> }
>> }
>>
>> not sure if this correct approach. In theory $avp(vip) can be
>> used for
>> rtpengine or other operation require correct ip in body, but
>> issue that
>> call flow, because INVITE come from external interface first
>> then it
>> forwarded to LAN via dipatcher.
>>
>>
>> volg629
>>
>>
>> On Tue, Aug 14, 2018 at 2:51 PM, Ben Newlin
>> <Ben.Newlin at genesys.com>
>> wrote:
>> > Volga,
>> >
>> > Sorry, I didn't fully understand your scenario. Even though
>> you said
>> > it was active/active, I was assuming an active/standby
>> scenario where
>> > only 1 IP would be active on a box at a time. I don't think
>> this
>> > approach would work for the scenario you are describing.
>> >
>> > Is there some reason you can't have each box listen on all 3
>> IPs all
>> > the time? Then from within the script you can use $Ri [1] to
>> > determine which interface received the message.
>> >
>> > [1] -
>> http://www.opensips.org/Documentation/Script-CoreVar-2-3#toc77
>> >
>> > Ben Newlin
>> >
>> > On 8/14/18, 1:39 PM, "Users on behalf of
>> volga629 at networklab.ca"
>> > <users-bounces at lists.opensips.org on behalf of
>> > volga629 at networklab.ca> wrote:
>> >
>> > Hello Ben,
>> > Do you mean for this
>> >
>> > modparam("cfgutils", "varset", "init=i:1")
>> > modparam("cfgutils", "varset",
>> > "gw=s:sip:11.11.11.11;transport=tcp")
>> >
>> > or this
>> >
>> > modparam("cfgutils", "shvset", "debug=i:1")
>> > modparam("cfgutils", "shvset", "pstngw=s:sip:10.10.10.10")
>> >
>> > in my case will be something like
>> >
>> >
>> > modparam("cfgutils", "shvset", "vip1=s:192.168.10.100")
>> > modparam("cfgutils", "shvset", "vip2=s:192.168.10.101")
>> > modparam("cfgutils", "shvset", "vip3=s:192.168.10.102")
>> >
>> > If vip relocated to antother node meaning on live node 1
>> will be
>> > two
>> > vip's ( example node 3 fail then it relocate ip address to
>> node 1)
>> > How I can determine which vip ip address should be in use.
>> >
>> > volg629
>> >
>> >
>> > On Thu, Aug 2, 2018 at 9:44 PM, Ben Newlin
>> > <Ben.Newlin at genesys.com>
>> > wrote:
>> > > M4 will process the file before OpenSIPS runs and will
>> not be
>> > > changeable at runtime. It sounds like that will not work
>> for
>> > you if I
>> > > am understanding properly.
>> > >
>> > > My first thought would be to use the shared variables
>> from
>> > CFGUTILS
>> > > [1]. They can be accessed from inside the script, but
>> can also
>> > be set
>> > > via MI. So when your monitor detects a failure and
>> switches the
>> > IPs,
>> > > it could also use MI to change the value of the variable
>> in
>> > OpenSIPS
>> > > for future use.
>> > >
>> > > As a side note to OpenSIPS devs, it appears this module
>> was
>> > missed
>> > > when the Module Index page [2] was redesigned as I can't
>> find it
>> > > there for 2.x, but the direct links to the 2.x versions
>> still
>> > work.
>> > >
>> > > [1]
>> > http://www.opensips.org/html/docs/modules/2.4.x/cfgutils.html
>> > > [2] http://www.opensips.org/Documentation/Modules-2-4
>> > >
>> > > Ben Newlin
>> > >
>> > > On 8/2/18, 5:56 PM, "Users on behalf of
>> volga629 at networklab.ca"
>> > > <users-bounces at lists.opensips.org on behalf of
>> > > volga629 at networklab.ca> wrote:
>> > >
>> > > Hello Liviu,
>> > > Yes, that correct. Right now each node in cluster
>> have own
>> > vip
>> > > from
>> > > keepalived on LAN side.
>> > > The issue how to specify correct vip in case of
>> failover,
>> > so if
>> > > node 2
>> > > fail and node 2 vip was relocated to node 1. All
>> sessions
>> > should
>> > > be
>> > > process on node 1 and
>> > > append_hf("Path:
>> > <sip:$fU at MAIN_VIP:5060;transport=udp>\r\n");
>> > > should
>> > > have correct ip's. Same with rtpengine offer
>> > > rtpengine_offer("replace-origin
>> replace-session-connection
>> > > in-iface=external out-iface=internal
>> > > media-address=$avp(media_addr)
>> > > RTP/AVP ICE=remove") where need introduce
>> media-address to
>> > specify
>> > > correct vip ip.
>> > > Can you exapand on m4 ? I never used the templating.
>> > > Might db avp to predefine cluster nodes vip ip,
>> not sure.
>> > >
>> > >
>> > > volga629
>> > >
>> > >
>> > >
>> > > On Thu, Aug 2, 2018 at 10:50 AM, Liviu Chircu
>> > <liviu at opensips.org>
>> > > wrote:
>> > > > Hi Volga,
>> > > >
>> > > > If I understood your problem correctly, one idea
>> would be
>> > to
>> > > use m4
>> > > > over opensips.cfg and define a different MAIN_VIP
>> > variable for
>> > > each
>> > > > of your three servers:
>> > > >
>> > > > append_hf("Path:
>> > <sip:$fU at MAIN_VIP:5060;transport=udp>\r\n");
>> > > > Liviu Chircu
>> > > > OpenSIPS Developer
>> > > > http://www.opensips-solutions.com
>> > > > On 09.07.2018 07:34, volga629 at networklab.ca wrote:
>> > > >> Hello Everyone,
>> > > >>
>> > > >> I have work around on this issue
>> > > >> # Work arround for github issue #1109
>> > > >> append_hf("Path: <sip:$fU at listen
>> > ip:5060;transport=udp>\r\n"
>> > > >>
>> > > >>
>> > > >> Right now we use 3 node cluster with 3 vips in
>> > active/active
>> > > mode
>> > > >> I need some idea how to determine path header
>> listen ip
>> > > address from
>> > > >> 3 vips.
>> > > >>
>> > > >>
>> > > >> volga629
>> > > >>
>> > > >>
>> > > >>
>> > > >>
>> > > >> _______________________________________________
>> > > >> 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
>> > >
>> > >
>> > > _______________________________________________
>> > > 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
>> >
>> >
>> > _______________________________________________
>> > 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
>>
>>
>> _______________________________________________
>> 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
More information about the Users
mailing list