Type something to search...
How I resolved dropped Teams calls

How I resolved dropped Teams calls


Introduction

A customer contacted me to tell me that he was having an issue with his Microsoft Teams telephony. Outgoing calls are being cut off even before the audio connection is established.


Investigation

To analyze this, I asked him to take a log capture of a call taken on his Fortigate firewall and to send me the resulting Wireshark file.

image

I quickly noticed that there was a problem in the Contact header of the Invite packet of this call ; the port offered to the ThinkTel SIP operator is 47439 instead of 5060. Obviously, this port is not supposed to be offered, so it is blocked by the firewall and the ACK (which is the final response to an Invite) is never returned after the 200 OK SDP, which explains why the call is disconnected.

image

While talking with him, he explains to me that he replaced his firewall with a new one from the same manufacturer, and that he imported the previous configuration into it. All the rules and configurations I had deployed were still here.

image


Resolution

But obviously, the SIP Helper functionality remained active in the new configuration. On paper, it’s supposed to help manage SIP traffic passing through the firewall, but in reality, it changes the port in our SIP header. The solution is therefore to disable it in CLI.

warning

A reboot is required !

Retrieve the SIP Helper ID :

config system session-helper
show

Scroll down until you see an entry for SIP. In my case it was number 13, but it may be different depending on the model and firmware version. Delete the configuration :

delete 13
end

Disable SIP ALG as well :

config system settings
set default-voip-alg-mode kernel-helper-based
end

Activate RTP bypass :

configure voip profile
edit default
sip config
set rtp disable
end
end

Restart the firewall to stop current sessions:

execute reboot

Results

By disabling the SIP Helper functionality, the port proposed in the Contact header is now 5060 again and calls are working.

In my telephony projects, I always disable the SIP ALG, SIP helper, SSL inspection and other functionalities. They have always caused issues with port rewriting, one-way audio, etc.

Note that in this scenario, the capture should be taken at the firewall output, not at the SBC output. I wouldn’t have been able to see this port error at the SBC output because the manipulation occurs once the packet has passed through the firewall.


Fortinet - How to disable SIP helper

RFC 3261 - SIP standard


Did you enjoy this post ? If you have any questions, comments or suggestions, please feel free to send me a message from the contact form.

Don’t forget to follow us and share this post.

Related Posts

Pricing update for Teams telephony licenses

Pricing update for Teams telephony licenses

Introduction Microsoft recently announced a price increase for several Teams telephony licenses, effective April 1, 2025. This pricing update reflects the continued innovation and increased

Read More
Import the DigiCert Root G2 certificate into a Ribbon SBC

Import the DigiCert Root G2 certificate into a Ribbon SBC

Introduction Since the arrival of Teams Direct Routing telephony, TLS certificates used by Microsoft servers are linked to the following root certification authority :Common Certificate

Read More
Import the DigiCert Root G2 certificate into an Audiocodes SBC

Import the DigiCert Root G2 certificate into an Audiocodes SBC

Introduction Since the arrival of Teams Direct Routing telephony, TLS certificates used by Microsoft servers are linked to the following root certification authority :Common Certificate

Read More
How to configure callback in a Teams queue

How to configure callback in a Teams queue

Definition Callback in Teams allows callers in a queue to be called back after a certain time rather than waiting until an agent becomes available.Prerequisites **Licenses r

Read More
How to handle duplicates in Teams directory search

How to handle duplicates in Teams directory search

Introduction Microsoft recently announced a significant optimization for the search by name and extension functionality in its Teams auto attendants. You have probably already had this case

Read More
How to inventory Direct Routing numbers in Teams

How to inventory Direct Routing numbers in Teams

Introduction Microsoft Teams continues to evolve to offer ever more effective communication and collaboration solutions. To make life easier for administrators, Microsoft has announced the

Read More
Debugging Teams calls via the SIP ladder

Debugging Teams calls via the SIP ladder

Introduction Microsoft Teams continues to evolve to offer ever more advanced communication and collaboration solutions. Among the features arriving very soon, we find the possibility of obt

Read More
How to analyze Direct Routing calls via the SIP ladder

How to analyze Direct Routing calls via the SIP ladder

Introduction I wrote an article last February to announce the upcoming release of the SIP ladder to analyze Teams Direct Routing calls from the Microsoft Teams Admin Center. The feature is

Read More
How to analyze incoming calls in Teams with CQD

How to analyze incoming calls in Teams with CQD

Définition Microsoft's Teams Call Quality Dashboard (CQD) is a powerful tool designed to help administrators monitor and improve the quality of phone calls within their organization. Th

Read More
How to enable LDAP routing in an Audiocodes SBC

How to enable LDAP routing in an Audiocodes SBC

Introduction LDAP (Lightweight Directory Access Protocol) routing over an SBC (Session Border Controller) allows calls to be managed using information stored in an Active Directory.

Read More