Cài đặt và định cấu hình Wireshark

Xem nguồn trên GitHub

Wireshark là một công cụ nguồn mở có thể giải mã các giao thức mạng trong ngăn xếp Thread, chẳng hạn như IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Setupment), UDP và CoAP.

Công cụ Psspinel sniffer kết nối với một thiết bị NCP hoặc RCP luồng và chuyển đổi thiết bị thành một trình thông báo gói linh hoạt, tạo ra luồng pcap (gói chụp) được lưu hoặc đưa vào Wireshark trực tiếp.

Để sử dụng Wireshark với Pyspinel, hãy tham khảo các đề xuất cài đặt ở bước tiếp theo. Bạn cũng sẽ cần định cấu hình Wireshark để hiển thị chính xác các gói Thread và nhận các phép đo RSSI.

Cài đặt Wireshark

Linux

Mở một thiết bị đầu cuối và chạy các lệnh sau để tải và cài đặt Wireshark:

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

Bạn nên chạy Wireshark với tư cách là người dùng không sử dụng root. Để thực hiện việc này, hãy định cấu hình lại gói:

sudo dpkg-reconfigure wireshark-common

Khi bạn thấy hộp thoại hỏi "Những người không phải người dùng siêu cấp có thể chụp gói không?", chọn , sau đó thêm người dùng wireshark và cập nhật các quyền đối với tệp:

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

Mac OS và Windows

Tải và cài đặt Wireshark. Để tối ưu hoá bảo mật cho hệ điều hành, hãy tham khảo Wireshark — thông tin dành riêng cho nền tảng về đặc quyền thu thập.

Định cấu hình giao thức Wireshark

Để định cấu hình giao thức, hãy chọn Preferences... (Tuỳ chọn...) trong Wireshark và mở rộng phần Giao thức.

6LoWPAN

Chọn 6LoWPAN trong danh sách giao thức rồi xác minh hoặc thay đổi các chế độ cài đặt sau:

  1. Bỏ đánh dấu mục Mã nhận dạng dự phòng theo RFC 4944.
  2. Cập nhật Ngữ cảnh 0 bằng Tiền tố cục bộ lưới cho mạng Luồng mục tiêu.

Wireshark OT 6LoWPAN

Wireshark sử dụng cấu hình ngữ cảnh để phân tích cú pháp địa chỉ IPv6 đã nén và hiển thị chính xác địa chỉ nguồn và đích của IPv6.

Để hiển thị địa chỉ của các tiền tố lưới khác được định cấu hình trên cổng, hãy cập nhật các Mã ngữ cảnh khác với các tiền tố đó.

Để nhận mã ngữ cảnh cho một tiền tố cụ thể trên lưới, hãy xem TLV của dữ liệu mạng theo luồng trong bất kỳ thông báo phản hồi dữ liệu MLE nào. Ví dụ:

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

coAP

Chọn CoAP từ danh sách giao thức và đặt CoAP UDP Port thành 61631. Điều này đảm bảo nội dung TMF (như địa chỉ đề xuất) được hiển thị.

IEEE 802.15.4

Chọn IEEE 802.15.4 trong danh sách các giao thức và xác minh hoặc thay đổi các chế độ cài đặt sau:

  1. Đặt 802.15.4 Ethertype (trong hệ thập lục phân) thành "0x809a".
  2. Đặt Bộ bảo mật thành "Mã hoá AES-128, Bảo vệ tính toàn vẹn 32 bit".
  3. Nhấp vào nút Edit... (Chỉnh sửa...) bên cạnh Decryption Keys (Khoá giải mã), là nơi bạn thêm Khoá mạng chính để giải mã gói.

    1. Nhấp vào dấu + để thêm khoá giải mã.
    2. Nhập Khoá chính của luồng mạng vào cột Khoá giải mã.
    3. Nhập "1" làm Chỉ mục khoá giải mã.
    4. Chọn Hàm băm chuỗi từ hộp danh sách cột Khoá chính.

      OT Sniffer Wireshark IEEE 802.15.4

    5. Nhấp vào OK để lưu khoá giải mã.

Giao thức Thread

Chọn Thread (Luồng) từ danh sách giao thức và xác minh hoặc thay đổi các chế độ cài đặt sau:

  • Nhập "00000000" cho bộ đếm Trình tự chuỗi.
  • Bỏ đánh dấu mục Sử dụng Mã PAN làm hai octet chính đầu tiên.
  • Đánh dấu vào mục Tự động lấy bộ đếm trình tự luồng.

Nhấp vào nút OK để lưu mọi thay đổi giao thức.

Một số lưu lượng truy cập luồng có thể được phân tích dưới dạng giao thức ZigBee. Để hiển thị chính xác hai giao thức này, hãy chỉnh sửa các giao thức đã bật trong Wireshark:

  1. Trong Wireshark, hãy chuyển đến Analyze (Phân tích), sau đó nhấp vào Enabled Protocols (Các giao thức đã bật).
  2. Bỏ chọn các giao thức sau:

    1. LwMesh
    2. ZigBee
    3. ZigBee Green Power

Định cấu hình Wireshark RSSI

Cách hiển thị RSSI trong Wireshark:

  1. Chọn Lựa chọn ưu tiên... và mở rộng phần Giao thức, sau đó nhấp vào IEEE 802.15.4.
  2. Đặt Định dạng FCS:

    • Nếu IEEE 802.15.4 TAP bị tắt: siêu dữ liệu TI CC24xx.
    • Nếu đã bật TAP IEEE 802.15.4: ITU-T CRC-16. Nếu bạn đang làm theo hướng dẫn Packet Sniffing (Đánh dấu gói) cho Nordic Semiconductor nRF52840 DK, hãy tham khảo cờ --tap để biết thêm thông tin.
  3. Nhấp vào OK để lưu và quay lại trình đơn Lựa chọn ưu tiên.

  4. Trong mục Lựa chọn ưu tiên, hãy chọn Giao diện, rồi chọn Cột.

  5. Thêm mục nhập mới:

    • Tiêu đề: RSSI
    • Loại: Tuỳ chỉnh
    • Trường: wpan.rssi

OT Sniffer Wireshark RSSI