Ο πελάτης λέει ότι πιστοποιήθηκε, η κατάσταση του IKE φαίνεται υγιής και οι μετρητές πακέτων μένουν στο μηδέν. Αυτός ο συνδυασμός δεν είναι αντίφαση: Το IKEv2 κρατά χωριστά τη σχέση ελέγχου και τη σχέση δεδομένων, και η πρώτη μπορεί να πετύχει ενώ η δεύτερη δεν σηκώνεται ποτέ. Το γονικό επίπεδο χειρίζεται τη διαπραγμάτευση, το θυγατρικό χειρίζεται την κίνηση. Διάβασε τα δύο επίπεδα χωριστά πριν χαρακτηρίσεις τη σήραγγα πεσμένη.

Τι κάνουν τα δύο SA

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

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

Διάβασε τις καταχωρίσεις θυγατρικών, όχι την ετικέτα σύνδεσης

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

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

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

Όταν δεν υπάρχει θυγατρικό

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

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

Όταν το θυγατρικό υπάρχει αλλά οι μετρητές μένουν στο μηδέν

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

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

Ονόμασε το επίπεδο στην αναφορά

Ανάφερε τη βλάβη ως τρία πεδία και όχι ως ετυμηγορία: το επίπεδο που απέτυχε, την ανταλλαγή ή το θυγατρικό που εξέτασες, και τα στοιχεία που έχεις. Το επίπεδο είναι ένα από τρία: το γονικό δεν στήθηκε ποτέ, η διαπραγμάτευση του θυγατρικού απορρίφθηκε, ή υπάρχει θυγατρικό και η κίνηση δεν το φτάνει. Τα στοιχεία είναι το αναγνωριστικό του θυγατρικού με τους επιλογείς και τους μετρητές του, ή η απορριφθείσα πρόταση όπως παρατίθεται από τα δύο αρχεία. Όποιος το διαβάσει μπορεί να πάει κατευθείαν στην ανταλλαγή που μετράει αντί να ρωτήσει ποιο VPN εννοείς.

Η τεκμηρίωση του strongSwan για το IKEv2 δείχνει πώς εμφανίζονται αυτά τα επίπεδα στην έξοδο κατάστασης. Επισύναψε την έξοδο του θυγατρικού που δοκίμασες, όχι μόνο τη σύνοψη του γονικού.

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