Spent three days debugging a SIP softphone where audio would cut out exactly 15-20 seconds into every call. Switched softphones. Same issue. Switched networks. Same issue. Was about to blame the user's ISP.
Turned out it was NAT timeouts on the router silently killing the inbound RTP stream after the initial mapping expired.
The annoying thing is SIP signaling stays alive the whole time, so the call looks fine. Registration is fine. SDP exchange is fine. But the actual audio (RTP) gets dropped because one side's NAT mapping closes too aggressively.
Quick mental checklist for next time you see this:
- Audio cuts out at a consistent time mark? → NAT timeout
- One-way audio only? → NAT or firewall on one end
- Works on Wi-Fi but breaks on cellular? → Almost always NAT
- SIP signaling fine but media broken? → Look at RTP path, not SIP
Fixes that usually work: ICE, TURN, an SBC in front of things, or just configuring the softphone to send keep-alive packets so the NAT mapping doesn't expire.
Wish someone had told me this on day one. Sharing in case it saves someone else the three days.
Top comments (0)