במדריך הזה מוסבר איך להגדיר extext ל-Wireshark כדי לשריין חבילות מרשת Thread.
כדי להשתמש ב-Pyspinel לזריקת חבילות ללא extext, מומלץ לעיין במאמר Ppacket Sniffing with Pyspinel.
הגדרת סביבת הריח
לפני שנתחיל, עליך להשלים את השלבים הבאים:
- כדאי לעיין בדרישות למעקף של חבילות.
- התקנה והגדרה של Wireshark.
- התקנה של פיזלין ויחסי תלות עם extext.
אימות
המדריך הזה אומת על ידי Zolertia Firefly (Texas Instruments CC2538 SoC) במערכות האירוח הבאות:
- Debian 4.19.37 — Wireshark 3.0.4
- macOS Mojave 10.14.6 — Wireshark 3.0.5
- Windows 10 בגרסת 64 סיביות 17134 - Wireshark 3.0.6
יצירה והבהוב של הריח
ההוראות לפיתוח והצגה מהבהבות משתנות בהתאם לפלטפורמה.
בהדרכה לשימוש ב-CC2538 והבזק של CC2538, היכנסו אל דוגמת CC2538 README ב-GitHub.
הוראות כלליות ליצירה של גרסת build מפורטות במאמר איך לבנות את OpenThread.
שימוש בסניף
מסך הצילום של Wireshark מוצג בהפעלה הראשונה של Wireshark. עליו לרשום ממשקי חומרה המחוברים להתקן OpenThread.
צילום באמצעות ממשק יחיד
אם זו הפעם הראשונה שאתם משתמשים בממשק, לחצו על הלחצן אפשרויות בצד ימין של הממשק:
- מגדירים את הערוץ לערך הרצוי.
- יש לבדוק את IEEE 802.15.4 TAP כדי לוודא שפרטי הערוץ כלולים בפלט ה-pcap וניתן להצגה ב-Wireshark GUI.
- תוכלו להיעזר בשמירת הפרמטרים בתחילת הצילום כדי לוודא שהפרמטרים האלה יישמרו אחרי התחלת הצילום, כדי שלא תצטרכו להגדיר אותם שוב בפעם הבאה שתשתמשו בממשק (אלא אם תצטרכו לשנות את הערוץ).
- לוחצים על הפעלה.
אם הפרמטרים כבר נשמרו, מתחילים לרחרח על ידי בחירה בממשק של החומרה ולחיצה על סמל ה-Wireshark בפינה הימנית העליונה.
צילום ממספר ממשקים
בחרו את כל ממשקי החומרה שמופיעים במסך הצילום, ולחצו על הסמל של Wireshark בפינה הימנית העליונה.
תוכלו להשתמש בשדות האלה כדי לזהות מציצים מסוימים במהלך צילום ממספר ממשקי API:
- Interface ID (frame.interface_id) — מזהה ממשק המשמש את Wireshark לזיהוי ממשק צילום
- Interface name (מסגרת.frame.interface_name) — שם הממשק המשמש את Wireshark לזיהוי ממשק צילום
- ערוץ (wpan-tap.ch_num) — ערוץ IEEE 802.15.4 לצילום (טווח: 11-26)
פתרון בעיות
המכרז OpenThread לא מופיע כממשק של Wireshark
- אם יש לכם כמה מתורגמנות של Python, ודאו שהסקריפט של extcap משמש את מתרגם Python 3. Pyspinel אינו תומך ב-Python 2.
- בודקים אם החומרה נספרת ב-USB והנהגים נטענים.
- בדקו שהקושחה הנכונה (NCP או RCP) הבהבה לחומרה.
- יש לוודא שהסקריפט של Python הממוקם בנתיב ה-extcap ניתן להפעלה.
- ב-OS X וב-Linux:
- חשוב לוודא שיש לכם הרשאת הפעלה לקובץ
extcap_ot.py
:ls -l extcap_ot.py
- אם חסרה הרשאת הביצוע (x), משנים את ההרשאות:
chmod +x extcap_ot.py
- מוודאים שהממשק מופיע ברשימה:
extcap_ot.py --extcap-interfaces
- חשוב לוודא שיש לכם הרשאת הפעלה לקובץ
- ב-Windows:
- מוודאים שהממשק מופיע ברשימה:
extcap_ot.bat --extcap-interfaces
- אם הפלט יוצא עם שגיאת Python, מוודאים שגרסת Python היא 3.x:
py -3 --version
- מוודאים שהממשק מופיע ברשימה:
- ב-OS X וב-Linux:
Wireshark מאפשר רק למשתמש הבסיסי לתעד חבילות
במהלך התקנת Wireshark ב-Ubuntu, המשתמש יתבקש לבחור באחת מהאפשרויות הבאות:
- צריך ליצור את קבוצת המשתמשים ב-
wireshark
ולאפשר לכל חברי הקבוצה לאסוף חבילות נתונים. - רק המשתמש
root
יכול לתעד חבילות.
מומלץ מאוד להשתמש ב-Wireshark כמשתמש root
. אם תבחרו באפשרות הזו, תוכלו לשנות את ההגדרה:
sudo dpkg-reconfigure wireshark-common
אם הוגדרה רשת Wireshark להגבלת ההעברה של חברים בקבוצה wireshark
, ייתכן שיהיה עליך להוסיף לקבוצה את המשתמש הנכון:
sudo usermod -a -G wireshark user
הוספת המשתמש הנכון לקבוצה dialout
:
sudo usermod -a -G dialout user
צריך לסגור ולהפעיל מחדש את Wireshark כדי להחיל את ההגדרות החדשות של קבוצת משתמשים.
שגיאה בפורמט של Wireshark בעת צילום בממשקי USB מרובים ב-Windows
זו בעיה ידועה בחלק מהגרסאות הישנות של Wireshark. ודאו שאתם משתמשים ב-Wireshark 3.0.6 ואילך.