Установите и настройте Wireshark

Посмотреть исходный код на GitHub

Wireshark — это инструмент с открытым исходным кодом, который может декодировать сетевые протоколы в стеке потоков, такие как IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Establishment), UDP и CoAP.

Инструмент сниффера Pyspinel подключается к устройству Thread NCP или RCP и преобразует его в беспорядочный сниффер пакетов, генерируя поток pcap (захват пакетов) для сохранения или передачи непосредственно в Wireshark.

Чтобы использовать Wireshark с Pyspinel, обратитесь к рекомендациям по установке на следующем шаге. Вам также необходимо настроить Wireshark для правильного отображения пакетов потоков и получения измерений RSSI.

Установить Wireshark

линукс

Откройте терминал и выполните следующие команды, чтобы загрузить и установить Wireshark:

sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install wireshark

Мы рекомендуем запускать Wireshark от имени пользователя без полномочий root . Для этого перенастройте пакет:

sudo dpkg-reconfigure wireshark-common

Когда появится диалоговое окно с вопросом «Должны ли пользователи, не являющиеся суперпользователями, иметь возможность перехватывать пакеты?», выберите « Да », затем добавьте пользователя wireshark и обновите права доступа к файлам:

sudo adduser $USER wireshark
sudo chmod +x /usr/bin/dumpcap

макОС и Виндовс

Скачайте и установите Wireshark . Чтобы оптимизировать безопасность для вашей операционной системы, обратитесь к Wireshark — информация о привилегиях захвата для конкретной платформы .

Настройка протоколов Wireshark

Чтобы настроить протоколы, выберите « Настройки... » в Wireshark и разверните раздел « Протоколы ».

6LoWPAN

Выберите 6LoWPAN из списка протоколов и проверьте или измените следующие настройки:

  1. Снимите флажок Получить идентификатор в соответствии с RFC 4944 .
  2. Обновите контекст 0 с помощью локального префикса Mesh для целевой сети Thread.

OT Sniffer Wireshark 6LoWPAN

Wireshark использует конфигурации контекста для анализа сжатого IPv6-адреса и правильного отображения исходного и конечного адресов IPv6.

Чтобы отобразить адреса для других префиксов сети, настроенных на шлюзе, обновите другие идентификаторы контекста с помощью этих префиксов.

Чтобы получить идентификатор контекста для определенного префикса в сетке, просмотрите TLV сетевых данных потока в любом ответном сообщении данных MLE. Например:

Context 1: fd00:7d03:7d03:7d03::/64

CoAP

Выберите CoAP из списка протоколов и установите порт UDP CoAP на 61631. Это гарантирует отображение сообщений TMF (например, запрос адреса).

IEEE 802.15.4

Выберите IEEE 802.15.4 из списка протоколов и проверьте или измените следующие настройки:

  1. Установите для 802.15.4 Ethertype (в шестнадцатеричном формате) значение «0x809a».
  2. Установите Security Suite на «Шифрование AES-128, 32-битная защита целостности».
  3. Нажмите кнопку Edit... рядом с Decryption Keys , где вы добавляете мастер-ключ сети Thread для расшифровки пакетов.

    1. Нажмите + , чтобы добавить ключ расшифровки .
    2. Введите Мастер-ключ сети потока в столбец Ключ расшифровки .
    3. Введите «1» в качестве индекса ключа дешифрования .
    4. Выберите Хэш потока из списка столбца Хэш ключа .

      OT Sniffer Wireshark IEEE 802.15.4

    5. Нажмите OK , чтобы сохранить ключ расшифровки.

Нить

Выберите Thread из списка протоколов и проверьте или измените следующие параметры:

  • Введите «00000000» для счетчика последовательности потоков .
  • Снимите флажок Использовать идентификатор PAN в качестве первых двух октетов главного ключа .
  • Установите флажок Автоматически получать счетчик последовательности потоков .

Нажмите кнопку OK , чтобы сохранить любые изменения протокола.

Некоторый трафик Thread может быть проанализирован как протокол ZigBee. Чтобы правильно отображать эти два протокола, отредактируйте включенные протоколы в Wireshark:

  1. В Wireshark перейдите в «Анализ » и нажмите «Включенные протоколы ».
  2. Снимите галочки со следующих протоколов:

    1. LwMesh
    2. ZigBee
    3. Зеленая мощность ZigBee

Настройка Wireshark RSSI

Чтобы отобразить RSSI в Wireshark:

  1. Выберите « Настройки... » и разверните раздел « Протоколы », затем нажмите « IEEE 802.15.4 ».
  2. Установите формат FCS :

    • Если IEEE 802.15.4 TAP отключен: метаданные TI CC24xx .
    • Если IEEE 802.15.4 TAP включен: ITU-T CRC-16 . Если вы следуете руководству по анализу пакетов для Nordic Semiconductor nRF52840 DK, обратитесь к флагу --tap для получения дополнительной информации.
  3. Нажмите OK , чтобы сохранить и вернуться в меню настроек .

  4. В разделе «Настройки » выберите «Внешний вид », затем «Столбцы ».

  5. Добавьте новую запись:

    • Название: РССИ
    • Тип: Пользовательский
    • Поля: wpan.rssi

OT Sniffer Wireshark RSSI