Вопрос или проблема
Я установил Asterisk PBX на виртуальную машину VirtualBox, затем создал 3 телефонных расширения:
- 101 – PhonerLite,
- 102 – Zoiper,
- 103 – Blink
все они настроены как «друзья». Все клиенты работают на одном компьютере.
101 и 102 могут звонить на расширение «100» и слышать автоматический ответ от Asterisk.
101 может позвонить 103, но когда звонит 102, получает сообщение «503: Служба недоступна».
102 может звонить 101 и 103.
103 не может звонить ни на один номер, но может принимать звонки. Его процесс набора проходит через три фазы: «Поиск направления…», «Соединение…», «Здесь недопустимо».
Я закрыл всех клиентов, кроме PhonerLite (101) на своем ПК и установил PhonerLite на другом ПК (102). Теперь я могу звонить с 101 на 102 и в обратном направлении.
Что может быть не так?
Virtualbox обычно предоставляет NAT’ированный IP.
Вы должны настроить NAT и перенаправить порт 5060, 10000-20000 UDP.
Для получения дополнительной информации смотрите
http://www.voip-info.org/wiki/view/Asterisk+SIP+NAT+solutions
Ответ или решение
Решение проблем с SIP-вызовами в Asterisk с использованием PhonerLite, Zoiper и Blink
Введение
Настройка VoIP-системы с использованием Asterisk может быть сложной задачей, особенно когда дело касается SIP-вызовов. В данной ситуации у нас есть три телефонных расширения, созданных в Asterisk и использующих различных клиентов: PhonerLite, Zoiper и Blink. В данной статье мы рассмотрим возможные причины возникновения проблем с вызовами и предложим стратегии их решения.
Описание проблемы
У вас установлены три расширения:
- 101: PhonerLite
- 102: Zoiper
- 103: Blink
Признаки проблемы
- PhonerLite (101) может звонить на 103 и проходит регистрацию, однако при вызове на 102 возникает сообщение об ошибке "503: Service Unavailable".
- Zoiper (102) в свою очередь может звонить на 101 и 103, что подтверждает его корректное функционирование.
- Blink (103) может получать звонки, но не может сделать ни одного исходящего вызова, причем процесс звонка завершается на этапе "Not acceptable here".
Анализ возможных причин
-
Настройки NAT в VirtualBox:
- Поскольку вы используете VirtualBox, вероятно, ваша установка Asterisk работает через NAT. Это может повлиять на маршрутизацию вызовов, особенно если нет правильной конфигурации прокси на стороне Asterisk.
- Вы должны убедиться в том, что в конфигурации Asterisk правильно настроены параметры, касающиеся NAT. В частности, убедитесь, что опции
nat=force_rport,comedia
указаны для вашего клиента в файлеsip.conf
.
-
Проблемы с портами:
- Для успешного функционирования SIP-звонков вам необходимо перенаправить порты 5060 (SIP) и диапазон 10000-20000 (RTP). Проверьте настройки брандмауэра, чтобы быть уверенным, что эти порты открыты.
-
Настройки клиентов SIP:
- Проверьте, правильно ли настроены учетные данные в клиентских приложениях. Убедитесь, что указаны правильные имя пользователя, пароль и адрес сервера Asterisk.
-
Логирование и диагностика:
- Включите логирование в Asterisk (
core set verbose 3
иcore set debug 3
) для получения более детальной информации о процессе вызовов. - Проверьте логи при попытке выполнения вызова между 101 и 102 для выявления конкретной причины проблемы.
- Включите логирование в Asterisk (
-
Проблемы с кодеками:
- Убедитесь, что все клиенты используют совместимые кодеки. Иногда неприемлемые кодеки могут стать причиной ошибок "Not acceptable here".
Рекомендации по решению
- Настройте NAT в
sip.conf
соответствующим образом, указав параметры:[general] externip=ваш_внешний_IP localnet=192.168.1.0/255.255.255.0 nat=force_rport,comedia
- Откройте необходимые порты на вашем маршрутизаторе и брандмауэре.
- Проверьте клиентские настройки, удостоверившись в том, что данные правильные и не содержат ошибок.
- Используйте инструменты мониторинга (например, Wireshark) для глубокого анализа SIP-трафика и выявления на каком этапе происходят ошибки.
Заключение
Проблемы с SIP-вызовами могут быть вызваны как конфигурационными ошибками, так и несовместимостью различных компонентов. Предложенные шаги позволят вам более глубоко изучить проблему и предпринять меры для её устранения. Убедитесь в том, что клиентские программы и сервер Asterisk правильно настроены, и скорректируйте сетевые параметры согласно вышеуказанным рекомендациям для достижения максимальной функциональности вашей VoIP-системы.