VPN కనెక్ట్ అయినప్పుడు Vagrant VM మాయమవుతుంది: విరిగిన మార్గం ఎవరిది
ఒక నిమిషం క్రితం సమాధానమిచ్చిన యంత్రం కనెక్ట్ అయ్యే క్షణంలో మాయమవుతుంది. ఏదైనా మార్చే ముందు విరిగిన మార్గం ఎవరిదో నిర్ణయించండి.
యంత్రం ఒక నిమిషం క్రితం సమాధానమిచ్చింది, VPN కనెక్ట్ అయింది, ఇప్పుడు అదే చిరునామా సమయం ముగుస్తుంది. మూడు లోపాలు ఈ లక్షణాన్ని సృష్టిస్తాయి, అవి వేర్వేరు యంత్రాల్లో నివసిస్తాయి. హోస్ట్ ప్రైవేట్ నెట్వర్క్కు మార్గాన్ని కోల్పోవచ్చు, అతిథి NAT పరిధి టన్నెల్ ఇప్పుడు ప్రకటించే పరిధితో ఢీకొనవచ్చు, లేదా పూర్తి టన్నెల్ హోస్ట్లోని ప్రతి మార్గం యాజమాన్యాన్ని తీసుకోవచ్చు. ఏదైనా కాన్ఫిగరేషన్ మార్చే ముందు ఏది జరిగిందో కనుగొనండి, ఎందుకంటే ప్రతి సరిదిద్దుడు వేరే చోట నివసిస్తుంది.
మార్గాన్ని చూడండి, యంత్రాన్ని కాదు
టన్నెల్ పనిచేస్తున్నప్పుడు అతిథి చిరునామా కోసం హోస్ట్ రూటింగ్ నిర్ణయాన్ని చూడండి. ఇంకా హోస్ట్-మాత్ర అడాప్టర్ను చూపుతున్న మార్గం సమస్య కాదు. ఇప్పుడు VPN అడాప్టర్ను చూపుతున్న మార్గమే సమస్య, దాన్ని మీరు కాదు, క్లయింట్ మార్చింది. అడాప్టర్ తన చిరునామాను నిలుపుకోవడం ఇంటర్ఫేస్ నిలిచిందని చెబుతుంది, ఇది మార్గం నిలిచిందనే దానికంటే భిన్నమైన వాస్తవం.
కనెక్ట్ అయ్యే సరైన క్షణంలో పడిపోయే SSH సెషన్ ఆశించిన ప్రవర్తన. క్లయింట్ అడాప్టర్లను తిరిగి ఉపయోగిస్తుంది మరియు మార్గాలను ఇన్స్టాల్ చేస్తుంది, కాబట్టి కనెక్షన్ కొన్ని సెకన్లు చనిపోతుంది. లోపం ఎప్పటికీ తిరిగి రాని కనెక్షన్, ఒక క్షణం మినుకున్నది కాదు.
టన్నెల్కు ముందు పట్టికను తీసుకోండి మరియు తర్వాత మళ్లీ, ఆపై ఆ రెండు అవుట్పుట్లను పోల్చండి. భేదమే నిర్ధారణ, అదే నెట్వర్క్ యజమాని అడిగే సాక్ష్యం కూడా.
ip -4 route get 192.168.56.10
ip -brief addr show
ip route show table main | head -20కనెక్ట్ అయ్యే ముందు మరియు తర్వాత హోస్ట్ పట్టికను చదవండి
లినక్స్లో ఒకదానిపై ఒకటి అతివ్యాప్తి చెందే మార్గాల మధ్య ప్రాధాన్యత ప్రిఫిక్స్ పొడవు మరియు మెట్రిక్ నుండి వస్తుంది, కాబట్టి మరింత నిర్దిష్టమైన VPN మార్గం తప్పు అయినా గెలుస్తుంది. విండోస్లో ఇంటర్ఫేస్ మెట్రిక్ సమతుల్యతను నిర్ణయిస్తుంది, టన్నెల్ అడాప్టర్ సాధారణంగా వర్చువల్ కంటే తక్కువ మెట్రిక్తో వస్తుంది. రెండు సందర్భాల్లో కనిపించే లక్షణం ఒకటే: ప్యాకెట్లు టన్నెల్ అడాప్టర్ ద్వారా బయటకు వెళ్లి మాయమవుతాయి.
అతిథి ప్రిఫిక్స్ మార్గానికి పక్కన అడాప్టర్లను మరియు వాటి మెట్రిక్లను ప్రింట్ చేయండి. ఆ అవుట్పుట్ జోడి యాజమాన్య ప్రశ్నకు ఒక చూపులో సమాధానమిస్తుంది.
Get-NetAdapter | Select-Object Name, InterfaceIndex, InterfaceMetric
Get-NetRoute -DestinationPrefix 192.168.56.0/24
route print -4 | Select-String '192.168.56'మార్గం మారింది కానీ అడాప్టర్ మెట్రిక్ మారలేదంటే, క్లయింట్ పోటీ మార్గాన్ని ఇన్స్టాల్ చేసింది. మెట్రిక్ మారిందంటే, క్లయింట్ అడాప్టర్లను తిరిగి క్రమబద్ధీకరించింది. రెండూ సరిదిద్దగలిగేవి, రెండూ వేర్వేరు చోట్ల సరిదిద్దబడతాయి.
అతిథి NAT పరిధే ఢీకొనడం అయినప్పుడు
VirtualBox NAT డిఫాల్ట్గా 10.0.2.0/24 ఉపయోగిస్తుంది, అదే పరిధిని నెట్టే టన్నెల్ అతిథిని ఆ ట్రాఫిక్ను నిజమైన గమ్యస్థానానికి కాదు, తన NAT గేట్వేకు పంపేలా చేస్తుంది. ప్యాకెట్ ఎప్పటికీ హోస్ట్ను విడిచిపెట్టదు, కాబట్టి అవతలి వైపు ఏ ఫైర్వాల్ లాగ్ దాన్ని చూపదు. Docker Machine తన హోస్ట్-మాత్ర ప్లాన్లో అదే రకమైన ఘర్షణను కలిగి ఉంది, ఆ ప్లాన్ మార్చడానికి యంత్రాన్ని దాని సర్టిఫికెట్లతో సహా తిరిగి సృష్టించవలసి రావచ్చు.
టన్నెల్ ఇప్పటికే ఏమి ప్రకటిస్తుంది, తర్వాత కార్యాలయ నెట్వర్క్ ఏమి ఉపయోగిస్తుంది, తర్వాత ఈ హోస్ట్లోని ప్రతి వర్చువల్ అడాప్టర్ ఏమి దావా చేసింది అని జాబితా చేసి ప్రత్యామ్నాయాన్ని ఎంచుకోండి. రూటింగ్ను విరిచేది అతివ్యాప్తి, పోలిక అప్రస్తుతం. ఒక పరిధి మరొక దాని లోపల పూర్తిగా ఉండవచ్చు, కానీ మొదటి చూపులో అసలు పోలి ఉండదు.
యంత్రం సృష్టించబడేటప్పుడు కొత్త పరిధిని సెట్ చేయండి, లేదా మార్చి మళ్లీ లోడ్ చేయండి, ఆపై అతిథి నుండి విఫలమైన కనెక్షన్ను మళ్లీ పరీక్షించండి. అతిథి స్వంత పట్టికే ముఖ్యమైన దృశ్యం.
VBoxManage modifyvm devbox --natnet1 10.77.0.0/24
vagrant reload devbox --provision
vagrant ssh devbox -c 'ip route get 10.20.0.15'క్లయింట్తో పోరాడకుండా మార్గాన్ని పునరుద్ధరించండి
ప్రతి ప్లాట్ఫారమ్ హోస్ట్-మాత్ర ప్రిఫిక్స్ను తిరిగి ముందుకు తేవడానికి ఒక మార్గాన్ని అందిస్తుంది. macOS లో హోస్ట్-మాత్ర ఇంటర్ఫేస్కు స్థిర మార్గం తదుపరి కనెక్షన్ వరకు పనిచేస్తుంది. విండోస్లో వర్చువల్ అడాప్టర్పై తక్కువ ఇంటర్ఫేస్ మెట్రిక్ దాన్ని ప్రాధాన్యతలో ఉంచుతుంది. లినక్స్లో రీప్లేస్ ఆపరేషన్ ఒకే ప్రిఫిక్స్ను కవర్ చేస్తుంది. మూడూ తాత్కాలిక పరిష్కారాలు, ఎందుకంటే తన మార్గాలను మళ్లీ విధించే క్లయింట్ వాటిని రద్దు చేస్తుంది.
బూట్లో గుడ్డిగా తిరిగి కనెక్ట్ చేయడం బదులు తనిఖీని స్క్రిప్ట్ చేయండి. ప్రతి కనెక్షన్ తర్వాత అతిథి ప్రిఫిక్స్ మార్గాన్ని ప్రింట్ చేసే చిన్న స్క్రిప్ట్ మర్మాన్ని లాగ్లో ఒక పంక్తిగా మారుస్తుంది.
ప్రొఫైల్ పూర్తి టన్నెల్ అయితే, నెట్వర్క్ యజమాని నుండి విభజిత టన్నెలింగ్ లేదా పత్రబద్ధ మినహాయింపు అడగండి. భద్రతా విధానాన్ని దాటవేసే మార్గాలను నిశ్శబ్దంగా జోడించడం సరిదిద్దుడు కాదు, అది తర్వాత ఆడిటర్తో వచ్చే రెండవ సమస్య.
సరిదిద్దుడును రెండు వైపులా తనిఖీ చేయండి
మార్పు తర్వాత మూడు మార్గాలను ధృవీకరించండి: హోస్ట్ నుండి అతిథికి, అతిథి నుండి కార్పొరేట్ హోస్ట్కు, మరియు అతిథి నుండి ఇంటర్నెట్కు. ఒకటి పునరుద్ధరించి మరొకటి విరిచే సరిదిద్దుడు మరమ్మత్తు వేషంలో ఉన్న కాన్ఫిగరేషన్ మార్పు. పోలిక సమానంగా ఉండేలా మార్పు ముందు సేకరించిన అదే అవుట్పుట్లను పట్టుకోండి.
మారిన ఇంటర్ఫేస్, మెట్రిక్ మరియు మార్గాన్ని సమయంతో పాటు నమోదు చేయండి, తదుపరి సంఘటన పునర్నిర్మాణం కాదు, అన్వేషణ అవ్వాలి. ఆ గమనిక పొడవైన టికెట్ థ్రెడ్ కంటే ఎక్కువ విలువైనది.
ip -4 route get 192.168.56.10
traceroute -n -m 4 10.20.0.15
curl -sS -o /dev/null -w '%{http_code}\n' https://example.comహోస్ట్ తిరిగి అతిథిని చేరుకుని అతిథి LAN ను చేరుకున్నప్పుడు, మీరు ప్రారంభించిన మార్గాన్ని పునరుద్ధరించారు. వాటిలో ఒకటి మాత్రమే పనిచేస్తే, మిగిలిన లోపం మరొక యజమాని ప్రాంతంలో ఉంది, భేదం ఏ ప్రాంతమో చెబుతుంది.