Поново покрените апликацију, питајте менаџера за статус везе и он пријављује прекинуто, док системски мени јасно показује активан тунел. Или позив за чување враћа грешку која ништа не објашњава, или се заједничка тајна прогласи несталом неколико секунди након што је додељена. Три симптома, један механизам: менаџер је поглед на системско складиште, а поглед се чита као празан док га неко не учита.

Пре него што почнете да отклањате било шта од овога, одредите који API треба да користите. Системски тунел IPsec или IKEv2 одговара уграђеном менаџеру; протокол који систем не имплементира захтева добављача тунела са сопственом обрадом пакета, и никаква комбинација поља то не мења.

Менаџер је поглед на складиште

Направите или преузмите менаџера, затражите да учита подешавања и пустите обрађивач завршетка да заврши пре читања статуса или измене подешавања протокола. Када је задатак да се наброје сачуване конфигурације, користите позив за све варијанте уместо да једну инстанцу користите у две сврхе. Пре него што учитавање стигне, статус је обично неважећи, и управо претварање неважећег у искључено је грешка због које апликација изгледа погрешно само после поновног покретања.

Уписивање следи исти редослед. Покушај чувања на менаџеру који никада ништа није учитао може да не успе без корисне поруке, јер нема сачуваног идентитета на који би се промена применила. Учитајте, измените, сачувајте, па поново прочитајте статус. Објекат на који се систем повезује је сачувани профил, а не онај који сте уређивали у меморији.

Промене статуса стижу само док гледате

Када се подешавања учитају, статус пролази кроз прекинуто, повезује се, повезано, поново потврђује и прекида. Иницијализујте интерфејс једним читањем, а затим слушајте обавештење о промени уместо да анкетирате са тајмером. Анкетирање ради у предњем плану и лаже у позадини, и тако апликације остају са индикатором који се никада не реши.

Обавештења стижу само док је апликација у предњем плану. Све што одржава стање у позадини изгледаће застарело после поновног покретања, зато освежите при покретању и поново када се апликација врати у предњи план. Ако тунел поседује добављач, управљајте њиме кроз одговарајући објекат сесије; обично својство везе не моделује животни циклус добављача.

Тајне су референце, не ниске

Пријава да заједничка тајна недостаје ретко значи да је нико није доделио. Објекат протокола жели референцу: једну за корисничку лозинку и једну за унапред заједнички кључ IPsec. Прослеђивање nil, или референце изведене из погрешног уноса привеска кључева, даје исту жалбу као празно поље. Грешка именује симптом и скрива узрок, зато људи исту тајну уносе више пута.

Прво запишите тајну као ставку опште лозинке, а затим прочитајте трајну референцу на њу. Трајна референца преживљава поновно покретање, за разлику од показивача у меморији, и управо се она серијализује у профилу. Изаберите класу доступности која и даље дозвољава приступ након откључавања уређаја, иначе ће тунел који мора поново да се повеже на закључаном екрану пасти на провери аутентичности са потпуно важећом тајном.

Екстензија има сопствени поглед на привезак кључева

Мрежна екстензија је одвојен процес, тако да подразумевани приступ апликације привеску кључева не допире до ње. Дајте обема метама исту групу приступа привеску кључева у њиховим овлашћењима, сачувајте ставку једном унутар те групе и дозволите сваком процесу да је чита. Без групе екстензија не налази ништа и пријављује неуспех акредитива који апликација не може да репродукује.

Ако се добављач конфигурише кроз свој објекат конфигурације, не уграђујте тајну и у апликацију. Две копије се разилазе, а разилажење се показује као лоши акредитиви, а не као дупликат. Виџет или други процес који пријављује друго стање има исто објашњење: свакоме треба група и сваки мора да учита подешавања пре читања.

Ускладите API са протоколом

Уграђени менаџер носи објекте протокола IPsec и IKEv2. Додатним пољима не постаје општи SSL VPN клијент, а неодговарајући профил може чисто да се сачува и ипак никада не повеже. Одредите којој категорији припадате пре него што истражите статус, јер грешка статуса и неподржани протокол споља изгледају исто.

За следеће покретање листа је кратка: учитајте подешавања, прочитајте статус, држите претплате на промене у предњем плану, поново изградите референце из заједничке групе и потврдите да објекат протокола одговара API-ју који сте имплементирали. Пролазак кроз ту листу траје минут; нагађање о њој траје цело поподне.

Повезани чланци