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

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

Τι αλλάζει η επιλογή κατά τη σύνδεση

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

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

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

Μύθος: κάθε αίτημα παίρνει νέο διακομιστή

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

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

Σε τι χρησιμεύει το remote-random-hostname

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

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

Διάβασε το επιλεγμένο τελικό σημείο από το αρχείο καταγραφής

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

grep -c '^remote ' client.ovpn
openvpn --config client.ovpn --verb 4 2>&1 | grep -i -E 'attempting|peer connection'
openvpn --help | grep -A2 remote-random
head -20 client.ovpn

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

Κράτησε το υλικό εμπιστοσύνης που παρέχεται και το υποστηριζόμενο σύνολο τελικών σημείων μαζί. Το ξανανακάτεμα αλλάζει μόνο τη σειρά με την οποία δοκιμάζεται αυτό το σύνολο.

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