Kirjutage VPN-i disainiülevaade, mida keegi saab tõesti üle vaadata
Ülevaatatav disain nimetab vood, omanikud ja tõrkekokkuleppe. Kuus kontrolli muudavad ebamäärase küsimuse selliseks, millele saab otsusega vastata.
Enamik disainiülevaatusi takerdub esimese küsimuse juures, sest taotlus kirjeldab toodet, mitte otsust. Ülevaade, mis nimetab vood, omanikud ja tõrke käitumise, on võimalik ära teha ühe koosolekuga. Ülevaadet sõnadega ehitage turvaline VPN ei ole üldse võimalik läbi vaadata. Käige enne millegi saatmist läbi allolevad kuus kontrolli, ja ülevaatus muutub vaidluse asemel võrdluseks.
Esiteks, kas küsimus on otsus või soov
Otsusel on alternatiivid ja vaatlus, mis valiks nende vahel. Kui te ei suuda nimetada, mida te vaataksite, et ühte valida, on küsimus endiselt soov. Kirjutage alternatiivid enne üles, isegi kui nimekirjas on vaid kaks punkti. Seejärel kirjutage kompromiss, mis neid eristab.
Soov kipub ka publikut varjama. Öelge, kes peab disaini kinnitama, sest sama ülevaadet loevad erinevalt võrguomanik, turvakontrollija ja rahanduskinnitaja.
Lõpetage siin, kui vastus on mitte keegi, sest omanikuta otsuse teeb uuesti see, kes kõige valjemini kaebab. See on juhtimise, mitte disaini probleem.
Teiseks, nimetage vood ja keeldumised
Loetlege allikas, sihtkoht ja rakendus iga voo jaoks, mis peab töötama. Seejärel loetlege vood, mis peavad edasi ebaõnnestuma, sest disain, mis lubab neid vaikselt, on nõuet muutnud seda ütlemata. Aadresside kattumine ja ülesvoolu kättesaadavus kuuluvad sellesse nimekirja piirangutena, mitte üllatustena.
Olge suuna osas täpne. Koht, mis tohib peakorterisse ühendusi algatada, on teistsugune disain kui koht, mis tohib neid vastu võtta, ja erinevus ilmneb igas reeglis, mille te hiljem kirjutate.
Pange tähele ka kliente ja nende haldusseisundit, sest agendiga hallatav seade suudab asju, mida kaasa toodud sülearvuti ei suuda.
Hoidke nimekiri testimiseks piisavalt lühike. Kümme voogu, mida saate kontrollida, on paremad kui nelikümmend, mida ei saa.
Kontroll 3: eraldage faktid oletustest
Märkige iga väide, mille olete kontrollinud, ja märkige need, mida pole. Avalik adresseerimine, saadaolev läbilaskevõime ja administraatori juurdepääs on kolm oletust, mis kõige sagedamini vastust muudavad. Kui üks neist on teadmata, öelge, kuidas disain muutub, kui see kummagi variandi puhul selgub.
Illustreeriv võrk on sobiv, kui see on märgistatud. Probleem on hüpoteetiline haru, mis omandab vaikselt teise ülesvoolu lingi või avaliku aadressiploki, mida tal kunagi polnud.
Kontrollige oletust, mida saate kontrollida, enne ülevaatust, sest üks mõõdetud fakt eemaldab terve arutelu haru.
ip route get 10.50.0.10
traceroute -n -m 6 10.50.0.10
nc -vz 10.50.0.10 443Neljandaks, kirjutage tõrkekokkulepe
Öelge, mis juhtub, kui tunnel on maas, ja olge kahe erineva lubaduse osas selge. Uute ühenduste taastamine pärast uuesti ühendamist on lihtne lubada. Juba loodud sessioonide säilitamine üle tõrke on palju tugevam nõue ja see piirab tehnoloogiavalikut.
Seejärel otsustage varuplaan: blokeerige liiklus, suunake see teise kinnitatud teed pidi või tehke iga rakenduse jaoks midagi muud. Vaikne tagasipöördumine otse teele on disainiotsus ka siis, kui keegi pole seda kirja pannud.
Lisage taastamise eesmärk lihtsas keeles, näiteks kui kaua tohib koht halvenenud olekus töötada ja kes juhtumi välja kuulutab.
Kontroll 5 ja 6: valige õmblus ja registreerige muudatus
Valige üks õmblus, mille üle vaielda, sest ülevaatus, mis püüab kõike lahendada, ei lahenda midagi. Marsruutimine, autoriseerimine ja krüpteerimine on kolm erinevat õmblust, ja ülevaade peaks ütlema, millest küsimus on. RFC 4301 on siin kasulik meeldetuletus, sest see eraldab poliitikaotsused, kaitstud liikluse ja turvaassotsiatsioonid, selle asemel et kohelda neid ühe objektina.
Seejärel registreerige, mis pärast otsust muutus, sealhulgas ülevaatatud oletused. Just see register teeb järgmise ülevaatuse lühemaks.
git diff --stat design/vpn-brief.md
grep -n 'assumption' design/vpn-brief.md
ip route get 10.50.0.10Ülevaade, mis läbib kõik kuus kontrolli, annab küsimuse koos vastusega: disain vastab nimetatud voogudele ja tõrkekokkuleppele, või nimetatud piirang takistab seda. Kui piirang hiljem muutub, näitab register, millist otsust tuleb uuesti vaadata ja milline võib jääda. See teeb harjutuse korduvkasutatavaks, mitte ühekordseks vaidluseks.