Звук проходит только в одну сторону или совсем не проходит (NAT)

Возможные решения возникающие в работе Asterisk SIP

  1. Если нет звука, возьмите лист бумаги и изобразите как ходит трафик (не только SIP, но и RTP) между клиентами. Уже на этом шаге можно многое понять, особенно если вы знаете как работает NAT.
  2. Если клиенты потенциально находятся за натом, не давайте им делать reinvite (canreinvite=no в соответствующей секции sip.conf) и установите directmedia=nonat, если вам не нужно прохождение всего трафика через Asterisk, что может потребоваться для записи разговоров.
  3. Выберите что-нибудь одно — поддержку nat в Asterisk или поддержку SIP в брэндмауэре вашей ОС: в Windows ISA Server поддержка SIP, включенная параллельно поддержке nat в Asterisk, дает полное отсутствие звука, поэтому если не можете повлиять на ОС, задавайте nat=no в соответствующих секциях sip.conf
  4. Помните, что кроме трафика на порту 5060/udp, аудио данные передаются по протоколу RTP через udp порты, диапазон которых указан в rtp.conf (по умолчанию 100005) -20000)
  5. Если ничего не помогает, включайте debug в Asterisk и используйте tcpdump — это позволит вам увидеть куда уходят запросы и аудио-трафик, а понимание проблемы это 90% её решения.