પીઅર રીબૂટ પછી strongSwan નીચે રહે છે: એક ટનલ પુનઃપ્રાપ્ત કરો
ડેમોન રીસ્ટાર્ટ છોડી દો. જે કનેક્શન પાછું આવવું જોઈએ તેના પર ઇનિશિએશન અને DPD મૂકો, પછી નામ દ્વારા ચકાસો અને ડેમોન નહીં, સેવા સાબિત કરો.
દૂરસ્થ ગેટવે રીબૂટ થાય છે, એક મિનિટમાં પાછું આવે છે, અને સ્થાનિક strongSwan ડેમોન ચાલુ રહે છે જ્યારે ટનલ હજી નીચે છે. ESTABLISHED શોધીને ડેમોન રીસ્ટાર્ટ કરતી cron જોબ આખરે તેને ઢાંકી દેશે, અને તે મશીન પરની દરેક અસંબંધિત ટનલ પણ કાપી નાખશે, જ્યારે કદાચ નિષ્ફળ ગયેલી ટનલ ચૂકી જશે. પુનઃપ્રાપ્તિ તે કનેક્શનની છે જે પાછું આવવું જોઈએ, અને તે રીલોડમાં ટકી રહેતી સેટિંગ્સમાં વ્યક્ત થાય છે. આ રનબુક તેને એક કનેક્શન માટે ગોઠવે છે અને પરિણામ નામ દ્વારા સાબિત કરે છે.
ગ્લોબલ રીસ્ટાર્ટ છોડી દો, તેના પુરાવા રાખો
ડેમોન રીસ્ટાર્ટમાં બે ચોક્કસ ખામી છે: તે દરેક કનેક્શનની સ્થિતિનો નાશ કરે છે, અને કઈ ઘટના ખરેખર નિષ્ફળ ગઈ તે તમને કહેતું નથી. તમે શોધેલ ટેક્સ્ટ બીજા કનેક્શનમાંથી આવ્યું હોઈ શકે, જ્યારે જરૂરી child નિષ્ક્રિય પડ્યું રહ્યું કારણ કે કંઈએ તેને શરૂ કર્યું નહીં.
કંઈપણ બદલતા પહેલાં લોડ થયેલા કનેક્શન અને સક્રિય એસોસિએશન વાંચો, જેથી પીઅર પાછું આવ્યા પછી સરખામણી કરવા માટે તમારી પાસે પહેલાંનું ચિત્ર હોય.
swanctl --list-conns
swanctl --list-sas
ઇનિશિએશન અને પુનઃપ્રયાસો પાછું આવતા કનેક્શન પર મૂકો
swanctl.conf ડિપ્લોયમેન્ટમાં આ સેટિંગ્સ ગ્લોબલ પોલિસીમાં નહીં, કનેક્શન અને child સ્તરે રહે છે. નીચેનો ટુકડો ઇનિશિએટર બાજુનું ઉદાહરણ છે જે ધારે છે કે પ્રસ્તાવો, પ્રમાણીકરણ અને સિલેક્ટર પહેલેથી જ સાચા છે.
connections {
branch {
keyingtries = 0
dpd_delay = 30s
children {
private-lan {
start_action = trap|start
dpd_action = restart
}
}
}
}
child લોડ થાય ત્યારે શું થાય તે start_action નક્કી કરે છે: start તરત જ શરૂ કરે છે, જ્યારે trap એવી પોલિસી સ્થાપિત કરે છે જે મેળ ખાતો ટ્રાફિક આવે ત્યારે ઇનિશિએશન શરૂ કરે છે. trap|start લખવા માટે strongSwan 5.9.6 અથવા નવું જરૂરી છે, તેથી લીટી કોપી કરતા પહેલાં વર્ઝન તપાસો. dpd_action=restart પીઅરને મૃત જાહેર કરાયા પછી નવી વાટાઘાટ માંગે છે, અને કનેક્શન સ્તરે keyingtries=0 સફળતા કે કાયમી ભૂલ સુધી વધુ પ્રયાસોની પરવાનગી આપે છે. IKEv2 હેઠળ dpd_timeout ની કોઈ અસર થતી નથી, કારણ કે સામાન્ય પુનઃપ્રેષણ નક્કી કરે છે કે પીઅર ક્યારે જવાબ આપતું નથી.
તે ઉદાહરણમાંનો વિલંબ શરૂઆતનું બિંદુ છે, સાર્વત્રિક સમયમર્યાદા નહીં. પીઅરના રીબૂટમાં કેટલો સમય લાગે છે અને કેટલું પુનઃપ્રેષણ તમે સહન કરવા તૈયાર છો તેના આધારે તે પસંદ કરો.
તમે કઈ ઘટનામાંથી પુનઃપ્રાપ્તિ કરી રહ્યા છો તે જાણો
ત્રણ નિષ્ફળતાઓ ડેશબોર્ડ પર એકસરખી દેખાય છે અને જુદી જુદી સેટિંગ્સ માંગે છે. ક્યારેય ન ઊઠેલું પ્રારંભિક કનેક્શન કન્ફિગરેશન કે પહોંચની સમસ્યા છે. જવાબ આપવાનું બંધ કરેલું પીઅર DPD નો કેસ છે. પીઅરે સ્પષ્ટપણે બંધ કરેલું child પોતાના close_action સાથેની પોલિસી ઘટના છે, જે DPD ક્યારેય જોતું નથી. કાપ આસપાસનું લોગ વાંચવાથી ખબર પડે કે ત્રણમાંથી કયું તમારી પાસે છે, અને જવાબ સુધારો બદલી નાખે છે.
ઓપરેટરો જાણી જોઈને જાળવણી માટે બંધ કરે તેવા કનેક્શનમાં આક્રમક પુનઃઇનિશિએશન ઉમેરશો નહીં, નહીંતર વિન્ડોની વચ્ચે ટનલ ફરી દેખાશે. માંગ પર આધારિત ડિઝાઇન માટે જાળવી રાખેલ trap પૂરતું છે, કારણ કે મેળ ખાતો ટ્રાફિક કોઈ ટાઈમર વગર child ને ફરી સ્થાપિત કરે છે.
ડેમોન સ્થિતિથી નહીં, નામ દ્વારા ચકાસો
પીઅર હજી નીચે હોય ત્યારે કનેક્શન અને તેના child ને નામ દ્વારા વાંચો, પછી પાછું આવે ત્યારે ફરી; આ બે આઉટપુટ વચ્ચેનો તફાવત જ પુરાવો છે.
swanctl --initiate --child private-lan
swanctl --terminate --ike branch
પછી એસોસિએશન નહીં, સેવા પ્રમાણિત કરો. નવું child સિક્યોરિટી એસોસિએશન અને તેની પાછળના ખાનગી સ્થળે સફળ વિનંતી એ મહત્વની બે હકીકતો છે, અને સ્વસ્થ અસંબંધિત ટનલ સાથે ચાલતું ડેમોન બંનેમાંથી એક પણ સાબિત કરતું નથી.
child ક્યારેય ઇનિશિએટ ન કરે તો તપાસો કે ટેસ્ટ ટ્રાફિક કન્ફિગર કરેલા સિલેક્ટર સાથે બરાબર મેળ ખાય છે કે નહીં, પ્રોટોકોલ અને પોર્ટ સહિત. તે ઇનિશિએટ થઈને નિષ્ફળ જાય તો અનંત લૂપ પાછળ છુપાવવાને બદલે પ્રમાણીકરણ કે પ્રસ્તાવની ભૂલ વાંચો, કારણ કે keyingtries=0 કાયમી અસ્વીકાર યુગો સુધી પુનરાવર્તિત કરશે.
ફેરફાર વિન્ડોમાં લોડ કરો અને ફરી પરીક્ષણ કરો
રીલોડ કરવું ડેમોન રીસ્ટાર્ટ કરવા કરતાં સુરક્ષિત છે, અને તોપણ મફત નથી: child બદલવું કે અનલોડ કરવું શરૂ થયેલા એસોસિએશનને બંધ કરી શકે અથવા તેનું trap પાડી શકે.
જાળવણી વિન્ડો દરમિયાન લોડ કરો, અગાઉની ફાઈલ રાખો, અને ખાતરી કરો કે કનેક્શન ડિફોલ્ટ સાથે નહીં પણ તમે ઈચ્છેલી સેટિંગ્સ સાથે દેખાય છે.
swanctl --load-conns
swanctl --list-conns
અગાઉની ફાઈલ પુનઃસ્થાપિત કરીને ફરી લોડ કરીને પાછું વળો, પછી એ જ બે આદેશોનું પુનરાવર્તન કરો. જે ટનલ ફક્ત ડેમોન રીસ્ટાર્ટ પછી જ પાછી આવે છે તે સમારેલી નથી, તે રીસેટ થઈ છે.