מבוא ל-traceroute
פקודת Linux traceroute היא כלי עזר לפתרון בעיות רשת שעוזר לנו לקבוע את מספר הקפיצות והמנות הנוסעות שנדרש כדי להגיע ליעד. הוא משמש להצגת האופן שבו הנתונים מועברים ממכונה מקומית למכונה מרוחקת. טעינת דף אינטרנט היא אחת הדוגמאות הנפוצות של traceroute. טעינת דף אינטרנט מעבירה נתונים דרך רשת ונתבים. ה-traceroute יכול להציג את המסלולים, כתובות ה-IP ושמות המארחים של נתבים ברשת. זה יכול להיות שימושי לאבחון בעיות רשת.
במחשוב, tracert ו-traceroute הן הפקודות לאבחון רשתות מחשבים כדי להציג מסלולים אפשריים ולמדוד עיכובים בהעברת מנות ברחבי רשת ה-IP. היסטוריית המסלול מתועדת כזמן הלוך-חזור של החבילות מכל המארחים העוקבים במסלול; סכום הזמן הממוצע בכל קפיצה הוא מדד הזמן הכולל שהושקע ליצירת החיבור.
כיצד לקרוא קובץ json
פקודת traceroute ממשיכה אלא אם כל חבילה שנשלחה אובדת יותר מפעמיים; הקשר אבד, ולא ניתן להעריך את הנתיב. מצד שני, פקודת הפינג מודדת רק את זמני ההליכה הלוך ושוב אחרונים דרך נקודת היעד. לפעמים, לכלי יש שם דומה, tracert6 ו-traceroute6, עבור IPv6.
תחביר:
traceroute [OPTION...] HOST
אפשרויות:
אפשרויות שורת הפקודה הבאות נתמכות על ידי הפקודה traceroute:
-f, --first-hop=NUM: הוא משמש להגדרת מרחק הקפיצה הראשוני.
-g, --gateways=GATES: הוא משמש להצגת רשימה של שערים לניתוב מקור רופף.
-I, --icmp: צוין להשתמש ב-ICMP ECHO כבדיקה.
-m, --max-hop=NUM: הוא משמש להגדרת ספירת הקפות מקסימלית, ברירת המחדל היא 64.
-M, --type=שיטה: הוא מציין את METHOD (icmp או udp) עבור פעולות traceroute, שיטת ברירת המחדל היא udp.
-p, --port=PORT: הוא מוגדר להשתמש ביציאת PORT היעד, ברירת המחדל של PORT היא 33434.
-q, --tries=NUM: הוא משמש להעברה של NUM מנות בדיקה לכל הופ, ברירת המחדל היא 3.
--resolve-hostnames: הוא משמש כדי לפתור את שמות המארחים.
-t, --tos=NUM: הוא משמש להגדרת סוג השירות (TOS) ל-NUM.
-w, --wait=NUM: הוא משמש להמתנה בשניות לתגובה, ברירת המחדל היא 3.
-?, --עזרה: הוא משמש להצגת מדריך העזרה המכיל תיאור קצר של אפשרויות שורת הפקודה והשימוש הנתמכים.
--נוֹהָג: הוא מציג הודעת שימוש קצרה.
-V, --גרסה: הוא משמש להצגת מידע הגרסה של ה-traceroute.
בואו נסתכל על האינדקס המהיר של הנושא:
מיון בועות באלגוריתם
- התקן את הפקודה traceroute
- איך זה עובד?
- עקבו אחר המסלול באמצעות Ipv6
- עקבו אחר המסלול באמצעות Ipv4
- השבת מיפוי כתובת IP ושם מארח
- הגדר את מספר השאילתות לכל קפיצה
- הגדר את זמן ההמתנה לתגובה
- ציין את הממשק לשימוש
- הגדר את ערך ה-TTL הראשוני
- הגדר את המספר המרבי של הקפות
- קבלת עזרה
יישום של traceroute
פקודת traceroute זמינה במספר מערכות הפעלה מודרניות. במערכות דמויות יוניקס כמו לינוקס, macOS ו- FreeBSD, הוא זמין ככלי לשורת הפקודה. כמו כן, traceroute נגיש באופן גרפי בתוך חבילת Network Utilities ב-macOS; כלי עזר אלה הוצאו משימוש מאז פרסום macOS Big Sur.
ReactOS ו-Microsoft Windows מציעות תוכנית בשם tracert המיישמת פונקציית מעקב דומה. כמו כן, מערכת הפעלה מבוססת Windows NT מציעה PathPing, שיכולה לשלב את הפונקציונליות של פקודת ping עם tracert. מהדורת ReactOS שולבה על ידי Get Murphy, והיא מורשית על ידי ה-GPL.
כברירת מחדל, traceroute שולחת הזמנה של מנות UDP (User Datagram Protocol) במערכת הפעלה דמויית Unix, עם מספרי יעדי יציאה שנעים בין 33434 ל-33534. למימושי ה-traceroute שנשלחו עם macOS, DragonFly BSD, OpenBSD, NetBSD, FreeBSD ולינוקס האפשרות להשתמש במנות ICMP Echo Request כגון TCP ו-UDP באמצעות מנות ICMP או TCP SYN. כברירת מחדל, tracert מעביר מנות ICMP Echo Request ב-Windows במקום העברות UDP traceroute.
שימוש ב- traceroute
לרוב ההטמעות יש לפחות כמה אפשרויות להגדיר את ספירת השאילתות להעברה לכל הופ, זמן המתנה לתגובה, מגבלת הופעה ויציאה בשימוש. אם אנחנו לא מפעילים את traceroute עם אפשרויות שצוינו, הוא מציג את רשימת האפשרויות הזמינות, בעוד שהפקודה man traceroute מייצגת פרטים נוספים, כמו דגלי השגיאה.
המקורות של traceroute
הדף הידני של ה-traceroute מציין שתוכנית ה-traceroute בפועל צוינה על ידי ואן ג'ייקובסון ב-1987 מהמלצה של סטיב דירינג, עם תיקונים והמלצות קוגנטיות במיוחד של סי פיליפ ווד, קן אדלמן וטים סיבר. Mike Muuss, מחבר תוכנית הפינג, מצהיר כי ה-traceroute צוין בתמיכה של ICMP ליבה שהוא קידד קודם לכן כדי להפעיל שקעי ICMP גולמיים בזמן שהוא ציין בתחילה את תוכנית הפינג.
מגבלות של traceroute
המגבלות של traceroute ידועות לשמצה ויש לקחת בחשבון בעת השימוש בכלי. לדוגמה, traceroute מזהה נתיבים ברמת הממשק אך לא ברמת המסלול. מגבלות אחרות מתרחשות כאשר נתבים אינם מגיבים לבדיקה או כאשר נתבים כוללים הגבלה לתגובות ICMP.
Traceroute עשוי לייצג נתיב שלא קיים בקיום של איזון עומסי תנועה. כדי למזער בעיה זו, שינוי traceroute זמין המכונה Paris-traceroute, המנהל את מזהה זרימת הבדיקה כדי להתעלם מאיזון עומסים.
התקן את הפקודה traceroute
ה-traceroute אינו כלי ברירת מחדל של לינוקס מערכת. כדי להשתמש ב-traceroute, עלינו להתקין אותו באופן ידני. כדי להתקין אותו, בצע אחת מהפקודות הבאות:
sudo apt install inetutils-traceroute sudo apt install traceroute
הפקודות לעיל יתקינו את כלי השירות traceroute במערכת שלנו. לאחר ההתקנה המוצלחת, הפלט ייראה כך:
איך זה עובד?
כדי להתחקות אחר המסלול של מארח רשת מחובר, העבר את שם השרת או כתובת ה-IP שברצונך לחבר. לדוגמה, כדי להתחקות אחר המסלול של השרת 'javatpoint.com', בצע את הפקודה הבאה:
traceroute javatpoint.com
הפקודה שלעיל תציג כשות, מנות ומידע רב אחר על המסלול הנתון. שקול את הפלט שלהלן:
מהפלט לעיל, אנו יכולים לראות מספר דברים. בואו נבין כל חלק מהפלט:
- השורה הראשונה מציגה את שם המארח וכתובת ה-IP שאליה יש להגיע, קפיצות שעומדות להתבצע על ידי פקודת traceroute, וגודל החבילות שיישלחו.
- מהשורה השנייה, כל שורה מציגה קפיצה ליעד. ושם המארח ואחריו כתובת ה-IP של המארח, זמן הלוך ושוב. זמן ההליכה הלוך ושוב הוא סכום הזמן שלוקח לשליחת אות והזמן שלוקח להגיב למארח.
- כברירת מחדל, הוא שולח שלוש מנות עבור כל מארח, כך שרשומים שלושה זמני תגובה.
- הסמל '*' מייצג את אובדן החבילה. אובדן החבילות קורה בגלל הפסקת רשת, תעבורה גבוהה לעומס ברשת, או אולי חומת האש מפילה תעבורה. באובדן רב של חבילה, ה-traceroute יציג את השגיאה בתור 'לא הגיע ליעד'.
עקוב אחר המסלול באמצעות IPv6
האפשרות '6' משמשת למעקב אחר המסלול לרשת מארחת באמצעות פרוטוקול Ipv6. שקול את הפקודה הבאה:
traceroute6 google.com
הפקודה לעיל תעקוב אחר המסלול אל 'google.com' באמצעות פרוטוקול Ipv6. שקול את הפלט שלהלן:
עקבו אחר המסלול באמצעות Ipv4
האפשרות '4' משמשת למעקב אחר המסלול לרשת מארחת באמצעות פרוטוקול Ipv6. שקול את הפקודה הבאה:
traceroute 4 google.com
הפקודה לעיל תעקוב אחר המסלול אל 'google.com' באמצעות פרוטוקול Ipv6. שקול את הפלט שלהלן:
השבת את מיפוי כתובת ה-IP ושמות המארח
האפשרות 'n' משמשת כדי להשבית את מיפוי כתובת ה-IP ושם המארח. שקול את הפקודה הבאה:
מעבר הזמנה
traceroute n google.com
הפקודה לעיל תפיק את הפלט באופן הבא:
הגדר את מספר השאילתות לקפיצה
האפשרות '-q' משמשת להגדרת מספר השאילתות לכל הופ. שקול את הפקודה הבאה:
traceroute -q 2 google.com
הפקודה לעיל תפיק את הפלט באופן הבא:
הגדר את זמן ההמתנה לתגובה
האפשרות '-w' משמשת כדי להגדיר את זמן ההמתנה לתגובה ב-traceroute. זה יציין את זמן ההמתנה בשניות לתגובה לבדיקה. שקול את הפקודה הבאה:
traceroute -w 1 google.com
מהפקודה לעיל, זמן ההמתנה לתגובה הוא שנייה אחת. זה יפיק את הפלט באופן הבא:
ציין את הממשק לשימוש
האפשרות 'i' משמשת כדי להגדיר את ממשק הרשת שבו Traceroute צריך להשתמש. אם הוא לא מוגדר, הוא יגדיר את הממשק לפי טבלת הניתוב. שקול את הפקודה הבאה:
traceroute i wlp3s0b1 google.com
הפקודה לעיל תפיק את הפלט באופן הבא:
הגדר את ערך ה-TTL הראשוני
אנו יכולים להגדיר את ערך ה-TTL הראשוני (זמן לחיות) שאינו ערך ברירת המחדל. זה ידלג על כמה כשות. בדרך כלל, הוא מוגדר לאחד, שניים, שלוש וכן הלאה עבור קבוצת הבדיקות המתאימה. לכן, אם נגדיר את זה לשבע, המבחן הראשון ינסה את ההקפצה שבע וידלג על הכשות מאחת לשש. שקול את הפקודה הבאה:
traceroute -f 7 google.com
הפקודה לעיל תעבור ישר לקפיצה שבע. שקול את הפלט שלהלן:
הורד סרטון מיוטיוב עם vlc
הגדר את המספר המרבי של הקפות
האפשרות '-m' משמשת כדי להגדיר את המספר המרבי של הקפות עבור החבילה להגיע ליעד. ערך ברירת המחדל עבור המספר המרבי של הקפות הוא 30. שקול את הפקודה הבאה:
traceroute -m 7 google.com
הפקודה לעיל תגדיר 7 קפיצות מקסימום עבור החבילה להגיע ליעד. שקול את הפלט שלהלן:
קבלת עזרה
כדי להציג את מדריך העזרה המכיל סיכום של שימוש ואפשרויות נתמכות, בצע את הפקודה הבאה:
traceroute --help
הפקודה לעיל תציג את העזרה. זה יפיק את הפלט באופן הבא:
אנו יכולים גם לגשת לדפי המדריך על ידי ביצוע הפקודה man באופן הבא:
man traceroute
הפקודה לעיל תציג את הדף הידני של פקודת traceroute. זה ייראה כך:
גלול את העמוד כדי לקרוא עוד ולחץ על מקש 'q' כדי לצאת מהדף הידני.