Omtrent kvart femtiande minutt fell ein tunnel på ei travel sambinding ut i nokre sekund, og den første mistenkte er klokka. Assosiasjonar kan avsluttast på ei tidsgrense eller på eit byttetal, og kva grense som kjem først, er den som pensjonerer dei. På ei sambinding som ber reell trafikk, kan ei volumgrense utløysast lenge før den konfigurerte timen er omme. Så «for tidleg» er ei utsegn om klokka, ikkje om assosiasjonen.

Tel det assosiasjonen tel, ikkje grensesnittet

Eit grensesnitts byttetotal, ein dashbords samla gjennomstrøyming og assosiasjonen sin eigen teljar er tre separate tal, og berre eitt av dei blir samanlikna med grensa. Registrer den innkomande og den utgåande assosiasjonen kvar for seg med identifikatorane sine, slik at eit nøkkelbyte som rører éi retning viser seg som ei retningsbestemd hending i staden for eit mysterium. Teljaren til assosiasjonen startar òg på nytt ved nøkkelbyte, og difor veks eit total henta frå grensesnittet medan verdien som betyr noko blir nullstilt.

Reknestykket er verdt å gjere éin gong, slik at storleiksordenen sluttar å kjennast vilkårleg. Eit telt budsjett på éin gibibyte som blir brukt opp med jamne 128 mebibyte per minutt, er brukt opp på åtte minutt, og det er omrekning av einingar, ikkje ei måling av tunnelen din. Viss talet som kjem ut ligg langt under tidsgrensa, er volumet mekanismen, og inga klokkekikking vil forklare intervallet. Viss det ligg langt over, er bytegrensa ikkje utløysaren din, og søket høyrer til ein annan stad.

Mjuk og hard terskel er to ulike hendingar

Ein mjuk terskel ber om ei erstatning lenge før den harde grensa avsluttar assosiasjonen, og implementasjonar legg sine eigne marginar og randomisering oppå det du har konfigurert. Difor er det observerte intervallet nesten aldri eit rundt tal. IPsec-arkitekturen skildrar levetider uttrykte i tid og byttetal med dei to terskeltypane, og den tidlegaste utløpsdatoen gjeld. Handsamar du éi trykt levetid som ein tidsplan, tek du feil med marginens storleik.

Les den effektive policyen frå køyrande tilstand i staden for å utleie han frå eit tal i ei fil, fordi marginen høyrer til implementasjonen, ikkje intensjonen din. Motstå freistinga til å strekke grenser mot maksimum for å dempe symptomet: ein tunnel som byter nøklar etter tidsplan, oppfører seg som designa, og ei lengre levetid utset berre hendinga medan ein kompromittert nøkkel blir halden brukbar lenger. Når sjølve erstatninga feilar, er grensa bodberaren og ikkje feilen.

Les den effektive levetida frå køyrande tilstand

På strongSwan skriv swanctl --list-sas ut samandraget av assosiasjonen med nøkkelbyte- og levetidstidene, slik at verdien daemonen vil handheve er synleg utan gissing. På ein Linux-vert utan daemonvising rapporterer ip xfrm state dei konfigurerte mjuke og harde byte- og pakkegrensene ved sida av dei gjeldande teljarane. Dei to avlesingane svarar på ulike spørsmål, og begge er verdt å ta vare på i saka.

swanctl --list-sas
ip -s xfrm state

Samanlikn den trykte mjuke terskelen med intervallet du målte, fordi ei erstatning som startar med ein margin under den harde grensa, er normal, og ei som aldri startar, er det ikkje. Viss daemonen viser éi levetid og kjernetilstanden ei anna, ser du på to lag som ikkje er samde, og det er i seg sjølv funnet.

Følg med på utvekslinga som erstattar SA-en

Hald dei tre fornyingane åtskilde, fordi dei feilar på ulike måtar: eit nøkkelbyte for IKE SA byggjer ein ny kontrollassosiasjon, eit nøkkelbyte for CHILD SA erstattar dataassosiasjonen, og reautentisering gjer identitetsutvekslinga på nytt. I IKEv2 avgjer kvar part sine eigne levetider i staden for å forhandle éin felles verdi, så ei utveksling du ikkje starta, er vanleg. Uoverenskomst om perfect forward secrecy er ein hyppig årsak til at ein ny child SA døyr nøyaktig på nøkkelbyteintervallet, og det ser nøyaktig ut som ein timerfeil til nokon les forslaget.

Samanlikn den gamle assosiasjonen med etterfølgjaren og med utvekslinga som skapte han. Ein identifikator som forsvinn, er rutinemessig erstatning; eit avvist forslag, eit manglande svar eller fråværet av brukbar etterfølgjartilstand er ei anna hending med ein annan eigar. Ta vare på desse prova før du endrar noko, fordi dei versjonsspesifikke notata, forslaget til motparten og dei forhandla levetidene er det som gjer saka lesbar ei veke seinare, etter at loggane har rotert.

Prov fornyinga i staden for å skjule ho

Godta utrullinga ved å gå gjennom ei fornying du planla, ikkje ei som skjer med deg. Tving gjennom eitt enkelt nøkkelbyte innanfor eit vedlikehaldsvindauge, og stadfest deretter at begge retningar ber data etterpå og at applikasjonsresultatet er uendra, ikkje berre at tunnelindikatoren er grøn. Noter kva grense som utløyste, og kva utveksling som var involvert.

Ei konklusjon av den forma toler gransking, medan ein endra timer verdi som fekk sambandet til å verke stille ein ettermiddag, ikkje gjer det. Viss berre timeren flytta seg, flytta prova seg med han.

Relaterte artiklar