The SIP does not work from behind the ROS NAT

I have a SIP telephone, but for some strange reason it is not work correctly when it is behind the ROS based NAT. Signalling seems to work as I can phone out or receive calls, but as soon as you try to answer the call there is the silence. Sometimes it does get the voice data going as well, but it is usually one way only (one does hear the other talking, but talking back is no success) and as soon as you try to repeat it, you’ll get silence both ways. At the same time if to replace the ROS device with some random Linksys, it is working fine.

For the ROS NAT I use nothing special, the plain “srcnat masquerade” is in use. What is the needed magic with the SIP protocol to get it over the ROS NAT?

Don’t forget that for SIP not only you have the signaling usually on port 5060, but the voice RTP is on other ports (depending on your phone and pbx config may be in the 10000 to 20000). You may have to open these ports too.