מושגים כלליים
הפקודה Traceroute, הידועה גם בשם tracert ב-Windows, היא כלי אבחון רשת המשמש להתחקות אחר הנתיב שלוקחת חבילת נתונים ממקור ליעדה הסופי באינטרנט. כלי זה שימושי מאוד לזיהוי בעיות רשת אפשריות, כגון זמן אחזור גבוה או מנות אבודות.
בתהליך המעקב אחר המסלול, הפקודה Traceroute שולחת סדרה של מנות נתונים ברשת, וכל חבילה כוללת מספר TTL (Time To Live) שמתחיל בערך 1. בכל פעם שמגיעה מנה לצומת ב- רשת, הצומת מוריד את ערך ה-TTL ב-1 לפני העברת החבילה. כאשר ערך ה-TTL מגיע ל-0, החבילה נמחקת והצומת שולח הודעת "חריגה מהזמן" למקור, המציינת כי החבילה לא הצליחה להגיע ליעדה ושחורגת מהזמן המותר.
הפקודה Traceroute חוזרת על תהליך זה עבור כל צומת במסלול עד שהמנה מגיעה ליעדה הסופי. בסוף התהליך, הפקודה Traceroute מציגה רשימה של הצמתים במסלול, יחד עם כתובת ה-IP של כל צומת וזמן התגובה שלקח לחבילה להגיע לאותו צומת.
רצף חבילות מפורט
הפעולה המפורטת של פקודת Traceroute יכולה להתבטא באופן הבא:
- הפקודה Traceroute שולחת חבילת נתונים עם ערך TTL ראשוני של 1 ליעד הסופי.
- הצומת הראשון בנתיב החבילה יקבל את החבילה, יפחית את ערך ה-TTL ב-1, וישלח תגובה "פג תוקפו של TTL" למקור.
- המקור יקבל את תגובת "חרגת הזמן" ויתעד את כתובת ה-IP של הצומת הראשון.
- הפקודה Traceroute תשלח חבילת נתונים נוספת עם ערך TTL של 2 ליעד הסופי.
- הצומת השני בנתיב החבילה יקבל את החבילה, יקטין את ערך ה-TTL ב-1, וישלח תגובת "חריגה מהזמן" למקור.
- המקור יקבל את תגובת "חרגת הזמן" ויתעד את כתובת ה-IP של הצומת השני.
- תהליך זה יחזור על עצמו עבור כל צומת בנתיב החבילה, ויגדיל את ערך ה-TTL בכל איטרציה עד שהמנה תגיע ליעד הסופי.
- ברגע שהמנה מגיעה ליעד הסופי, הפקודה Traceroute מציגה את הנתיב המלא של החבילה, כולל כתובת ה-IP וזמן התגובה של כל צומת במסלול.
מהי הפקודה ב-MikroTik RouterOS
לדוגמא כיצד להשתמש בפקודה Traceroute ב-Mikrotik RouterOS, ניתן לבצע את השלבים הבאים:
גש לממשק הנתב של Mikrotik ופתח את מסוף הפקודות.
הזן את הפקודה Traceroute ולאחריה את כתובת ה-IP או שם הדומיין של היעד שאליו ברצונך לעקוב אחר המסלול. לדוגמה, כדי להתחקות אחר הנתיב לאתר Google, תוכל להשתמש בפקודה הבאה:
[admin@MikroTik] > tool traceroute google.com
המתן לסיום תהליך איתור המסלול. בהתאם למספר הצמתים בנתיב ולזמן האחזור של הרשת, תהליך זה עשוי להימשך מספר שניות או מספר דקות.
סקור את התוצאות של פקודת Traceroute. הפלט של הפקודה יציג רשימה של כל הצמתים בנתיב ליעד, יחד עם כתובת ה-IP של כל צומת וזמן התגובה שלקח להגיע לאותו צומת. לדוגמה:
ADDRESS STATUS
1 192.168.1.1 1ms 1ms 1ms
2 10.0.0.1 5ms 5ms 5ms
3 200.10.0.1 10ms 10ms 10ms
4 200.10.1.1 15ms 15ms 15ms
5 200.10.2.1 20ms 20ms 20ms
6 200.10.3.1 25ms 25ms 25ms
7 8.8.8.8 30ms 30ms 30ms
[admin@MikroTik] >
בדוגמה זו, אתה יכול לראות שחבילת הנתונים עברה דרך שישה צמתים שונים לפני שהגיעה ליעד הסופי (8.8.8.8).
ההבדל בין Linux Traceroute ל- Windows Tracert
ישנם כמה הבדלים עיקריים בין שתי הפקודות:
תחביר פקודה: התחביר של פקודת Linux Traceroute ופקודת Windows Tracer שונה במקצת. ב-Linux, הפקודה כתובה כ-"traceroute", בעוד שב-Windows היא כתובה כ-"tracert".
אפשרויות פקודה: לפקודת Linux Traceroute ולפקודה של Windows Tracert יש אפשרויות פקודה שונות. לדוגמה, ב-Linux, הפקודה Traceroute תומכת באפשרויות כגון -I לציון השימוש ב-ICMP במקום UDP, בעוד שב-Windows, הפקודה Tracerout תומכת באפשרויות כגון -h לציון המספר המרבי של הקפות.
פורמט פלט: גם פורמט הפלט של פקודת Linux Traceroute ופקודת Windows Tracert שונה. ב-Linux, הפקודה Traceroute מציגה את כתובת ה-IP וזמן התגובה של כל צומת במסלול, בעוד שב-Windows, הפקודה Tracerout מציגה את השם של כל צומת וזמן תגובה.
פונקציונליות מתקדמת: הפקודה של Linux Traceroute מסוגלת לבצע מעקבי מסלול מתקדמים יותר, כגון מעקב מסלול הפוך ועקירות מסלולים מרובי נתיבים. בנוסף, פקודת Linux Traceroute ניתנת להתאמה אישית יותר מפקודת Windows Tracert, המאפשרת למשתמש לציין את היציאה וגודל החבילה.
לסיכום, למרות ששתי הפקודות דומות בפונקציונליות הבסיסית שלהן, ישנם כמה הבדלים משמעותיים בתחביר הפקודה, אפשרויות הפקודה, פורמט הפלט והפונקציונליות המתקדמת.
דוגמה לפקודה בלינוקס
traceroute google.com
1 192.168.1.1 (192.168.1.1) 1.107 ms 1.237 ms 1.353 ms
2 10.255.255.1 (10.255.255.1) 14.527 ms 14.622 ms 14.719 ms
3 172.16.1.1 (172.16.1.1) 25.817 ms 25.912 ms 26.005 ms
4 172.16.2.1 (172.16.2.1) 38.320 ms 38.414 ms 38.505 ms
5 203.208.222.125 (203.208.222.125) 38.601 ms 37.301 ms 37.392 ms
6 72.14.195.12 (72.14.195.12) 60.225 ms 60.318 ms 60.415 ms
7 108.170.247.65 (108.170.247.65) 61.424 ms 61.511 ms 61.605 ms
8 108.170.235.225 (108.170.235.225) 62.719 ms 62.814 ms 62.908 ms
9 108.170.232.193 (108.170.232.193) 63.016 ms 63.103 ms 63.197 ms
10 74.125.244.16 (74.125.244.16) 63.300 ms 63.386 ms 63.480 ms
11 172.253.50.138 (172.253.50.138) 64.685 ms 64.781 ms 64.877 ms
12 172.253.66.7 (172.253.66.7) 65.122 ms 65.217 ms 65.314 ms
13 172.253.50.246 (172.253.50.246) 66.493 ms 66.587 ms 66.680 ms
14 74.125.252.128 (74.125.252.128) 66.879 ms 66.965 ms 67.058 ms
15 216.58.214.142 (216.58.214.142) 67.252 ms 67.365 ms 67.454 ms
דוגמה לפקודה ב-Windows
tracert google.com
Tracing route to google.com [172.217.12.142]
over a maximum of 30 hops:
1 1 ms 1 ms 1 ms 192.168.1.1
2 17 ms 17 ms 18 ms 10.255.255.1
3 27 ms 27 ms 27 ms 172.16.1.1
4 40 ms 40 ms 40 ms 172.16.2.1
5 38 ms 37 ms 37 ms 203.208.222.125
6 59 ms 59 ms 59 ms 108.170.247.65
7 61 ms 61 ms 61 ms 108.170.235.225
8 63 ms 63 ms 63 ms 108.170.232.193
9 64 ms 64 ms 64 ms 74.125.244.16
10 67 ms 67 ms 67 ms 172.253.50.138
11 67 ms 67 ms 67 ms 172.253.66.7
12 69 ms 69 ms 69 ms 172.253.50.246
13 66 ms 66 ms 66 ms 74.125.252.128
14 66 ms 66 ms 66 ms 216.58.214.142
Trace complete.
איזה יותר טוב?
באופן כללי, שתי הפקודות (traceroute
y tracert
) שימושיים למעקב אחר בעיות רשת ואבחון בעיות קישוריות. הבחירה באיזו להשתמש תהיה תלויה במערכות הפעלה ובהעדפות אישיות.
לגבי המאפיינים הספציפיים, traceroute
ב-Linux מציע יותר אפשרויות ותכונות מתקדמות מאשר tracert
ב-Windows, כגון תמיכה בפרוטוקולי UDP ו-TCP, והיכולת להתאים אישית את הזמן הקצוב וספירת הקפיצות. למרות זאת, tracert
ב-Windows קל יותר לשימוש ויכול לספק מידע ברור וקריא יותר במקרים מסוימים.
לסיכום, לשני הכלים יש את החוזקות והחולשות שלהם, והבחירה באחד או באחר תהיה תלויה בשימוש הספציפי ובהעדפות האישיות.