Инструмент анализа sip пакетов SIP3
Для перехода на сайт разработчика перейдите по ссылке. В статье рассматривается установка и использование SIP3 – программного решения с открытым исходным кодом для мониторинга и устранения неисправностей VoIP в режиме реального времени. Для примеров использовалась ОС CentOS 7. Для SIP3 необходимо предварительно установить docker и ansible. Устанавливаем docker: Запустить сервис docker и отобразить статус Для […]

Для перехода на сайт разработчика перейдите по ссылке.
В статье рассматривается установка и использование SIP3 – программного решения с открытым исходным кодом для мониторинга и устранения неисправностей VoIP в режиме реального времени. Для примеров использовалась ОС CentOS 7.

Для SIP3 необходимо предварительно установить docker и ansible.
Устанавливаем docker:
yum install docker

Запустить сервис docker и отобразить статус
systemctl start docker
systemctl status docker

Для того, чтобы docker запускался при старте системы, необходимо выполнить команду:
systemctl enable docker
Отобразить список сервисов, относящихся к docker и проверить разрешены ли они, можно командой:
systemctl list-unit-files | grep docker

yum install ansible

Для проверки установленной версии ansible выполните команду
ansible --version

ERROR! Unexpected Exception, this is probably a bug: ‘ascii’ codec can’t encode character u’\u2013′ in position 17: ordinal not in range(128)
вызвана присутствием символа ‘EN DASH’ (‘U+2013’, unicode дефис) в тексте команды (см. скриншот)

Также, потребуется установить python-pip -систему управления пакетами, написанными на python:
yum install python pip

Установка docker-py– python библиотека для docker
pip install docker-py

Клонирование репозитория ссылка.
git clone https://github.com/sip3io/sip3-ansible/

Добавляем необходимые хосты в конфигурационный файл. В примере 192.168.32.31 — адрес используемой машины. Выполняем в директории, в которую клонировали репозиторий sip3.
nano ./sip3-ansible/roles/sip3-salto/templates/hosts.yml.j2

В этой же директории выполняем
nano ./sip3-ansible/roles/sip3-hoof/tasks/main.yml
для правки еще одного конфигурационный файла и указываем порт для запуска, если порт 80 занят.

Для установки внутренних компонентов sip3 выполнить команду
ansible-playbook -K ./sip3-ansible/playbooks/trial/sip3-backend.yml --extra-vars "port=8088"
можно использовать переменную port для изменения порта по умолчанию. В процессе установки потребуется задать пароль.

ansible-playbook -K playbooks/trial/sip3-backend.yml --extra-vars "state=absent"
После завершения установки внутренних компонентов SIP3, необходимо развернуть SIP3 Captain. Это компонент, отвечающий за сбор и фильтрацию обработанных данных SIP трафика.
Для установки SIP3 Captain выполните следующую команду:
ansible-playbook -K ./sip3-ansible/playbooks/trial/sip3-captain.yml

ansible-playbook -K playbooks/trial/sip3-captain.yml --extra-vars "state=absent"
Вместе с пробной версией SIP3 поставляется Grafana. Откройте http: //ip_хоста:порт/grafana, для входа использовать стандартные учетные данные (admin/admin). После этого вы увидите панель инструментов Calls Statistic:

По адресу http: //ip_хоста:порт/ находятся два инструмента SIP3: Simple Search (базовый поиск по звонкам) Advanced Search (продвинутый поиск).

Кликнув на какой-либо вызов можно увидеть окно Call info — последовательность потоков для этого вызова.

Список вызовов можно экспортировать в формат csv. Последовательность потоков для конкретного вызова можно также экспортировать в формат png.

При клике на Details можно просмотреть более подробную информацию о вызове и экспортировать дамп какого-либо вызова в формат pcap.

Advanced Search позволяет отфильтровать вызовы по одному или нескольким параметрам. Найденные вызовы можно также экспортировать в csv, сохранить последовательность потоков в png, просмотреть более подробную информацию по конкретному вызову, экспортировать дамп вызова в pcap.


Остались вопросы?
Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
VoIP оборудование
ближайшие курсы
Новые статьи
10 доводов в пользу Asterisk
Распространяется бесплатно.
Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.
Безопасен в использовании.
Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.
Надежен в эксплуатации.
Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.
Гибкий в настройке.
Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.
Имеет огромный функционал.
Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.
Интегрируется с любыми системами.
То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.
Позволяет телефонизировать офис за считанные часы.
В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.
Отличная масштабируемость.
Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.
Повышает управляемость бизнеса.
Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.
Снижает расходы на связь.
Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.
TASK [../../roles/docker-network : Create/Delete sip3 docker network] **************************** An exception occurred during task execution. To see the full traceback, use -vvv. The error was: docker.errors.APIError: 500 Server Error: Internal Server Error («{«message»:»Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables —wait -t nat -I DOCKER -i br-7d275dc08a3b -j RETURN: iptables: No chain/target/match by that name.\n (exit status 1))»}») fatal: [127.0.0.1]: FAILED! => {«changed»: false, «module_stderr»: «Traceback (most recent call last):\n File \»/root/.ansible/tmp/ansible-tmp-1587391916.91-273433827861906/AnsiballZ_docker_network.py\», line 114, in \n _ansiballz_main()\n File \»/root/.ansible/tmp/ansible-tmp-1587391916.91-273433827861906/AnsiballZ_docker_network.py\», line 106, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \»/root/.ansible/tmp/ansible-tmp-1587391916.91-273433827861906/AnsiballZ_docker_network.py\», line 49, in invoke_module\n imp.load_module(‘__main__’, mod, module,… Подробнее »
в рамках данной статьи рассматривается нам функционал ПО sip3 у вас проблема со сборщиком контейнеров , дебаг которого вам и следует поискать
Можно ли данным инструментом мониторить клиентов подключаемых по WebRTC?
RTP трафик будет в любом случае но про конкретный функционал лучше поинтересоваться непосредственно у разработчика
Похоже что инструкция слегка устарела. Для релиза 2021.2.3, playbooks/trial/ — Такого пути нет.
Актуальная инструкция, подходит для установки на CentOS7. В текущей ветке релиза (2021.3.1) отсутствуют плейбуки\роли для установки в докер. Вероятно у кого-то они сохранились и работают, я не проверял и не писал их за не имением опыта. Поэтому докер выбрасываем — он не нужен. Устанавливаем epel (yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm) Устанавливаем git, ansible (yum -y install ansible git). Питон не нужен, его автоматически подтянет ансибл. Качаем дистрибутив (git clone https://github.com/sip3io/sip3-ansible/) Далее нужно сгенерить ключ ssh и положить его в хранилище. Если в конфигах указан дефолтный адрес сервера 127.0.0.1, то это будет выглядеть так: ssh-keygen ssh-copy-id [email protected] Иначе ансибл будет вываливаться с… Подробнее »