Provera VPN-a bez interfejsa: jedan tok istovremeno, sa dokazima
Bezglava kutija traži zahtev čiji odgovor možete pročitati. Testirajte svaku porodicu adresa, kontekst i odredište, pa zabeležite šta rezultat nije pokrio.
Na bezglavoj kutiji nema pregledača za otvaranje ni lokota za gledanje, pa provera mora biti zahtev čiji odgovor možete pročitati. To zvuči trivijalno dok ne primetite da se jedan jedini rezultat izlazne adrese koristi za sertifikaciju uređaja koji pokreće desetak servisa, dve porodice adresa i proxy. Pregled ispod gradi po jedan ograničen dokaz istovremeno, u istom kontekstu u kojem radno opterećenje zaista radi.
Odlučite šta test mora da dokaže
Pre nego što bilo šta pokrenete, napišite očekivanje u jednom redu: koji tok, kroz koje sučelje, ka kom odredištu i šta treba primetiti na drugom kraju. Test bez navedenog očekivanja daje broj koji niko ne može protumačiti.
Najkorisnija verzija imenuje odobrenu krajnju tačku koja prijavljuje izvornu adresu koju je videla.
Ta krajnja tačka je jedini deo koji morate organizovati. Sve ostalo je posmatranje na strani klijenta, a posmatranja na strani klijenta idu na zanimljive načine po zlu.
Pokrenite posmatranje u ispravnom kontekstu
Administratorov shell nije okruženje radnog opterećenja. Može nositi drugu proxy varijablu, drugu tabelu usmeravanja u drugom imenskom prostoru ili datoteku okruženja drugog korisnika. Pokrenite test u istom kontekstu hosta, kontejnera, imenskog prostora ili servisa kao ono što proveravate. Inače merite svoj shell.
Na normalnom hostu to znači isti korisnik i ista jedinica. U okruženju kontejnera to znači ulazak u mrežni imenski prostor kontejnera umesto testiranja sa hosta. Na systemd servisu to može značiti prolaznu jedinicu sa istim postavkama.
Zahtev koji sledi ima smisla samo kad ste u ispravnom kontekstu.
Proverite porodice adresa odvojeno
Pitajte za svaku porodicu izričito, jer uspešan IPv4 zahtev uopšte ne vežba putanju IPv6. Selektori --ipv4 i --ipv6 nameću izbor, a razlika između dva rezultata i sama je informacija.
curl --ipv4 https://probe.example/observed-source
curl --ipv6 https://probe.example/observed-sourceNeuspešan IPv6 zahtev nije dokaz delotvorne blokade. Može značiti da krajnja tačka nema IPv6 adresu, da DNS nije vratio ništa upotrebljivo ili da uređaj uopšte nema IPv6 rutu. Pročitajte neuspeh pre nego što iz njega izvučete zaključak. Uspešan IPv6 zahtev kroz tunel jedini je rezultat koji dokazuje da je IPv6 putanja pokrivena.
Zabeležite oba odgovora jedan pored drugog. Jedan sam po sebi je pola činjenice.
Dodajte četiri stvari koje izlazna provera propušta
Izlazna adresa odgovara na jedno pitanje. Još četiri odlučuju da li se tunel ponaša kako je projektovan.
| Check | What it proves | What it does not |
|---|---|---|
| Included and excluded destinations | The split behaves as designed for those flows | Coverage of any other destination |
| Resolver path | Where a fresh lookup actually travelled | Where a cached answer came from |
| Tunnel-down behaviour | The failure policy for a new request | What an already open connection does |
| Reconnect and restart | The requirement survives the lifecycle event | Behaviour under load or partial failure |
Politika odredišta dolazi prva: testirajte tok koji treba biti uključen i onaj koji treba biti isključen, kad dizajn ima podelu. Zatim DNS, gde pregledate stvarnu putanju razrešivača umesto konfigurisane vrednosti, jer keširani odgovor ili ispisana postavka ne govori ništa o tome kamo je otišao novi upit.
Ponašanje pri kvaru zahteva plan i sačuvanu putanju oporavka. Posmatrajte novi zahtev dok je tunel nedostupan i zapamtite da staro otvoreno spajanje nije dokaz o politici kvara. Životni ciklus dolazi poslednji: ponovite posmatranje nakon ponovnog spajanja ili restarta servisa ako ti događaji utiču na zahtev.
Beležite dokaze, ne presudu
Za svaki rezultat zadržite kontekst procesa, odredište, porodicu adresa, vreme i posmatrani izvor. Taj skup je ograničen dokaz o tokovima koje ste vežbali i branjiv je upravo zato što kaže šta je pokrio.
To nije revizija zapisa VPN operatera i nije sertifikat za svaku buduću aplikaciju na uređaju.
Napišite ograničenja uz rezultat. Test koji navodi šta nije pokrio prolazi pregled, a onaj koji tvrdi da je uređaj proveren ne prolazi. Držite curl priručnik uz selektore porodice koje ste koristili i držite tabelu sa četiri reda uz rezultate.