సందేశం కనిపించే చోటి నుండే ప్రారంభించండి. క్లయింట్ కనెక్ట్ అవుతుంది, టన్నెల్ పైకి వస్తుంది, ఆపై Linux యొక్క మార్గం జోడించే ఆదేశం File exists తో విఫలమైందని లాగ్ నివేదిస్తుంది. ఆ వాక్యంలో ఏదీ ధృవపత్రం, కీ లేదా కాన్ఫిగరేషన్ ఫైల్ను సూచించదు, పదాలు అలా సూచించినప్పటికీ. కర్నెల్ తన మార్గ పట్టికను వివరిస్తోంది, మరియు మీరు ఇన్స్టాల్ చేయమని కోరిన ప్రిఫిక్స్కు ఇప్పటికే ఒక ఎంట్రీ ఉంది.

క్లయింట్ యొక్క స్వంత క్రమాన్ని అనుసరించండి: అది ఏమి కోరింది, పట్టికలో ఇప్పటికే ఏమి ఉంది, ఆ ఎంట్రీని అక్కడ ఎవరు పెట్టారు, ఆ తర్వాత మాత్రమే ఏమి మార్చాలి. ప్రతి అడుగు ఒక సంభావ్య యజమానిని తొలగిస్తుంది.

క్లయింట్ వాస్తవానికి ఏమి కోరుతోంది

వైఫల్యానికి ముందు, క్లయింట్ జోడించాలనుకునే మార్గాన్ని నమోదు చేస్తుంది, సాధారణంగా గమ్యం, నెట్మాస్క్, గేట్వే మరియు కొన్నిసార్లు మెట్రిక్ లేదా పట్టికగా. ఆ పంక్తి కోరిక. తర్వాత వచ్చే లోపం కర్నెల్ యొక్క సమాధానం, రెండింటినీ పక్కపక్కనే చదవాలి.

journalctl -u openvpn-client@office -b --no-pager | grep -nE 'route|File exists'
openvpn --config /etc/openvpn/client/office.ovpn --verb 4 --log /tmp/ovpn.log

మార్గ సహాయకుని సున్నా కాని నిష్క్రమణ స్థితి దాని క్రింది వచనం కంటే తక్కువ సమాచారం ఇస్తుంది, ఎందుకంటే వివిధ కర్నెల్ ప్రతిస్పందనలు సున్నా కాని స్థితిని ఉత్పత్తి చేస్తాయి. ఖచ్చితమైన సందేశాన్ని ఉంచండి; ఇప్పటికే ఉన్న ఎంట్రీ మరియు చేరుకోలేని గేట్వే మధ్య వ్యత్యాసం తదుపరి ఏ విభాగాలు వర్తిస్తాయో నిర్ణయిస్తుంది.

ఇప్పటికే ఉన్న మార్గాన్ని చదవండి, కేవలం చిరునామా కాదు

పట్టికలో అదే చుక్కల నాలుగింటిని వెతకడం సరిపోదు. మార్గ వస్తువు దాని చిరునామా కుటుంబం, పట్టిక, గమ్య ప్రిఫిక్స్, మెట్రిక్, ప్రోటోకాల్ మరియు అవుట్పుట్ పరికరం ద్వారా గుర్తించబడుతుంది, మరియు ప్రిఫిక్స్ను పంచుకునే ఎంట్రీలు ఆ లక్షణాలు భిన్నంగా ఉన్నప్పుడు చట్టబద్ధంగా కలిసి ఉండవచ్చు. ఢీకొనేది మొత్తం వస్తువు, వచనం కాదు.

ip -4 route show table all | grep -F '10.40.'
ip -4 route show match 10.40.0.0/16
ip -4 route get 10.40.0.5

చివరి ఆదేశం మొదటి రెండింటి కంటే వేరే ప్రశ్నకు సమాధానం ఇస్తుంది: ఏమి ఉంది అని కాదు, ఆ గమ్యానికి కర్నెల్ ఇప్పుడు ఏ ఎంట్రీని ఎంచుకుంటుంది అని. రెండు దృక్కోణాలు ఉపయోగకరం, మరియు ఏదైనా నిర్ణయానికి రాకముందు పోల్చడానికి తగినంత తరచుగా అవి భిన్నపడతాయి. వాటి మధ్య అసమానతే ఆసక్తికరమైన సందర్భం, రౌండింగ్ లోపం కాదు.

విఫలమైన కోరిక పక్కన ప్రిఫిక్స్, పట్టిక, మెట్రిక్ మరియు పరికరాన్ని నమోదు చేయండి. ఇప్పటికే ఉన్న ఎంట్రీకి అదే లక్షణాలు మరియు అదే తదుపరి హాప్ ఉంటే, మీకు మార్గ సమస్య కాదు, నకిలీ సూచన ఉంది.

ప్రిఫిక్స్కు ఉండగల నలుగురు యజమానులు

కనెక్ట్ చేయబడిన మార్గాలు కేటాయించిన చిరునామా నుండి వస్తాయి మరియు ఆ చిరునామా ఉన్నప్పుడల్లా సిస్టమ్ వాటిని మళ్లీ సృష్టిస్తుంది. DHCP క్లయింట్ లేదా కనెక్షన్ మేనేజర్ తన జీవిత చక్రంలో భాగంగా మార్గాలను ఇన్స్టాల్ చేస్తుంది. మరో VPN క్లయింట్ ఇప్పటికే అదే ప్రిఫిక్స్ను మోస్తూ ఉండవచ్చు. మరియు స్థానిక హుక్ లేదా స్క్రిప్ట్ మరేదీ తెలియని ఒకదాన్ని జోడించవచ్చు.

ప్రతి యజమానికి వేరే సవరణ అవసరం. కనెక్ట్ చేయబడిన మార్గం తొలగించడం మీ పని కాదు; దాన్ని తొలగించడం టన్నెల్ ఉపయోగించదగినది కాకముందే స్థానిక ప్రాప్యతను విచ్ఛిన్నం చేయవచ్చు, మరియు కర్నెల్ దాన్ని తిరిగి పెడుతుంది. మేనేజర్ యాజమాన్యంలోని మార్గాన్ని ఆ మేనేజర్ ద్వారానే మార్చాలి, తదుపరి తిరిగి కనెక్షన్ రద్దు చేసే చేతితో రాసిన ip route del తో కాదు.

నిలిచిపోయిన ఇంటర్ఫేస్ అదే గందరగోళాన్ని సులభతరం చేస్తుంది. టన్నెల్ పరికరం తిరిగి కనెక్షన్ నుండి తప్పించుకుంటే, అనుకూల సెటప్ కోడ్ ఇన్స్టాల్ చేసిన మార్గాలు రెండవ రన్లోనూ ఉండవచ్చు, కాబట్టి శుభ్రమైన స్థితిని భావించే స్క్రిప్ట్ రెండవసారి విఫలమై మొదటిసారి పని చేస్తుంది. పాత ఎంట్రీని ఉద్దేశపూర్వకంగా శుభ్రం చేయండి లేదా సెటప్ కోడ్ను ఐడెంపొటెంట్ చేయండి.

block-local వేరే ప్రశ్నకు సమాధానం ఇస్తుంది

ప్రొఫైల్ మొత్తం ట్రాఫిక్ను టన్నెల్ ద్వారా పంపినప్పుడు, స్థానిక నెట్వర్క్కు ఏమి జరుగుతుందో క్లయింట్ నిర్ణయించాలి. block-local జెండా స్థానిక LANని టన్నెల్ ద్వారా మార్గనిర్దేశం చేయడం ద్వారా ఆ నిర్ణయాన్ని మారుస్తుంది, అదే సమయంలో LAN గేట్వే కోసం డాక్యుమెంట్ చేసిన మినహాయింపును నిలుపుకుంటుంది; ఇది చేరుకోగల సామర్థ్యంపై కనిపించే పరిణామాలతో కూడిన ట్రాఫిక్ విధాన ఎంపిక.

మార్గం జోడించడం ఎందుకు ఇప్పటికే ఉన్న ఎంట్రీ లోపాన్ని తిరిగి ఇచ్చిందో ఇది వివరించదు, మరియు దాన్ని సార్వత్రిక మరమ్మత్తుగా తీసుకోవడం నిజమైన ఘర్షణను విధాన మార్పు వెనుక దాచుతుంది. ప్రొఫైల్ సవరణ తర్వాత మీ స్థానిక వనరులు చేరుకోలేనివి అయితే, ఈ జెండా మొదట తనిఖీ చేయవలసిన వాటిలో ఒకటి; మార్గం జోడించడం విఫలమైతే, ఇది సమాధానం కాదు.

ఏ గమ్యాలు స్థానికంగా ఉంటాయనే నిర్ణయంగా దీన్ని పరిగణించండి, ఉద్దేశపూర్వకంగా తీసుకుని రాసి ఉంచండి. లాగ్ ఆందోళనకరంగా కనిపించినప్పుడు ప్రయత్నించాల్సిన స్విచ్ ఇది కాదు.

చక్రాన్ని మూసివేయండి: నకిలీని దాని మూలంలోనే తొలగించండి

ఏ యజమాని ఎంట్రీని కలిగి ఉందో తెలిసిన తర్వాత, సూచన నిర్వచించబడిన చోటే నకిలీ సూచనను తొలగించండి. అది ప్రొఫైల్లో route పంక్తి, సర్వర్ నుండి వచ్చిన push, లేదా ఇకపై అమలు చేయాల్సిన అవసరం లేని హుక్ కావచ్చు.

ip -4 route show match 10.40.0.0/16
ip -4 route get 10.40.0.5
journalctl -u openvpn-client@office -b --no-pager | tail -n 15

తర్వాత మళ్లీ కనెక్ట్ అయి మూడు విషయాలను నిర్ధారించండి: టన్నెల్ పైకి వస్తుంది, ఉద్దేశించిన గమ్యం మీరు కోరిన మార్గానికి పరిష్కరించబడుతుంది, మరియు వైఫల్యం దాని స్థానంలో కొత్తది రాకుండా పోతుంది. తప్పుగా ఎంచుకున్న మార్గంతో శుభ్రమైన లాగ్ మరమ్మత్తు కాదు.

ప్రిఫిక్స్ ఒకవైపు స్థానిక LAN మరియు మరోవైపు దూర నెట్వర్క్ అని అర్థమైతే, సమస్య నకిలీ కాదు, చిరునామా అతివ్యాప్తి, మరియు ఏ తొలగింపు రెండు అర్థాలను ఒకేసారి నిజం చేయలేదు. ఆ సందర్భానికి రెండు నెట్వర్క్లలో ఒకదానికి వేరే ప్రణాళిక అవసరం. ఏదైనా తాకే ముందు ఏ వైపు పునఃసంఖ్యీకరించబడుతుందో నిర్ణయించండి.

సంబంధిత వ్యాసాలు