Cum să înregistrați și să verificați adresa de ieșire VPN folosită
Aplicațiile client arată un nume de locație, nu adresa pe care a ieșit traficul. Capturați IP-ul de ieșire la conectare și comparați-l cu o referință directă.
Întrebați un client VPN de desktop ce servere ați folosit, iar răspunsul onest este de obicei un nume de locație. Acel nume este punctul de intrare pe care l-ați format, iar adresa pe care a ieșit traficul poate fi o cu totul altă mașină. Nimic din aplicație nu este proiectat să păstreze al doilea număr, așa că înregistrarea trebuie construită în momentul utilizării. Există două abordări și doar una dintre ele supraviețuiește unui caz de asistență.
Două înregistrări, doar una dintre ele există
Vederea clientului este cel mult o listă de locații alese cu marcaje de timp. Este o decizie de proiectare, nu o scăpare: adresele sunt detalii operaționale, se rotesc între alocări, iar expunerea corespondenței face mai dificile atât asistența, cât și tratarea abuzurilor. Furnizorii pun instanțe în cloud în fața rețelelor tocmai pentru ca punctul final să se poată muta fără să anunțe pe nimeni. Ce vă arată aplicația este alegerea pe care ați făcut-o, nu ruta pe care a urmat-o.
Înregistrarea pe care o puteți construi este un fișier local cu o adresă publică și un marcaj de timp UTC pe linie. Este mai mică, mai urâtă și mult mai utilă, pentru că descrie exact ceea ce poate vedea și un observator din exterior.
Opțiunea A: capturați singur adresa de ieșire
Un serviciu de ecou returnează adresa sursă de la care a venit cererea, care este prin definiție adresa de ieșire. Rulați captura după ce tunelul raportează conectat, pentru că un client care spune conectat înainte ca rutele și DNS-ul să se stabilizeze va înregistra adresa dinaintea tunelului și va otrăvi jurnalul chiar de la prima linie.
#!/bin/sh
umask 077
log="$HOME/vpn-exit.log"
printf '%s %s\n' "$(date -u +%Y-%m-%dT%H:%M:%SZ)" "$(curl -fsS https://api.ipify.org)" >> "$log"
Două detalii fac acel fragment utilizabil și nu decorativ. Marcajul de timp și adresa împart o singură linie, așa că o analiză ulterioară nu trebuie să împerecheze înregistrări, iar umask 077 ține fișierul privat din momentul creării. Rulați-l o dată pe conexiune în loc de o dată pe pornire și păstrați un fișier pe dispozitiv.
Jurnalul notează când ați folosit un tunel și din ce rețea ați apărut, ceea ce este mai aproape de un istoric de navigare decât de un contor. Alegeți o perioadă de păstrare pe care o puteți susține, țineți fișierul în afara folderelor de sincronizare partajate și curățați-l în mod deliberat.
Opțiunea B: cereți furnizorului un istoric
Unii furnizori țin jurnale de conexiune și vor răspunde la o întrebare de asistență cu un marcaj de timp și un nume de server. Acea înregistrare descrie infrastructura lor, nu traficul dumneavoastră, și valorează doar cât fereastra lor de păstrare și dorința lor de a căuta. Descrie, de asemenea, o sesiune, nu o cerere. Fereastra este de obicei scurtă și se măsoară din partea furnizorului tunelului.
Furnizorii care anunță că nu țin jurnale nu pot produce asta la cerere, iar o listă de locații recente din partea clientului nu este același lucru. A cere unui furnizor fără jurnale o adresă de ieșire se termină de obicei cu o explicație a motivului pentru care datele nu există.
Ce poate dovedi fiecare înregistrare într-un caz de asistență
Cele două înregistrări răspund la întrebări diferite, iar în tabel comparația încetează să mai fie academică.
| Question | Your local log | Provider record |
|---|---|---|
| Which address did the traffic leave from? | Yes, for the moment it was captured | Usually not disclosed |
| Was the tunnel in use at 14:20? | Yes, if the capture ran | Yes, within the retention window |
| Why did a location get slower? | Yes, by comparing addresses over time | Sometimes, as an infrastructure note |
| Who sent this specific request? | No | No |
Doar prima coloană este sub controlul dumneavoastră. O înregistrare a furnizorului poate confirma că un cont a fost conectat la un anumit moment, dar nu poate confirma ce cereri au folosit tunelul și nu va numi o adresă pe care furnizorul o tratează ca detaliu operațional. Niciuna dintre înregistrări nu identifică o persoană, pentru că o adresă de ieșire partajată poate purta mulți clienți în același minut.
Comparați ambele cu o referință înainte să aveți încredere în vreuna
O adresă singură nu dovedește nimic. Capturați adresa directă înainte de conectare, adresa tunelată după, și comparați-le. Valorile identice înseamnă că tunelul nu transportă acea cerere, fie din cauza unui tunel divizat, fie a unui proxy preponderent, fie a unui client care a revenit la o cale directă.
curl -fsS https://api.ipify.org; echo
curl -fsS https://api64.ipify.org; echo
dig +short TXT o-o.myaddr.l.google.com @1.1.1.1
Repetați comparația pentru DNS și pentru IPv6, pentru că un ecou de adresă dovedește calea unei singure cereri HTTP și nimic despre ce resolver a răspuns. Un dispozitiv care pierde pe una dintre ele poate părea perfect sănătos pe cealaltă.