Author |
Message |
skb007 Brekeke Guru
Joined: 05 Oct 2015 Posts: 152
Location: USA
|
Posted: Tue Nov 19, 2019 4:56 pm Post subject: Wrong IP in VIA header after session roll over |
|
|
1. Brekeke Product Name and Version:BSS Adver Ver 3.8.6.4/501
2. Java version:1.8.201
3. OS type and the version: RHEL7.7
4. UA (phone), gateway or other hardware/software involved:NA
5. Your problem:
I have following 3 IP's configured on the server.
10.20.30.29 (SIP)
10.20.30.30 (SIP)
10.20.30.62 (RTP)
Matching Patterns | $request = ^INVITE $addr = 192.168.10.10$ To = sip:123456(.+)@ From = sip:(.+)@
| Deploy Patterns | To = sip:%1@1.1.1.1 From = sip:+%2@10.20.30.30 $session = failover sip:%1@2.2.2.2 %1@3.3.3.3 $b2bua = true $rtp = true $ifsrc = 10.20.30.30 $ifdst = 10.20.30.30 $replaceuri = true &net.sip.remove.displayname = true &net.rtp.ifsrc = 10.20.30.62 &net.rtp.ifdst = 10.20.30.62 &net.rtp.bindsrc = 10.20.30.62 &net.rtp.binddst = 10.20.30.62 &net.rtp.audio.payloadtype = 8
|
Everything works fine if call is completed by 1.1.1.1. VIA header has the ip address 10.20.30.30. But if call rolls over to 2.2.2.2 then via header contains 10.20.30.29 which is causing problem on the UAS side. Why VIA header IP gets switched from 10.20.30.30 to 10.20.30.29 after call fails over to second or third IP? Is there any solution? |
|
Back to top |
|
janP Brekeke Master Guru
Joined: 25 Nov 2007 Posts: 336
|
Posted: Wed Nov 20, 2019 12:15 pm Post subject: |
|
|
Are these destination IP addresses located in same network segment? |
|
Back to top |
|
skb007 Brekeke Guru
Joined: 05 Oct 2015 Posts: 152
Location: USA
|
Posted: Wed Nov 20, 2019 12:19 pm Post subject: |
|
|
janP wrote: |
Are these destination IP addresses located in same network segment? |
No, all destination IP's are separate network segments as they are public IP's.
My originating ip's are also public, I have mentioned the private IP's for the sake of privacy. |
|
Back to top |
|
skb007 Brekeke Guru
Joined: 05 Oct 2015 Posts: 152
Location: USA
|
Posted: Fri Nov 22, 2019 10:06 am Post subject: |
|
|
Anyone ? |
|
Back to top |
|
skb007 Brekeke Guru
Joined: 05 Oct 2015 Posts: 152
Location: USA
|
Posted: Mon Nov 25, 2019 10:29 am Post subject: |
|
|
I would appreciate if someone can help me to resolve this issue.
I have this issue at multiple BSS servers every time calls roll over on the BSS server having more than one IP. |
|
Back to top |
|
snuyzm Brekeke Talented
Joined: 11 Feb 2015 Posts: 97
|
Posted: Wed Nov 27, 2019 2:00 pm Post subject: |
|
|
This is because the SIP Server re-selects a destination side interface IP address.
If you use some tricks, you can avoid the issue.
Rule-1:
Matching Patterns | $request = ^INVITE $localhost = ^false $addr = 192.168.10.10$ To = sip:123456(.+)@ From = sip:(.+)@
| Deploy Patterns | To = sip:%1@1.1.1.1 From = sip:+%2@10.20.30.30 $session = failover sip:a%1@localhost sip:b%1@localhost $b2bua = true $rtp = true $ifsrc = 10.20.30.30 $ifdst = 10.20.30.30 $replaceuri = true &net.sip.remove.displayname = true &net.rtp.ifsrc = 10.20.30.62 &net.rtp.ifdst = 10.20.30.62 &net.rtp.bindsrc = 10.20.30.62 &net.rtp.binddst = 10.20.30.62 &net.rtp.audio.payloadtype = 8
|
Rule-2:
Matching Patterns | $request = ^INVITE $localhost = ^true To = sip:a(.+)@ From = sip:(.+)@
| Deploy Patterns | To = sip:%1@2.2.2.2 From = sip:+%2@10.20.30.30 $b2bua = true $rtp = false $ifsrc = 10.20.30.30 $ifdst = 10.20.30.30 $replaceuri = true &net.sip.remove.displayname = true &net.rtp.ifsrc = 10.20.30.62 &net.rtp.ifdst = 10.20.30.62 &net.rtp.bindsrc = 10.20.30.62 &net.rtp.binddst = 10.20.30.62 &net.rtp.audio.payloadtype = 8
|
Rule-3:
Matching Patterns | $request = ^INVITE $localhost = ^true To = sip:b(.+)@ From = sip:(.+)@
| Deploy Patterns | To = sip:%1@3.3.3.3 From = sip:+%2@10.20.30.30 $b2bua = true $rtp = false $ifsrc = 10.20.30.30 $ifdst = 10.20.30.30 $replaceuri = true &net.sip.remove.displayname = true &net.rtp.ifsrc = 10.20.30.62 &net.rtp.ifdst = 10.20.30.62 &net.rtp.bindsrc = 10.20.30.62 &net.rtp.binddst = 10.20.30.62 &net.rtp.audio.payloadtype = 8
|
The line below puts an INVITE packet in DialPlan again to execute Rule-2 and Rule-3.
$session = failover sip:a%1@localhost sip:b%1@localhost |
|
Back to top |
|
skb007 Brekeke Guru
Joined: 05 Oct 2015 Posts: 152
Location: USA
|
Posted: Wed Nov 27, 2019 3:00 pm Post subject: |
|
|
Appreciate your response.
Does that mean that for every dial plan, I have to write 2 more dial plans?
I have BSS installed at 4 different locations with 100 plus dial plans at each site.
Can this be classified as a bug and fixed in the future release? |
|
Back to top |
|
snuyzm Brekeke Talented
Joined: 11 Feb 2015 Posts: 97
|
Posted: Wed Nov 27, 2019 6:54 pm Post subject: |
|
|
I think there are several ways to avoid the issue without having many DialPlan rules.
Let you contact Brekeke's support to report the issue. |
|
Back to top |
|
|