Анализ трафика при помощи Wireshark
Сергей Пол
30 ноября 2015
Часто для анализа и устранения конкретной проблемы нужно взглянуть на реальный SIP-трафик от 3CX Phone System 3CX или от VoIP-клиента.
Например:
- Вы можете проверить SIP трафик, поступающий на сервер, и таким образом убедиться, что он не будет блокироваться брандмауэром на стороне клиента или брандмауэром между сервером и VOIP-провайдером.
- Вы можете проверить, запросы STUN.
- Вы можете проверить формат INVITES и других сообщений SIP, которые отправляются VoIP-провайдером или VoIP-шлюзом.
- Вы можете просмотреть процесс регистрации телефонов.
Кроме того, Техническая Поддержка 3CX может попросить Вас дать информацию по SIP-трафику, чтобы проанализировать проблему более подробно.
Чтобы собрать SIP-трафик:
1. Загрузите и установите приложение для сбора. В данном примере мы используем Wireshark (распространяется бесплатно), который можно загрузить сwww.wireshark.org
-
- Включите интерфейсы в меню. Перейдите в Capture > InterfaceТеперь выберите сетевой интерфейс, для которого будет отслеживаться трафик и нажмите на кнопку Start, после этого вы сможете видеть всю информацию и проходящих через этот интерфейс пакетах.

- Для того чтобы отслеживать только SIP-трафик,ведите слово SIP в поле Filter и нажмите Apply.4. Повторите действие, которое вы хотите проанализировать (например, регистрацию на VoIP-провайдере, или исходящий вызов).
В главном окне программы будут отображаться только SIP-пакеты. После завершения, вы можете сохранить данные через меню File.Дополнительная фильтрация (если фильтр задан верно, поле подсвечивается зеленым):
- ip.addr == IP_АДРЕС (весь трафик С и НА данный адрес)
- ip.scr == IP_АДРЕС (весь трафик С данного адреса)
- ip.dst == IP_АДРЕС (весь трафик НА данный адрес)
- ip.scr == IP_АДРЕС && sip (весь SIP-трафик С данного адреса)
- ip.dst == IP_АДРЕС && sip (весь SIP-трафик НА данный адрес)
В программе Wireshark реализован удобный механизм для диагностики (анализа) VoIP-звонков, в частности можно получить графическую диаграмму звонков и посмотреть, как происходил обмен данными. Wireshark позволяет анализировать протокол SIP и его RTP-трафик.
Продемонстрируем это на примере.
Предположим, что во время выполнения VoIP-звонка с помощью программы Wireshark был выполнен захват сетевых пакетов и этот дамп следует проанализировать.
1. Откройте ранее сохраненный файл с дампом VoIP-пакетов.
2. Выберите SIP или RTP-пакет из списка (в нашем примере анализируем RTP-трафик). Для фильтрации пакетов вы можете в полеFilter ввести значение sip или rtp для отображения только определенного типа трафика.

3. Зайдите в меню Statistics (или Telephony, в зависимости от версии программы) > VoIP Calls.
Откроется окно VoIP Calls со списком VoIP-звонков.

В списке VoIP-звонков показывается следующая информация для каждого звонка:
- Start Time: Время начала звонка.
- Stop Time: Время окончания звонка.
- Initial Speaker: IP-адрес источника пакетов, который инициировал звонок.
- From: Для SIP-звонков в поле «From» отображается запрос INVITE.
- To: Для SIP-звонков в поле «To» отображается запрос INVITE.
- Protocol: Протокол.
- Packets: Число пакетов, участвующих в звонке.
- State: Статус звонка.
- Comment: Дополнительные комментарии.
- Выберите VoIP-вызов и затем нажмите кнопку Graph (или Flow, в зависимости от версии программы). Появится окно Graph Analysisс графической диаграммой обмена данными VoIP-звонка.

Если у вас есть интересные идеи или вам требуется помощь по настройке оборудования пишите всегда буду рад помочь.
mail: support@asdal.ru
Leave reply