Напішыце брыф па дызайне VPN, які хтосьці сапраўды зможа разгледзець
Дызайн, які можна разгледзець, называе патокі, уладальнікаў і кантракт збою. Шэсць праверак ператвараюць расплывістае пытанне ў такое, на якое можна адказаць рашэннем.
Большасць разглядаў дызайну спыняюцца на першым пытанні, бо запыт апісвае прадукт, а не рашэнне. Брыф, які называе патокі, уладальнікаў і паводзіны пры збоі, можна разгледзець за адну сустрэчу. Брыф са словамі пабудуйце бяспечны VPN нельга разгледзець зусім. Прайдзіце шэсць праверак ніжэй, перш чым нешта адпраўляць, і разгляд ператворыцца ў параўнанне замест спрэчкі.
Па-першае, пытанне гэта рашэнне ці жаданне
Рашэнне мае альтэрнатывы і назіранне, якое дазволіць выбраць паміж імі. Калі вы не можаце назваць, на што паглядзіце, каб выбраць адну, пытанне застаецца жаданнем. Спачатку запішыце альтэрнатывы, нават калі спіс складаецца з двух пунктаў. Затым запішыце кампраміс, які іх раздзяляе.
Жаданне таксама схільнае хаваць аўдыторыю. Скажыце, хто павінен зацвердзіць дызайн, бо той самы брыф чытаецца па-рознаму для ўладальніка сеткі, рэцэнзента па бяспецы і фінансавага зацвярджальніка.
Спыніцеся тут, калі адказ ніхто, бо рашэнне без уладальніка пераробіць той, хто скардзіцца гучней за ўсіх. Гэта праблема кіравання, а не праблема дызайну.
Па-другое, назавіце патокі і адмовы
Пералічыце крыніцу, прызначэнне і праграму для кожнага патоку, які павінен працаваць. Затым пералічыце патокі, якія павінны працягваць не працаваць, бо дызайн, які ціха дазваляе іх, змяніў патрабаванне, не сказаўшы пра гэта. Перакрыццё адрасоў і дасяжнасць уверх па плыні ўваходзяць у гэты спіс як абмежаванні, а не як нечаканасці.
Будзьце дакладныя наконт кірунку. Сайт, якому можна ініцыяваць злучэнні да галоўнага офіса, гэта іншы дызайн, чым той, якому можна іх прымаць, і розніца бачная ў кожным правіле, якое вы напішаце пасля.
Адзначце таксама кліентаў і стан іх кіравання, бо кіраваная прылада з агентам можа рабіць тое, чаго не можа ноўтбук, прынесены з сабой.
Трымайце спіс дастаткова кароткім, каб яго можна было праверыць. Дзесяць патокаў, якія вы можаце праверыць, лепш за сорак, якія не можаце.
Праверка 3: аддзяліце факты ад здагадак
Адзначце кожнае сцвярджэнне, якое вы праверылі, і адзначце тыя, якія не праверылі. Публічная адрасацыя, даступная прапускная здольнасць і доступ адміністратара гэта тры здагадкі, якія часцей за ўсё змяняюць адказ. Калі адна з іх невядомая, скажыце, як дызайн змяняецца, калі яна акажацца любым чынам.
Ілюстрацыйная сетка добрая, пакуль яна пазначаная. Праблема ў гіпатэтычным філіяле, які ціха набывае другі канал уверх або публічны блок адрасоў, якога ў яго ніколі не было.
Праверце здагадку, якую можаце праверыць, да разгляду, бо адзін вымераны факт прыбірае цэлую галіну размовы.
ip route get 10.50.0.10
traceroute -n -m 6 10.50.0.10
nc -vz 10.50.0.10 443Па-чацвёртае, напішыце кантракт збою
Скажыце, што адбываецца, калі тунель не працуе, і будзьце яснымі наконт двух розных абяцанняў. Аднавіць новыя злучэнні пасля перападлучэння лёгка паабяцаць. Захаваць сесіі, якія ўжо былі ўсталяваныя праз збой, значна мацнейшае патрабаванне, і яно абмяжоўвае выбар тэхналогіі.
Затым вызначце запасны варыянт: заблакуйце трафік, накіруйце яго іншым зацверджаным шляхам або зрабіце нешта іншае для кожнай праграмы. Ціхі адкат да прамога шляху гэта рашэнне дызайну, нават калі ніхто яго не запісаў.
Дадайце мэту аднаўлення простай мовай, напрыклад, як доўга сайт можа працаваць у пагоршаным стане і хто абвяшчае інцыдэнт.
Праверка 5 і 6: абярыце шво і запішыце змену
Абярыце адно шво для спрэчкі, бо разгляд, які спрабуе вырашыць усё, не вырашае нічога. Маршрутызацыя, аўтарызацыя і шыфраванне гэта тры розныя швы, і брыф павінен сказаць, пра які з іх пытанне. RFC 4301 тут карыснае напамін, бо ён аддзяляе палітычныя рашэнні, абаронены трафік і асацыяцыі бяспекі, а не разглядае іх як адзін аб'ект.
Затым запішыце, што змянілася пасля рашэння, уключаючы перагледжаныя здагадкі. Менавіта гэты запіс робіць наступны разгляд карацейшым.
git diff --stat design/vpn-brief.md
grep -n 'assumption' design/vpn-brief.md
ip route get 10.50.0.10Брыф, які праходзіць усе шэсць праверак, стварае пытанне з адказам: дызайн адпавядае названым патокам і кантракту збою, або названае абмежаванне перашкаджае гэтаму. Калі абмежаванне пазней зменіцца, запіс паказвае, якое рашэнне трэба перагледзець, а якое можа застацца. Гэта робіць практыкаванне прыдатным для паўторнага выкарыстання, а не аднаразовай спрэчкай.