OpenVPN remote-random: ordine amestecată, un singur tunel
remote-random amestecă ordinea remote-urilor configurate la momentul conectării. Nu rotește ieșirea la fiecare cerere, nu echilibrează pachetele și nu modifică un tunel activ.
Presupunerea este că adăugarea remote-random transformă profilul într-un grup rotativ, astfel încât fiecare conexiune iese de la o adresă diferită. Ce face de fapt directiva este să amestece lista de remote-uri o singură dată, când clientul începe să se conecteze, și apoi să le încerce în acea ordine nouă. Tunelul care se ridică în final se termină tot într-un singur punct final și rămâne acolo pe toată durata sesiunii.
Această diferență contează atât pentru teste, cât și pentru afirmațiile despre confidențialitate.
Ce schimbă opțiunea la momentul conectării
Un profil de client poate conține mai multe linii remote, fiecare cu propriul nume de gazdă și port. Fără directivă, acestea sunt încercate în ordinea fișierului; cu ea, lista este permutată o dată la începutul sesiunii și câștigă prima adresă care răspunde. Restul rămân variante de rezervă pentru această încercare, nu căi paralele. Un profil cu un singur remote nu dă directivei nimic de amestecat, iar acesta este cel mai rapid mod de a vedea dacă poate conta.
Manualul OpenVPN documentează opțiunea ca influențând ordinea încercărilor de conectare, iar acesta este exact domeniul de așteptat în comportament.
O reconectare începe un nou ciclu de selecție, așa că o sesiune ulterioară poate ajunge în altă parte. Tunelul activ nu se mișcă cât timp este ridicat.
Mit: fiecare cerere primește un server nou
Odată stabilit, tunelul transportă tot traficul acelei sesiuni către partenerul ales. Nu există reselecție pentru fiecare cerere, iar directiva nu este un echilibrator de încărcare pentru conexiuni individuale: amestecă candidați, nu distribuie pachete. Fiecare aplicație care partajează acel tunel partajează același partener. Orice raportează un browser despre ieșirea sa aparține sesiunii, nu unei cereri individuale.
Dacă un test arată două ieșiri diferite, căutați două sesiuni separate în loc de o singură opțiune isteață. Această distincție explică și de ce un test în browser și un test de descărcare pot să nu fie de acord atunci când între ele a avut loc o reconectare.
Pentru ce este remote-random-hostname
O a doua directivă cu un nume similar schimbă numele de gazdă folosit pentru rezolvare, nu ordinea listei de remote-uri. Există pentru implementări în care un nume se rezolvă în mai multe adrese prin DNS round-robin și ar trebui folosită doar când serviciul este construit pentru asta. Se schimbă doar pasul de rezolvare; ordinea listei de candidați nu.
Activarea ei pentru că numele par înrudite este o greșeală frecventă. Un certificat wildcard sau o configurație DNS care nu așteaptă numele modificat pur și simplu nu va rezolva sau nu va valida.
Citiți punctul final selectat din jurnal
Notați ce partener a folosit de fapt o sesiune înainte de a trage concluzii. Ieșirea detaliată numește adresa încercată, iar profilul în sine arată câți candidați există. Comparați acel număr cu adresa din jurnal înainte de a da vina pe amestecare.
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
Pentru o comparație de performanță, fixați punctul final comentând celelalte remote-uri, astfel încât variabila testată să fie protocolul sau clientul, nu calea. Pentru o întrebare de confidențialitate, evaluați identitatea serviciului și jurnalizarea acestuia în ansamblu; o primă alegere amestecată nu șterge cookie-uri, nu elimină autentificarea în cont și nu face doi operatori echivalenți.
Păstrați împreună materialul de încredere livrat și setul de puncte finale acceptate. Reamestecarea schimbă doar ordinea în care acel set este încercat.