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

Τρία διαφορετικά πράγματα που ονομάζονται συνδεδεμένο

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

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

Στείλτε ένα αβλαβές αίτημα σε έναν προορισμό που πραγματικά χρειάζεστε πριν αγγίξετε τον δαίμονα, και κρατήστε το απαιτούμενο μπλοκ άμεσης κίνησης στη θέση του όσο εργάζεστε. Η επανεκκίνηση σβήνει τη σειρά των γεγονότων και μετά τα αναδημιουργεί αρκετά κοντά ώστε να κρύψει την αιτία, γι' αυτό το ίδιο δελτίο επιστρέφει μια εβδομάδα αργότερα χωρίς τίποτα νέο. Ένα αίτημα, μια ανάγνωση μετρητή και το έναυσμα που προκάλεσε τη βλάβη είναι η ελάχιστη απόδειξη.

Ποιος μετρητής αποδεικνύει ότι τα πακέτα κινήθηκαν

Στο IPsec η συσχέτιση IKE και η συσχέτιση CHILD είναι ξεχωριστά αντικείμενα, και μόνο το child φέρει τους μετρητές που απαντούν σε αυτή την ερώτηση. Καταγράψτε το child, παρατηρήστε αν τα πακέτα αυξάνονται και προς τις δύο κατευθύνσεις, και συγκρίνετε το με το τι προσπαθεί να κάνει η εφαρμογή. Μια εγκατεστημένη συσχέτιση στο μηδέν είναι διαφορετικό εύρημα από μια που αυξάνεται ενώ η εφαρμογή ακόμη αποτυγχάνει· η πρώτη σημαίνει ότι η κίνηση δεν επιλέγεται, η δεύτερη ότι κινείται και το σφάλμα είναι πιο πέρα. Διαβάστε τους μετρητές δύο φορές, μερικά δευτερόλεπτα απόσταση, γιατί ένα δείγμα δεν μπορεί να δείξει τάση.

swanctl --list-sas
ip xfrm state list
ip -s link show dev tun0

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

Πού βρίσκεται η βλάβη αφού κινηθούν οι μετρητές

Μια πύλη που απαντά στη δική της διεύθυνση διαχείρισης αποδεικνύει ότι η πύλη εκτελείται, όχι ότι κάτι πίσω της εξυπηρετεί το αίτημά σας, οπότε δοκιμάστε τη μακρινή πλευρά και όχι το κουτί στη μέση. Η επίλυση ονομάτων κρύβει τις βλάβες καλύτερα από όλα, γιατί ένας resolver που δεν φτάνεται μέσω του τούνελ λήγει με τρόπο που μοιάζει ίδιος με νεκρή σύνδεση. Δύο αναζητήσεις χωρίζουν αυτές τις περιπτώσεις, και οι δύο είναι φθηνές. Ρωτήστε πρώτα τον resolver που σπρώχνει το τούνελ, μετά ρωτήστε έναν δημόσιο resolver για το ίδιο όνομα.

dig +short host.example
dig +short @10.20.0.1 host.example
ping -c 2 10.20.0.25

Ένα όνομα που επιλύεται μέσω του δημόσιου resolver αλλά όχι μέσω του resolver του τούνελ σημαίνει ότι η διαδρομή DNS είναι σπασμένη, ενώ ένα όνομα που επιλύεται μέσω και των δύο και ακόμη λήγει στο πρόγραμμα περιήγησης δείχνει στη διαδρομή επιστροφής ή στην υπηρεσία. Αν το ping με διεύθυνση πετύχει και η εφαρμογή ακόμη αρνείται, το δίκτυο παρέδωσε το αίτημα και η υπηρεσία το απέρριψε, που είναι ένα εντελώς μεταγενέστερο στάδιο.

Καταγράψτε το έναυσμα και μετά αλλάξτε ένα πράγμα

Καταγράψτε τι προηγήθηκε της βλάβης: μια περίοδο αδράνειας, μια αλλαγή δικτύου, μια ανανέωση κλειδιού, ένα φορητό που επανήλθε ή ένα σύστημα που αποκαταστάθηκε. Αυτά παράγουν διαφορετικούς μηχανισμούς, και μόνο το αποκατεστημένο σύστημα συνήθως επιδιορθώνει τον εαυτό του, που είναι ακριβώς η περίπτωση που δεν σας διδάσκει τίποτα. Η επανεκκίνηση αφαιρεί τη σειρά των γεγονότων και μετά αναδημιουργεί συνθήκες αρκετά κοντά ώστε να κρύψει την αιτία. Γράψτε το έναυσμα όσο είναι ακόμη αναπαραγώγιμο.

Στη συνέχεια κάντε μια τεκμηριωμένη διόρθωση και επαναλάβετε το αρχικό αίτημα μαζί με το έναυσμα που προκάλεσε τη βλάβη. Η αδράνεια είναι το ευκολότερο έναυσμα για αναπαραγωγή, άρα είναι η ταχύτερη επιβεβαίωση ότι η διόρθωση αντιμετώπισε τον μηχανισμό και όχι το σύμπτωμα.

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

Σχετικά άρθρα