This article applies for issue about the calls hang up at about 30 seconds including Linkus.
Symptom
Most of the users reported that the calls would hang up at 30 seconds.
This issue mostly happens on the SIP remote extension. Also it is possible for the extension registered from different segment of your local network, or VPN network.
The call made through SIP trunks might have the issue as well. Especially in the SIP dedicated trunk solution.
Analysis
Why it is 30 seconds?
Precisely, it should be 32 seconds. Well, 1-2 seconds is not big matter. As people usually would just count the estimated time.
Basically it is SIP timer H issue.
For more detailed analysis, you can refer to this article: How to Analyze the 30 Seconds Hangup Problem?
Typical Case
There are 3 major reasons for issue:
- Incorrect SIP NAT settings in PBX.
- Incorrect ALG settings on the router.
1. Incorrect SIP NAT settings in PBX.
In the following example, the remote extension calls the other extension in local network.
First to see the duration between answer and hang up is 32 seconds. Usually the 200 OK in the SIP call represents answer. BYE, CANCEL packet mean hang up.
PCAP capture from PBX:
As you see, and if know SIP call flow well. You would know the 200 OK packets are abnormal.
Then we find the Contact header IP address in 200 OK is a private IP addresses. For the remote side it is not a reachable address in the Internet. So call would be hang up.
Solution
Configure the SIP NAT settings in the PBX. Including the correct external IP address and the local network identification especially the different local segment IP address. Or you refer the articles to setup the NAT settings.
S-Series: Configuring Remote Extensions
Other series: Configuring Remote Extensions
2. Incorrect ALG settings on the router
2.1 Contact Header IP address in 200 OK is changed to private.
Here is an case of Linkus (used in external network) call hangs up at 30 seconds. Linkus calls to the local extension.
First we can see PBX send 200 OK, but Linkus does not reply ACK to PBX.
PCAP capture from PBX:
Then we capture the logs on Linkus mobile.
We would find the Contact Header IP has been modified to a private IP address. For the Linkus it is not a reachable address in the Internet. So call would be hang up.
Solution
Disable the SIP AlG option on the router.
Or you refer this article to see if you can find your router settings. The Router Settings Relevant with One Way Audio & 30 Seconds Call Hang up Issue
2.2 Contact Header IP address port in 200 OK is changed to the other.
This case is similar as above. Difference is that the port has been modified by the router.
ACK should be sent to PBX source SIP port 5060. BUt it was sent to port 1375.
See the PCAP capture from PBX:
On the remote phone side, we could check the 200 OK packet received.
(Sorry in this capture, we miss the Contact header. But actually the port has been changed to 3075.)
Solution
Disable the SIP AlG option on the router.
Or you refer this article to see if you can find your router settings. The Router Settings Relevant with One Way Audio & 30 Seconds Call Hang up Issue
Troubleshooting
Checklist
- Understand the user's call scenario and network topology.
- Check the SIP NAT settings in PBX
- Refer to the typical cases.
- If it is an issue with SIP trunks, try to register the SIP trunk on an IP phone, or Softphone to see if you have the same issue.
Log & Packet Capture
If the issue persists, please post us the following information.
- The result of the checklist
- Post us the PCAP capture both on PBX and SIP clients. For PBX capture How to Get PCAP Dump Capture, for Linkus log How to Get Linkus Debug Logs
0 Comments