Odjemalec se poveže z enim od več strežnikov OpenVPN in nato potrebuje majhno storitev, ki teče na tem vozlišču: stran stanja, končno točko meritev, agenta za varnostne kopije. Če vsako vozlišče dobi isti zasebni naslov storitve, ostane konfiguracija odjemalca enaka ne glede na to, na kateri strežnik je pristal. Ta priročnost je resnična in prav tako zlahka jo je prebrati: skupni naslov pove, do katerega vozlišča ste prišli, ne pa, da je kaj odveč.

Zakaj isti naslov na vsakem vozlišču deluje

Vsako vozlišče ima naslov lokalno in odgovarja zanj, zato odjemalec, ki ga doseže skozi svoj trenutni tunel, dobi storitev na drugem koncu tega tunela. Med vozlišči se nič ne usklajuje in noben promet ne prehaja z enega vozlišča na drugega.

Naslov je lokalna oznaka, ponovljena in ne replicirana. Vsako vozlišče odgovarja le zase in nobeno od njih ne posreduje prometa za naslov v imenu drugega vozlišča. To ohranja eno konfiguracijo odjemalca veljavno, medtem ko strežniki ostajajo neodvisni. To je tudi razlog, zakaj zasnova ne potrebuje nobenega usklajevanja med vozlišči.

Zato ista konfiguracija deluje na vsakem strežniku brez usmerjevalnega protokola med njimi. To je tudi razlog, zakaj zasnova ne pove ničesar o zdravju: naslov obstaja na bolnem vozlišču natanko tako kot na zdravem, ker je vezan na gostitelja in ne na to, da je storitev uporabna.

Dodelite ga loopbacku, ne tunelu

Namestitev naslova na vmesnik loopback ga loči od življenjske dobe katere koli tunelske naprave, zato ga ponovna povezava ali ponovno nalaganje konfiguracije ne odstrani. Naslov obstaja, dokler obstaja gostitelj.

Naslov na lo ni filter. Storitev mora še vedno poslušati na njem in požarni zid gostitelja še vedno ocenjuje dejansko dohodno pot, ki pride na vmesnik tunela. Kdor domneva, da loopback pomeni samo lokalno, na koncu bodisi blokira zakonite odjemalce bodisi izpostavi nekaj, česar ni nameraval.

Dodelitev naredite trajno prek omrežne konfiguracije gostitelja, namesto da bi jo znova dodajali iz kljuke. Namestitvena kljuka se ne sproži na vozlišču, kjer se ni dvignil noben tunel, in naslov storitve ne bi smel biti odvisen od dejavnosti tunela. Vstavite naslov v konfiguracijo vmesnika, ki jo upravlja vaša distribucija, nato enkrat znova zaženite in preverite. Ponovni zagon je edini test, ki preživi poznejšo spremembo konfiguracije.

ip address show dev lo | grep 10.250.0.1
ip address add 10.250.0.1/32 dev lo

Potisnite eno pot in mislite en cilj

Odjemalec potrebuje pot gostitelja za naslov, ki jo ponuja strežnik, s katerim se poveže. Ker vsak strežnik ponuja isti cilj, se profil ne spremeni, ko se odjemalec premakne.

Preverite, kaj je odjemalec namestil, preden obtožite storitev.

ip route get 10.250.0.1

Za storitev HTTP dajte naslovu ime in potrdilo za to ime. Skupni IP ni identiteta in ne odpravi preverjanja TLS, niti ne opravičuje kopiranja enega zasebnega ključa na vsako vozlišče. Ime, ki se razreši na skupni naslov, ohrani zgodbo o potrdilu običajno in vam omogoči, da obdržite identiteto na vozlišče, če jo potrebujete.

Česa skupni naslov ne more

Ne zagotavlja preklopa ob okvari. Če izbrano vozlišče umre, naslov umre z njim in odjemalec se mora znova povezati drugje.

Ne preseli žive seje TCP, ker se nova povezava konča na drugem gostitelju, ki ne ve ničesar o stari.

Ne izbere zdravega vozlišča, ne uravnava obremenitve in ne sinhronizira podatkov med vozlišči. Vsako od tega je ločen mehanizem z lastnimi načini odpovedi in pretvarjanje, da trik z naslavljanjem to pokriva, je pot, po kateri preprosta zasnova pridobi nezaslužen sloves odpornosti. Če sta dva tunela aktivna hkrati, pomen cilja postane dvoumen, zato naj bo predpostavka o enem aktivnem tunelu izrecna.

Ohranite identiteto storitve ob imenu

Zapišite, kaj naslov pomeni: doseže storitev na vozlišču, s katerim je odjemalec trenutno povezan. Ta en stavek prepreči večino nesporazuma, ki ga ta vzorec privlači.

Nato dokumentirajte dele skupaj: naslov, vmesnik, na katerem živi, pot, ki jo strežnik potisne, ter ime in potrdilo, ki jih storitev predstavi. Štiri majhna dejstva, ki jih bo prihodnji bralec lahko preveril, v vrstnem redu, v katerem jih bo preverjal.

Če je zahteva stabilen cilj za storitev, lokalno na vozlišču, vzorec ustreza in skoraj nič ne stane.

Če je zahteva razpoložljivost, se povzpnite raven višje: uravnavalnik obremenitve, ime storitve s preverjanji zdravja ali orkestracijski sistem, ki že zna zamenjati vozlišče.

Če se odločite zgodaj, skupni naslov ostane to, kar je, priročna oznaka, in ne komponenta, od katere se tiho pričakuje delo, za katero ni bila nikoli zasnovana.

Sorodni članki