Znova zaženite aplikacijo, vprašajte upravitelja za stanje povezave in ta poroča prekinjeno, medtem ko sistemski meni jasno kaže delujoč tunel. Ali klic shranjevanja vrne napako, ki ničesar ne pojasni, ali je skupna skrivnost razglašena za manjkajočo nekaj sekund po dodelitvi. Trije simptomi, en mehanizem: upravitelj je pogled na sistemsko shrambo, pogled pa se bere prazen, dokler ga nekdo ne naloži.

Preden začnete karkoli od tega razhroščevati, ugotovite, kateri API naj bi uporabljali. Sistemski tunel IPsec ali IKEv2 ustreza vgrajenemu upravitelju; protokol, ki ga sistem ne izvaja, potrebuje ponudnika tunela z lastno obdelavo paketov, in nobena kombinacija polj tega ne spremeni.

Upravitelj je pogled na shrambo

Ustvarite ali pridobite upravitelja, prosite ga, naj naloži svoje nastavitve, in pustite obdelovalcu dokončanja, da se konča, preden berete stanje ali spreminjate nastavitve protokola. Ko je naloga našteti shranjene konfiguracije, uporabite klic vseh različic, namesto da bi eno instanco uporabljali za dva namena. Preden nalaganje prispe, je stanje običajno neveljavno, in prav preslikava neveljavnega v izklopljeno je napaka, zaradi katere je aplikacija videti napačna šele po ponovnem zagonu.

Pisanje sledi istemu vrstnemu redu. Shranjevanje na upravitelju, ki ni nikoli ničesar naložil, lahko spodleti brez koristnega sporočila, ker ni shranjene identitete, na katero bi se sprememba nanašala. Naložite, spremenite, shranite in nato znova preberite stanje. Predmet, na katerega se sistem poveže, je shranjeni profil, ne tisti, ki ste ga urejali v pomnilniku.

Spremembe stanja pridejo le, dokler gledate

Ko so nastavitve naložene, stanje prehaja skozi prekinjeno, povezovanje, povezano, ponovno potrjevanje in prekinjanje. Inicializirajte vmesnik z enim branjem, nato poslušajte obvestilo o spremembi, namesto da bi poizvedovali s časovnikom. Poizvedovanje deluje v ospredju in laže v ozadju, in tako aplikacije končajo z indikatorjem, ki se nikoli ne razreši.

Obvestila prispejo le, dokler je aplikacija v ospredju. Vse, kar ohranja stanje v ozadju, bo po ponovnem zagonu videti zastarelo, zato osvežite ob zagonu in znova, ko se aplikacija vrne v ospredje. Če tunel ima ponudnika, ga upravljajte prek ustreznega objekta seje; navadna lastnost povezave ne modelira življenjskega cikla ponudnika.

Skrivnosti so sklici, ne nizi

Poročilo o manjkajoči skupni skrivnosti le redko pomeni, da je nihče ni dodelil. Objekt protokola želi sklic: enega za uporabniško geslo in enega za vnaprej skupni ključ IPsec. Posredovanje nil ali sklica, izpeljanega iz napačnega vnosa v zbirki ključev, da enako pritožbo kot prazen prostor. Napaka poimenuje simptom in skrije vzrok, zato ljudje isto skrivnost vnesejo večkrat.

Najprej zapišite skrivnost kot element splošnega gesla, nato preberite trajni sklic nanjo. Trajni sklic preživi ponovni zagon, za razliko od kazalca v pomnilniku, in prav on se serializira v profilu. Izberite razred dostopnosti, ki še vedno dovoljuje dostop po odklepu naprave, sicer bo tunel, ki se mora znova povezati na zaklenjenem zaslonu, spodletel pri preverjanju pristnosti s povsem veljavno skrivnostjo.

Razširitev ima svoj pogled na zbirko ključev

Omrežna razširitev je ločen proces, zato privzeti dostop aplikacije do zbirke ključev ne seže do nje. Obe tarči dobita isto skupino za dostop do zbirke ključev v svojih pravicah, element shranite enkrat znotraj te skupine in vsakemu procesu dovolite, da ga bere. Brez skupine razširitev ne najde ničesar in poroča o napaki poverilnic, ki je aplikacija ne more ponoviti.

Če je ponudnik konfiguriran prek svojega konfiguracijskega objekta, skrivnosti ne vgradite tudi v aplikacijo. Dve kopiji se razhajata in razhajanje se kaže kot slabe poverilnice, ne kot podvajanje. Gradnik ali drugi proces, ki poroča o drugem stanju, ima isto razlago: vsak potrebuje skupino in vsak mora pred branjem naložiti nastavitve.

Uskladite API s protokolom

Vgrajeni upravitelj nosi objekta protokolov IPsec in IKEv2. Z dodatnimi polji ne postane splošen odjemalec SSL VPN, in neustrezni profil se lahko čisto shrani in se kljub temu nikoli ne poveže. Odločite se, v katero kategorijo spadate, preden raziščete stanje, ker sta napaka stanja in nepodprti protokol od zunaj videti enako.

Za naslednji zagon je kontrolni seznam kratek: naložite nastavitve, preberite stanje, držite naročnine na spremembe v ospredju, znova zgradite sklice iz skupne skupine in potrdite, da objekt protokola ustreza API-ju, ki ste ga izvedli. Prehod čez ta seznam traja minuto; ugibanje o njem traja celo popoldne.

Sorodni članki