Γενικές έννοιες
Η εντολή Traceroute, γνωστή και ως tracert στα Windows, είναι ένα διαγνωστικό εργαλείο δικτύου που χρησιμοποιείται για τον εντοπισμό της διαδρομής που ακολουθεί ένα πακέτο δεδομένων από μια πηγή στον τελικό προορισμό του στο Διαδίκτυο. Αυτό το εργαλείο είναι πολύ χρήσιμο για τον εντοπισμό πιθανών προβλημάτων δικτύου, όπως υψηλή καθυστέρηση ή χαμένα πακέτα.
Στη διαδικασία εντοπισμού της διαδρομής, η εντολή Traceroute στέλνει μια σειρά από πακέτα δεδομένων μέσω του δικτύου και κάθε πακέτο περιλαμβάνει έναν αριθμό TTL (Time To Live) που ξεκινά με την τιμή 1. Κάθε φορά που ένα πακέτο φθάνει σε έναν κόμβο στο δικτύου, ο κόμβος μειώνει την τιμή TTL κατά 1 πριν προωθήσει το πακέτο. Όταν η τιμή TTL φτάσει στο 0, το πακέτο απορρίπτεται και ο κόμβος στέλνει ένα μήνυμα «υπέρβαση χρόνου» στην πηγή, υποδεικνύοντας ότι το πακέτο δεν μπόρεσε να φτάσει στον προορισμό του και ότι ο επιτρεπόμενος χρόνος έχει ξεπεραστεί.
Η εντολή Traceroute επαναλαμβάνει αυτή τη διαδικασία για κάθε κόμβο στη διαδρομή μέχρι το πακέτο να φτάσει στον τελικό προορισμό του. Στο τέλος της διαδικασίας, η εντολή Traceroute εμφανίζει μια λίστα με τους κόμβους στη διαδρομή, μαζί με τη διεύθυνση IP κάθε κόμβου και τον χρόνο απόκρισης που χρειάστηκε για να φτάσει το πακέτο σε αυτόν τον κόμβο.
Λεπτομερής ακολουθία συσκευασίας
Η λεπτομερής λειτουργία της εντολής Traceroute μπορεί να εκφραστεί ως εξής:
- Η εντολή Traceroute στέλνει ένα πακέτο δεδομένων με αρχική τιμή TTL 1 στον τελικό προορισμό.
- Ο πρώτος κόμβος στη διαδρομή του πακέτου θα λάβει το πακέτο, θα μειώσει την τιμή TTL κατά 1 και θα στείλει μια απάντηση "TTL expired" στην πηγή.
- Η προέλευση θα λάβει την απόκριση «υπέρβαση χρόνου» και θα καταγράψει τη διεύθυνση 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 Tracert είναι ελαφρώς διαφορετική. Στο Linux, η εντολή γράφεται ως "traceroute", ενώ στα Windows γράφεται ως "tracert".
Επιλογές εντολών: Η εντολή Linux Traceroute και η εντολή Windows Tracert έχουν διαφορετικές επιλογές εντολών. Για παράδειγμα, στο Linux, η εντολή Traceroute υποστηρίζει επιλογές όπως -I για να καθορίσετε τη χρήση ICMP αντί για UDP, ενώ στα Windows, η εντολή Tracert υποστηρίζει επιλογές όπως -h για να καθορίσετε τον μέγιστο αριθμό αναπηδήσεων.
Μορφή εξόδου: Η μορφή εξόδου της εντολής Linux Traceroute και της εντολής Windows Tracert είναι επίσης διαφορετική. Στο Linux, η εντολή Traceroute εμφανίζει τη διεύθυνση IP και τον χρόνο απόκρισης κάθε κόμβου στη διαδρομή, ενώ στα Windows, η εντολή Tracert εμφανίζει το όνομα κάθε κόμβου και τον χρόνο απόκρισης.
προηγμένη λειτουργικότητα: Η εντολή Linux Traceroute είναι ικανή να εκτελεί πιο προηγμένες ανιχνεύσεις διαδρομής, όπως αντίστροφη ιχνηλάτηση διαδρομής και ανίχνευση πολλαπλών διαδρομών. Επιπλέον, η εντολή Linux Traceroute είναι πιο προσαρμόσιμη από την εντολή Windows Tracert, επιτρέποντας στον χρήστη να καθορίσει τη θύρα και το μέγεθος του πακέτου.
Συνοπτικά, παρόλο που και οι δύο εντολές είναι παρόμοιες στη βασική τους λειτουργικότητα, υπάρχουν ορισμένες σημαντικές διαφορές στη σύνταξη εντολών, τις επιλογές εντολών, τη μορφή εξόδου και τη σύνθετη λειτουργικότητα.
Παράδειγμα της εντολής στο Linux
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 είναι πιο εύκολο στη χρήση και μπορεί να παρέχει σαφέστερες, πιο ευανάγνωστες πληροφορίες σε ορισμένες περιπτώσεις.
Συνοπτικά, και τα δύο εργαλεία έχουν τα δυνατά και τα αδύνατα σημεία τους και η επιλογή του ενός ή του άλλου θα εξαρτηθεί από τη συγκεκριμένη χρήση και τις προσωπικές προτιμήσεις.