At home i have 4 linksys ATA’s. Each ATA have 2 RJ11 ports for a telephone line.
At this moment, the ATA’s are connected and registered to the voip server. I can dial numbers and receive telephone calls but there is no sound at all. People can’t hear me, and i can’t hear them.
At this moment, the ATA’s are connected to “ether1 - Intern” (using a switch) and they have the ip’s 10.0.0.11 - 10.0.0.12 - 10.0.0.13 - 10.0.0.14. The IP of the VoIP server is 85.234.197.x.
Usual problem when we are having SIP/RTP and NAT in the same story. I will start the packet sniffer on mikrotik:
Packet sniffer settings->select proper interface, Streaming: ip of local computer which has Wireshark. Then start the wireshark (select proper interface), then start packet sniffer
Now when sniffer is running make a call, when call is established and there is no audio, hang up. stop packet sninnfer, and stop wiresahrk. in wireshark in filter box put: SIP
look for INVITE message, that message come from your ATA, be sure that there is your public ip (voip provider is sending RTP to that ip), so you must have public ip not private (ATA must use STUN, otherwise it doesnt know what is the public ip).
Eample of invite message: http://www.iptel.org/sip/intro/messages
c=IN IP4 213.20.128.35 → see in your invite message is there your public ip
Also for test you can allow all outisde traffic on firewall (input and forward chain) only for the time when you are making a call, os that we can remove firewall from equation.
Also, rport and keepalive are some features that are helping when they are enabled when device is behind the NAT (like your ATA)
And on Mikrotik under the:
ip->firewall->service ports-> turn of sip 5060,5061