Hi,
I know that there are already quite a few threads about VoIP issues, but as far as I saw it none of them is exactly the same situation that we are experiencing at the moment.
A customer wants to switch over to VoIP telephones and currently has some “test” devices in house. The phones connect to a cloud hosted phone system.
Registration with the system works fine, call signaling does too. But as soon as a call is active there is no audio in either direction.
A packet sniffer trace showed that the phone sends out tons of RTP packets, but apparently the internal IP address it uses doesn’t get replaced by NAT properly, so the phone system tries to answer to a wrong IP and there is no incoming RTP traffic.
They made a cross-test with a fortigate router, that way it worked as expected, so it’s definitely an issue with the Mikrotik router.
We already tried a few things, including enabling/disabling the SIP helper/SIP direct media and telling the phone to use a STUN server, but no change.
Is there anything we can still try to get this to work? We’ve already used VoIP phones with other customers who also have a Tik in usage, and none of them had such issues…
There is an explanation of this subject in one of the MUM videos.
It is such a thing that you need to understand, as simply poking at the config is rarely going to fix it completely.
(just like IPsec)
You mean https://www.youtube.com/watch?v=mnX6Im8GlJw? He’s “only” talking about call quality issues like jitter and packet loss. Not quite the same as our case where not a single RTP packet comes back from the phone system…
Thanks, the base info from that video helped in finding the actual issue. The SIP helper changed a few but not all fields (o= and c= values in the layer 7 fields were still the internal IP). In the end we disabled it again and told the VoIP phones to use a STUN server for NAT traversal, now it works as intended.
I was having similar issues at my company, it was a setup with non-MikroTik hardware. But what we found was that setting up the phones to use TCP for SIP (5060 tcp instead of udp) did the trick.
I might be helpful for anyone else, so posting this here.