peer రీబూట్ తర్వాత strongSwan కిందే ఉంటుంది: ఒక టన్నెల్ను పునరుద్ధరించండి
daemon రీస్టార్ట్ను వదిలేయండి. తిరిగి రావాల్సిన కనెక్షన్పై ప్రారంభం మరియు DPD పెట్టండి, తర్వాత పేరుతో ధృవీకరించి daemon కాదు, సేవను నిరూపించండి.
రిమోట్ గేట్వే రీబూట్ అవుతుంది, ఒక నిమిషంలో తిరిగి వస్తుంది, స్థానిక strongSwan daemon పని కొనసాగిస్తుంది కానీ టన్నెల్ ఇంకా కిందే ఉంది. ESTABLISHED కోసం వెతికి daemonను రీస్టార్ట్ చేసే cron పని చివరికి దాన్ని కప్పివేస్తుంది, అలాగే మెషీన్లోని ప్రతి సంబంధం లేని టన్నెల్ను కూడా తెంచుతుంది, బహుశా విఫలమైనదాన్ని మిస్ చేయవచ్చు. పునరుద్ధరణ తిరిగి రావాల్సిన కనెక్షన్కే చెందుతుంది, reloadను తట్టుకునే సెట్టింగ్లలో వ్యక్తమవుతుంది. ఈ రన్బుక్ దాన్ని ఒక కనెక్షన్ కోసం సిద్ధం చేసి ఫలితాన్ని పేరుతో నిరూపిస్తుంది.
గ్లోబల్ రీస్టార్ట్ను వదిలేయండి, దాని సాక్ష్యాలను ఉంచండి
daemon రీస్టార్ట్లో రెండు స్పష్టమైన లోపాలు ఉన్నాయి: ప్రతి కనెక్షన్ స్థితిని నాశనం చేస్తుంది, మరియు ఏ సంఘటన నిజంగా విఫలమైందో చెప్పదు. మీరు వెతికిన స్థితి వచనం వేరే కనెక్షన్ నుండి రావచ్చు, అవసరమైన child ఏదీ దాన్ని ప్రారంభించనందున నిష్క్రియంగా ఉండిపోయింది.
ఏదైనా మార్చే ముందు లోడ్ చేసిన కనెక్షన్లు మరియు క్రియాశీల అనుబంధాలను చదవండి, peer తిరిగి వచ్చిన తర్వాత పోల్చడానికి మీకు మునుపటి చిత్రం ఉంటుంది.
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 peer మృతమని ప్రకటించిన వెంటనే కొత్త చర్చలను కోరుతుంది, కనెక్షన్ స్థాయి keyingtries=0 విజయం లేదా శాశ్వత లోపం వరకు అదనపు ప్రయత్నాలను అనుమతిస్తుంది. IKEv2 కింద dpd_timeout ఎలాంటి ప్రభావం ఉండదు, ఎందుకంటే peer ఎప్పుడు స్పందించడం లేదో సాధారణ పునఃప్రసారం నిర్ణయిస్తుంది.
ఆ ఉదాహరణలోని ఆలస్యం ప్రారంభ బిందువు, సార్వత్రిక గడువు కాదు. peer రీబూట్ ఎంత సమయం తీసుకుంటుంది మరియు ఎంత పునఃప్రసారాన్ని భరించడానికి సిద్ధంగా ఉన్నారో దాని ఆధారంగా ఎంచుకోండి.
మీరు ఏ సంఘటన నుండి పునరుద్ధరిస్తున్నారో తెలుసుకోండి
మూడు వైఫల్యాలు డాష్బోర్డ్లో ఒకేలా కనిపిస్తాయి మరియు వేర్వేరు సెట్టింగ్లు కావాలి. ఎప్పుడూ ఎగవని ప్రారంభ కనెక్షన్ కాన్ఫిగరేషన్ లేదా చేరుకోగల సమస్య. ప్రతిస్పందించడం ఆపిన peer DPD కేసు. peer స్పష్టంగా మూసిన child తన సొంత close_action ఉన్న విధాన సంఘటన, దాన్ని DPD ఎప్పుడూ గమనించదు. అంతరాయం చుట్టూ ఉన్న లాగ్ చదవడం మూడింటిలో ఏది మీకు ఉందో చెబుతుంది, సమాధానం పరిష్కారాన్ని మారుస్తుంది.
నిర్వాహకులు నిర్వహణ కోసం ఉద్దేశపూర్వకంగా మూసే కనెక్షన్కు దూకుడైన పునఃప్రారంభాన్ని జోడించవద్దు, లేకపోతే విండో మధ్యలో టన్నెల్ మళ్లీ కనిపిస్తుంది. డిమాండ్ ఆధారిత డిజైన్లకు ఉంచిన trap సరిపోతుంది, ఎందుకంటే సరిపోలే ట్రాఫిక్ ఏ టైమర్ లేకుండా childను తిరిగి స్థాపిస్తుంది.
daemon స్థితితో కాదు, పేరుతో ధృవీకరించండి
peer ఇంకా కింద ఉన్నప్పుడు కనెక్షన్ మరియు దాని childను పేరుతో చదవండి, తర్వాత అది తిరిగి వచ్చినప్పుడు మళ్లీ చదవండి; ఆ రెండు ఔట్పుట్ల మధ్య వ్యత్యాసమే సాక్ష్యం.
swanctl --initiate --child private-lan
swanctl --terminate --ike branch
తర్వాత అనుబంధాన్ని కాదు, సేవను నిర్ధారించండి. కొత్త child భద్రతా అనుబంధం మరియు దాని వెనుక ఉన్న ప్రైవేట్ గమ్యానికి విజయవంతమైన అభ్యర్థన—ఈ రెండు వాస్తవాలే ముఖ్యం, ఆరోగ్యకరమైన సంబంధం లేని టన్నెల్తో నడుస్తున్న daemon రెండింటినీ నిరూపించదు.
child ఎప్పుడూ ప్రారంభించకపోతే, పరీక్షా ట్రాఫిక్ కాన్ఫిగర్ చేసిన ఎంపికకారులతో సరిగ్గా సరిపోతుందో లేదో తనిఖీ చేయండి, ప్రోటోకాల్ మరియు పోర్ట్తో సహా. అది ప్రారంభించి విఫలమైతే, అనంత లూప్ వెనుక దాచడం బదులు ప్రామాణీకరణ లేదా ప్రతిపాదన లోపాన్ని చదవండి, ఎందుకంటే keyingtries=0 శాశ్వత తిరస్కరణను ఎప్పటికీ పునరావృతం చేస్తుంది.
మార్పును విండోలో లోడ్ చేసి మళ్లీ పరీక్షించండి
reload daemon రీస్టార్ట్ కంటే సురక్షితం, అయినా అది ఉచితం కాదు: childను భర్తీ చేయడం లేదా అన్లోడ్ చేయడం ప్రారంభమైన అనుబంధాన్ని మూయవచ్చు లేదా దాని trapను పడేయవచ్చు.
నిర్వహణ విండో సమయంలో లోడ్ చేయండి, మునుపటి ఫైల్ను ఉంచండి, కనెక్షన్ డిఫాల్ట్లతో కాదు, మీరు ఉద్దేశించిన సెట్టింగ్లతో కనిపిస్తుందని నిర్ధారించండి.
swanctl --load-conns
swanctl --list-conns
మునుపటి ఫైల్ను పునరుద్ధరించి మళ్లీ లోడ్ చేయడం ద్వారా వెనక్కి తిరగండి, తర్వాత అదే రెండు ఆదేశాలను పునరావృతం చేయండి. daemon రీస్టార్ట్ తర్వాత మాత్రమే తిరిగి వచ్చే టన్నెల్ మరమ్మతు కాలేదు, రీసెట్ అయింది.