Πώς να δοκιμάσετε το IPv6 μέσα από VPN με δικό σας πόρο
Δεν χρειάζεστε δημόσιο ελεγκτή IPv6 για να αποδείξετε ότι μια διαδρομή λειτουργεί. Χρησιμοποιήστε έναν πόρο που ελέγχετε, καταγράψτε και τα δύο άκρα και δηλώστε τι δεν κάλυψε η δοκιμή.
Μια δημόσια σελίδα ελέγχου IP απαντά σε μία ερώτηση, και συνήθως όχι σε αυτή που θέσατε. Σας λέει τη διεύθυνση εξόδου που είδε η σελίδα· δεν σας λέει αν λειτουργεί η διαδρομή IPv6 μέσα από τη σήραγγα, αν ο κεντρικός υπολογιστής προτίμησε το IPv6 ή υποχώρησε, ή αν μια εξαιρεμένη εφαρμογή πήρε άλλη διαδρομή. Ένας εξουσιοδοτημένος πόρος που ελέγχετε απαντά σωστά στη στενότερη ερώτηση, γιατί βλέπετε και τα δύο άκρα. Ο οδηγός παρακάτω αφορά το να καταλήξετε σε ένα συμπέρασμα που μπορείτε να υπερασπιστείτε, όχι στο να πάρετε ένα πράσινο αποτέλεσμα.
Βήμα 1: δηλώστε ποια διαδρομή IPv6 δοκιμάζετε
Πείτε το με μία πρόταση. Ένα αίτημα στη διεύθυνση IPv6 του ίδιου του διακομιστή σήραγγας δοκιμάζει τη σήραγγα· ένα αίτημα σε κεντρικό υπολογιστή πέρα από την έξοδο δοκιμάζει την έξοδο IPv6 της εξόδου· ένα αίτημα σε ιδιωτική διεύθυνση IPv6 δοκιμάζει εσωτερική διαδρομή.
Πρόκειται για τρεις διαφορετικούς ισχυρισμούς και ένα μόνο επιτυχές αίτημα δεν μπορεί να τους στηρίξει όλους. Διαλέξτε αυτόν που μετράει για την απόφαση μπροστά σας και γράψτε τον πριν εκτελέσετε οτιδήποτε. Αν η ανησυχία είναι αν το IPv6 διαρρέει γύρω από τη σήραγγα, η ερώτηση αφορά την επιλογή διαδρομής από τον κεντρικό υπολογιστή, όχι την προσβασιμότητα της εξόδου. Αν η ανησυχία είναι αν η απομακρυσμένη πλευρά φτάνει μια εσωτερική υπηρεσία, η έξοδος είναι άσχετη.
Βήμα 2: επιβεβαιώστε ότι ο κεντρικός υπολογιστής επιλέγει αυτή τη διαδρομή
ip -6 route get 2001:db8:1::10 εκτυπώνει τη διαδρομή, τη διεύθυνση προέλευσης και τη διεπαφή που θα χρησιμοποιούσε ο πυρήνας, και από αυτό το γεγονός εξαρτάται το υπόλοιπο της δοκιμής.
Το ότι υπάρχει μια διεπαφή δεν είναι το ίδιο με το ότι επιλέγεται. Οι κεντρικοί υπολογιστές διπλής στοίβας έχουν πίνακα προτεραιότητας, και το /etc/gai.conf στο Linux μπορεί να αλλάξει ποια οικογένεια κερδίζει για ένα όνομα που επιλύεται και στις δύο.
Βήμα 3: χρησιμοποιήστε νόμιμο προορισμό και νόμιμο όνομα
Αν δοκιμάζετε HTTPS, χρησιμοποιήστε το όνομα κεντρικού υπολογιστή για το οποίο εκδόθηκε το πιστοποιητικό και κρατήστε την επαλήθευση ενεργή· η μετάβαση σε κυριολεκτική διεύθυνση για να περάσει η δοκιμή απενεργοποιεί ακριβώς τον έλεγχο που αποδεικνύει ότι φτάσατε στον προοριζόμενο υπολογιστή. Μια διαγνωστική υπηρεσία που ελέγχετε, που απαντά σε γνωστό όνομα με έγκυρο πιστοποιητικό, είναι ο καθαρότερος στόχος. Σας δίνει επίσης μια γραμμή αρχείου καταγραφής στην πλευρά του διακομιστή για συσχέτιση, κάτι που ένας ελεγκτής τρίτου μέρους δεν θα σας δώσει ποτέ.
Εκτελέστε το αίτημα σε μορφή που δείχνει τη διεύθυνση που χρησιμοποίησε: curl -6 -sS -o /dev/null -w '%{remote_ip} %{http_code}\n' https://test6.example.net/. Το -6 επιβάλλει την οικογένεια, και έτσι ξεχωρίζετε το IPv6 δεν λειτουργεί από το IPv6 δεν προτιμήθηκε.
Για καθαρό έλεγχο προσβασιμότητας όπου επιτρέπεται το ICMPv6, το ping -6 -c 3 2001:db8:1::10 αρκεί. Αποδεικνύει τη διαδρομή και τίποτα πάνω από αυτήν.
Βήμα 4: συσχετίστε τα δύο άκρα
Όταν έχετε πρόσβαση και στα δύο άκρα, εκτελέστε το tcpdump -ni any ip6 and host 2001:db8:1::10 στον πελάτη και το αντίστοιχο στον πόρο, με χρονικές σημάνσεις, και επιβεβαιώστε ότι η ίδια ροή εμφανίζεται και στα δύο. Αυτό μετατρέπει ένα εύλογο αποτέλεσμα σε τεκμήριο: η οπτική του πελάτη μόνη της δεν μπορεί να ξεχωρίσει μια απάντηση από τον πόρο από μια απάντηση από κάτι ενδιάμεσο. Κρατήστε τη σύλληψη στενή σε έναν προορισμό ώστε η έξοδος να μένει αναγνώσιμη και καμία άσχετη συνεδρία να μη βρεθεί στο αρχείο.
Επαναλάβετε τη δοκιμή μετά από επανασύνδεση αν η ανησυχία είναι αν η πολιτική επιβιώνει από επανεκκίνηση. Κατάσταση δρομολόγησης και τείχους προστασίας που εφαρμόστηκε μία φορά κατά τη σύνδεση μπορεί να διαφέρει από κατάσταση που εφαρμόζεται ξανά, και η διαφορά φαίνεται μόνο στη δεύτερη σύνδεση.
Δοκιμάστε την περίπτωση αποτυχίας ξεχωριστά αν τη χρειάζεστε. Μια σήραγγα που μπλοκάρει το IPv6 όταν πέφτει και μια που το αφήνει να διαρρεύσει είναι διαφορετικοί σχεδιασμοί, και μόνο η μία από τις δύο μπορεί να επιβεβαιωθεί με επιτυχές αίτημα.
Βήμα 5: γράψτε τι δεν απέδειξε η δοκιμή
Το πέμπτο βήμα είναι να γράψετε τι δεν απέδειξε η δοκιμή, και αυτό είναι το κομμάτι που συνήθως χάνεται. Μια επιτυχής δοκιμή σε ιδιωτικό τελικό σημείο δεν αποδεικνύει δημόσια έξοδο IPv6, δεν αποδεικνύει συμπεριφορά DNS και δεν καλύπτει εφαρμογές που εξαιρέσατε από τη σήραγγα. Κάθε ένα από αυτά χρειάζεται δικό του προορισμό και δική του παρατήρηση. Μια σημείωση που λέει ότι το IPv6 λειτουργεί μετά από ένα αίτημα σε έναν υπολογιστή δεν είναι εύρημα· είναι εικασία με χρονική σήμανση.
Το αρχείο που αξίζει να κρατήσετε είναι σύντομο: ο προορισμός, το όνομα, η διεύθυνση προέλευσης που επέλεξε ο κεντρικός υπολογιστής, η παρατηρούμενη απομακρυσμένη διεύθυνση και η ώρα. Το RFC 7359 συζητά πώς να δοκιμάζεται ότι μια σχετική διαδρομή IPv6 είναι πραγματικά αξιοποιήσιμη, και αυτό είναι το πρότυπο στο οποίο προσεγγίζει αυτός ο οδηγός με απλούστερα εργαλεία. Αν το συμπέρασμα χρειάζεται δημόσιο ελεγκτή για να είναι αληθινό, η δοκιμή δεν ήταν αρκετά συγκεκριμένη.