Γνωρίζετε την εντολή traceroute ή tracert στα Windows; Είναι ένα εργαλείο που σας επιτρέπει να δείτε τη διαδρομή που λαμβάνει η σύνδεσή σας όταν κατευθυνθείτε προς έναν συγκεκριμένο προορισμό. Ενώ είναι πολύ ενδιαφέρον να βλέπουμε πού πηγαίνουν τα πακέτα σας όταν συνδέεστε σε έναν ιστότοπο, η κύρια χρήση του είναι να δείτε πού χάνονται τα πακέτα διαδρομών.

Τι είναι το Traceroute;

Προτού να πηδήξουμε πώς μπορεί να χρησιμοποιηθεί το traceroute, ας μιλήσουμε για το τι αρχίζει το traceroute. Κατά τον εντοπισμό μιας διαδρομής, παρακολουθείτε τη διαδρομή που λαμβάνει ένα πακέτο και βλέπετε πού καταλήγει. Αν έχετε παραγγείλει ένα πακέτο με την παρακολούθηση διαθέσιμη, πιθανότατα έχετε παρακολουθήσει (με ενθουσιασμό!) Το μονοπάτι που πήρε το πακέτο στην πόρτα σας. Το Traceroute είναι μια παρόμοια διαδικασία, εκτός από το ότι δεν μπορούμε να βάλουμε μια συσκευή παρακολούθησης σε ένα πακέτο δεδομένων. Πρέπει να πάρουμε λίγο πιο εφευρετικό να παρακολουθήσουμε τα πακέτα δεδομένων.

Εάν ένα πακέτο λήγει ενώ κρατείται από δρομολογητή, ο δρομολογητής καλεί πίσω από το σημείο προέλευσης του πακέτου για να πει ότι το πακέτο έληξε. Παρόλο που δεν μπορούμε να παρακολουθήσουμε ένα πακέτο να πηγαίνει γύρω από ένα δίκτυο απευθείας σαν εντοπισμένο πακέτο, μπορούμε να στείλουμε πακέτα που λήγουν σε κάθε δρομολογητή κατά την άφιξή του. Οι δρομολογητές στέλνουν ένα μήνυμα σφάλματος και μπορούμε να αναλύσουμε τις τοποθεσίες που αναφέρουν ένα νεκρό πακέτο. Τότε μπορούμε να χρησιμοποιήσουμε αυτό για να υπολογίσουμε πού πηγαίνει το πακέτο.

Για να γίνει αυτό, χρησιμοποιούμε μια ιδιότητα των πακέτων που ονομάζεται TTL. Το TTL σημαίνει "Time To Live" και υπαγορεύει πόσους δρομολογητές μπορεί να φτάσει ένα πακέτο προτού λήξει. Όταν ένας δρομολογητής χειρίζεται ένα πακέτο, μειώνει το TTL κατά ένα πριν το μεταβιβάσει. Αν το TTL φτάσει στο 0, το πακέτο λήγει και ο δρομολογητής αναφέρει τη λήξη του. Κατά τη διάρκεια ενός traceroute, αποστέλλεται ένα πακέτο με TTL 1. Αυτό γίνεται από τον πρώτο δρομολογητή και λήγει αμέσως. Ο δρομολογητής στέλνει πίσω το λάθος του και ο traceroute καταγράφει τη θέση του. Το Traceroute στέλνει στη συνέχεια ένα πακέτο TTL 2 το οποίο το κάνει να περάσει από τον πρώτο δρομολογητή αλλά λήγει στο δεύτερο. Στη συνέχεια αποστέλλεται ένα πακέτο με TTL των 3 και ούτω καθεξής.

Ένα παράδειγμα του Traceroute σε δράση

Ας ρίξουμε μια ματιά σε ένα παράδειγμα του τι συμβαίνει κατά τη διάρκεια ενός traceroute.

Ο υπολογιστής στέλνει πακέτο στο TTL 1 -> Ο δρομολογητής A μειώνεται κατά 1, στο 0 -> TTL είναι 0, έτσι το πακέτο πεθαίνει -> Ο δρομολογητής Α αναφέρει τη θέση του

Ο δρομολογητής B στέλνει πακέτο στο TTL 2 -> Ο δρομολογητής A μειώνεται κατά 1, στο 1 -> Οι αποστολές στον δρομολογητή B -> Ο δρομολογητής Β μειώνεται κατά 1, στο 0 -> TTL είναι 0, έτσι το πακέτο πεθαίνει -> Ο δρομολογητής B αναφέρει τη θέση του

Ο δρομολογητής στέλνει πακέτο στο TTL 3 -> Ο δρομολογητής A μειώνεται κατά 1, 2 -> Στέλνει στον δρομολογητή B -> Ο δρομολογητής B μειώνεται κατά 1, στο 1 -> Αποστολή στο διακομιστή -> Ο διακομιστής στέλνει την επιβεβαίωση της σύνδεσης .

Μπορείτε να διαπιστώσετε ότι ήδη δημιουργούμε μια ιδέα για το πού πάει το πακέτο μας από αυτό. Μόλις το traceroute λάβει ένα σφάλμα από τον προορισμό, τότε σταματά το traceroute και μπορείτε να αναλύσετε πού πήγε το πακέτο. Πολύ χρήσιμο!

Πώς να εκτελέσετε ένα Traceroute

Λοιπόν, ας πάμε μπροστά και κοιτάξουμε πώς να κάνουμε ένα traceroute. Αρχικά, ανασηκώστε το παράθυρο εντολών. Αυτό μπορεί να γίνει κάνοντας κλικ στο κουμπί Έναρξη, μετά πληκτρολογώντας cmd στην αναζήτηση και στη συνέχεια πατώντας το Enter. Μπορείτε επίσης να εμφανίσετε το παράθυρο εντολών πατώντας το Windows Key + R, πληκτρολογώντας το cmd στο νέο παράθυρο.

Εδώ, πληκτρολογήστε tracert έπειτα έναν προορισμό, είτε ως URL είτε ως IP (www.twitter.com ή 104.244.42.1). Πατήστε Enter. Το traceroute θα ξεκινήσει την καταγραφή της σύνδεσης προς τον προορισμό που ορίσατε. Καθίστε και παρακολουθήστε το πάει!

Πώς να χρησιμοποιήσετε το Traceroute για να διαγνώσετε προβλήματα

Τώρα που ξέρουμε τι κάνει το traceroute, μπορούμε να το χρησιμοποιήσουμε για να ανακαλύψουμε πού απομακρύνονται οι συνδέσεις. Φανταστείτε εάν στείλαμε πακέτα με αυξανόμενο TTL, αλλά όταν φτάσουμε σε ένα συγκεκριμένο επίπεδο TTL, δεν λαμβάνουμε καθόλου μηνύματα σφάλματος από τον επόμενο δρομολογητή. Αυτό πιθανόν να σημαίνει ότι ο επόμενος δρομολογητής δεν λαμβάνει το πακέτο καθόλου. Ο υπολογιστής θα περιμένει τον δρομολογητή να μιλήσει σε αυτόν. αν αποτύχει να λάβει ένα σφάλμα, θα αναφέρει με μια " Request Timed Out". "

Πώς είναι αυτό το χρήσιμο;

Όταν μια σύνδεση πεθάνει, μπορείτε να χρησιμοποιήσετε το traceroute για να δείτε πού θα πεθάνει κατά μήκος της διαδρομής. Εάν τα πακέτα δεν το βγάζουν από το δρομολογητή σας πριν από το χρονοδιάγραμμα, κάτι συμβαίνει με το δρομολογητή σας. Εάν το πακέτο βγει με επιτυχία από τον δρομολογητή σας, αλλά πεθαίνει κάπου στην ανταλλαγή, είναι πιθανό να είναι ένα πρόβλημα ISP.

Όταν αντιμετωπίζετε προβλήματα με τη σύνδεση με έναν ιστότοπο, μπορείτε να πείτε στο traceroute να ελέγξει τη σύνδεση. Εάν λαμβάνετε μηδενικά σφάλματα από το δρομολογητή ή την ανταλλαγή, αλλά το χρονικό όριο συμβαίνει αργότερα κατά μήκος της αλυσίδας, πιθανώς δεν είναι σφάλμα του δρομολογητή ή του ISP σας.

Ένα πράγμα που πρέπει να προσέξετε όταν χρησιμοποιείτε το traceroute - τα πακέτα δεν παίρνουν πάντα την ίδια διαδρομή κάθε φορά που πηγαίνουν σε έναν συγκεκριμένο ιστότοπο. Βεβαιωθείτε ότι έχετε αυτό κατά νου κατά την εκτέλεση ενός traceroute και προσπαθώντας να αντλήσετε αποδεικτικά στοιχεία από αυτό.

συμπέρασμα

Ενώ ένα διασκεδαστικό εργαλείο για να δείτε πού πηγαίνουν τα πακέτα σας, το traceroute μπορεί επίσης να χρησιμοποιηθεί για να δει πού φταίνε. Τώρα που ξέρετε πώς λειτουργεί το traceroute, μπορείτε να το χρησιμοποιήσετε για να διαγνώσετε καλύτερα πού κατά μήκος της σύνδεσης τα πακέτα χάνονται και πού μπορεί να βρίσκεται το πρόβλημα. Καλή τύχη με τα διαγνωστικά σας!