Dėžutėje be ekrano nėra naršyklės, kurią atvertumėte, ir spynos, į kurią pažiūrėtumėte, todėl patikra turi būti užklausa, kurios atsakymą galite perskaityti. Tai atrodo savaime suprantama, kol nepastebite, kad vienas vienintelis išėjimo adreso rezultatas naudojamas sertifikuoti įrenginiui, kuriame veikia dešimtys paslaugų, dvi adresų šeimos ir tarpinė serveris. Toliau pateikta apžvalga kiekvieną kartą sukuria vieną ribotą įrodymą tame pačiame kontekste, kuriame darbo krūvis iš tikrųjų veikia.

Nuspręskite, ką testas turi įrodyti

Prieš ką nors paleisdami, lūkestį parašykite vienoje eilutėje: kuris srautas, per kurią sąsają, į kurią paskirties vietą ir ką reikėtų matyti kitame gale. Testas be išsakyto lūkesčio duoda skaičių, kurio niekas negali interpretuoti.

Naudingiausia versija įvardija patvirtintą galinį tašką, kuris praneša matytą šaltinio adresą.

Tas galinis taškas yra vienintelė dalis, kurią turite sutvarkyti. Visa kita yra stebėjimas kliento pusėje, o stebėjimai kliento pusėje nepavyksta įdomiais būdais.

Atlikite stebėjimą tinkamame kontekste

Administratoriaus apvalkalas nėra darbo krūvio aplinka. Jame gali būti kita tarpinio serverio kintamoji, kita maršrutizavimo lentelė kitame vardų sraute arba kito naudotojo aplinkos failas. Testą atlikite tame pačiame pagrindinio kompiuterio, konteinerio, vardų srauto ar paslaugos kontekste kaip ir tikrinamas objektas. Priešingu atveju matuojate savo apvalkalą.

Įprastame pagrindiniame kompiuteryje tai reiškia tą patį naudotoją ir tą patį vienetą. Konteinerių aplinkoje tai reiškia įėjimą į konteinerio tinklo vardų srautą, o ne testavimą iš pagrindinio kompiuterio. systemd paslaugoje tai gali reikšti laikiną vienetą su tomis pačiomis nuostatomis.

Tolesnė užklausa prasminga tik tada, kai esate tinkamame kontekste.

Tikrinkite adresų šeimas atskirai

Kiekvienos šeimos prašykite aiškiai, nes sėkminga IPv4 užklausa visiškai nepratina IPv6 kelio. Parinkikliai --ipv4 ir --ipv6 priverčia pasirinkti, o skirtumas tarp dviejų rezultatų pats savaime yra informacija.

curl --ipv4 https://probe.example/observed-source
curl --ipv6 https://probe.example/observed-source

Nepavykusi IPv6 užklausa nėra veiksmingo blokavimo įrodymas. Tai gali reikšti, kad galinis taškas neturi IPv6 adreso, kad DNS negrąžino nieko tinkamo arba kad įrenginys apskritai neturi IPv6 maršruto. Perskaitykite nesėkmę prieš darydami išvadą. Sėkminga IPv6 užklausa per tunelį yra vienintelis rezultatas, įrodantis, kad IPv6 kelias yra uždengtas.

Užrašykite abu atsakymus greta. Vienas jų atskirai yra pusė fakto.

Pridėkite keturis dalykus, kurių nepastebi išėjimo patikra

Išėjimo adresas atsako į vieną klausimą. Dar keturi lemia, ar tunelis elgiasi taip, kaip suprojektuotas.

CheckWhat it provesWhat it does not
Included and excluded destinationsThe split behaves as designed for those flowsCoverage of any other destination
Resolver pathWhere a fresh lookup actually travelledWhere a cached answer came from
Tunnel-down behaviourThe failure policy for a new requestWhat an already open connection does
Reconnect and restartThe requirement survives the lifecycle eventBehaviour under load or partial failure

Paskirties politika pirmiausia: išbandykite srautą, kuris turėtų būti įtrauktas, ir tą, kuris turėtų būti pašalintas, kai projekte yra skaidymas. Tada DNS, kur tikrinate tikrąjį sprendėjo kelią, o ne sukonfigūruotą reikšmę, nes talpykloje esantis atsakymas ar atspausdinta nuostata nieko nesako apie tai, kur nuėjo nauja užklausa.

Gedimo elgsena reikalauja plano ir išsaugoto atkūrimo kelio. Stebėkite naują užklausą, kol tunelis nepasiekiamas, ir atminkite, kad sena atvira jungtis nėra gedimo politikos įrodymas. Gyvavimo ciklas paskutinis: pakartokite stebėjimą po prisijungimo iš naujo ar paslaugos paleidimo iš naujo, jei tie įvykiai veikia reikalavimą.

Užrašykite įrodymus, o ne nuosprendį

Kiekvienam rezultatui išsaugokite proceso kontekstą, paskirties vietą, adresų šeimą, laiką ir stebėtą šaltinį. Ta aibė yra ribotas įrodymas apie srautus, kuriuos išbandėte, ir ją galima apginti būtent todėl, kad ji pasako, ką apėmė.

Tai nėra VPN operatoriaus įrašų auditas ir ne sertifikatas kiekvienai būsimai įrenginio programai.

Parašykite ribas prie rezultato. Testas, kuris nurodo, ko neapėmė, išlaiko peržiūrą, o tas, kuris teigia, kad įrenginys patikrintas, neišlaiko. Laikykite curl vadovą prie naudotų šeimos parinkiklių ir keturių eilučių lentelę kartu su rezultatais.

Susiję straipsniai