Many of today's commercial routers implement SIP-ALG (Session Initiation Protocol – Application-Level Gateway), with this feature enabled by default. While ALG could help in solving NAT related problems, the fact is that many routers' ALG implementations are wrong and break SIP (including VoIP).
ALG understands the protocol used by the specific applications that it supports (in this case SIP) and does a protocol packet-inspection of traffic through it. A NAT router with built-in SIP-ALG can re-write information within the SIP messages (SIP headers and SDP body) making signaling and audio traffic between the client behind routers and the SIP endpoint possible (or impossible when used incorrectly).
You may be affected by SIP-ALG if you run into these scenarios:
- One way audio on calls
- No audio
- Phones dropping registration
- Callers go straight to voicemail for no known reason
- Random error messages when your number is called (e.g. “The caller you have dialed is no longer in service”)
If SIP-ALG is detected, many routers allow users to disable it.Application-Level Gateway, Identifying SIP, Identifying SIP ALG, Session Initiation Protocol, SIP, SIP-ALG, Troubleshooting