VPN ఆన్లో ఉంది, localhost పనిచేయడం లేదు: పేరు, ప్రాక్సీ లేదా bind?
శోధన ప్రత్యయం లేదా ప్రాక్సీ నియంత్రణ తీసుకున్నప్పుడు localhost మీ యంత్రాన్ని సూచించదు. మొదట పేరు, తర్వాత మార్గం, తర్వాత సాధనం యొక్క కనెక్షన్ స్ట్రింగ్ సరిచేయండి.
మీ డెవలప్మెంట్ సర్వర్ ఒక నిమిషం క్రితం సమాధానం ఇచ్చింది, ఇప్పుడు సొరంగం పైకి లేచినందున మీరు ఎప్పుడూ టైప్ చేయని హోస్ట్ పేరుతో అభ్యర్థన సమయం ముగుస్తుంది. దాదాపు ప్రతి సందర్భాన్ని రెండు యంత్రాంగాలు వివరిస్తాయి, బయట నుండి అవి ఒకేలా కనిపిస్తాయి. శోధన ప్రత్యయం చిన్న పేరును కార్పొరేట్ పేరుగా మారుస్తుంది, ప్రాక్సీ లూప్బ్యాక్ ట్రాఫిక్ను దాన్ని చేరుకోలేని హోస్ట్కు పంపుతుంది. ఈ రెండింటిని వేరు చేయడానికి ఒక ప్రశ్న ఖర్చవుతుంది, మీరు రాయబోతున్న ఫైర్వాల్ నియమం ఆదా అవుతుంది.
localhost కార్పొరేట్ జోన్కు పరిష్కరించబడినప్పుడు
సొరంగం పైకి ఉన్నప్పుడు పేరు ఏమిటి అని పరిష్కరించబడుతుందో తనిఖీ చేయండి, తర్వాత సొరంగాన్ని దించి అదే ప్రశ్న అమలు చేసి రెండు సమాధానాలను పోల్చండి. మీరు 127.0.0.1 ఆశించిన చోట కార్పొరేట్ పరిధిలోని చిరునామా రావడమే సూచన. localhost.mycompany.corp వంటి రికార్డు క్లయింట్ ఆ ప్రత్యయాన్ని శోధన జాబితాకు జోడించిన క్షణమే లూప్బ్యాక్ నమోదును ఓడిస్తుంది, అభ్యర్థన ఆ పోర్టులో ఏమీ వినని ప్రైవేట్ హోస్ట్కు వెళ్తుంది. శోధన జాబితాను ఊహించకుండా చదవండి, ఎందుకంటే క్లయింట్ ఒకటి కంటే ఎక్కువ డొమైన్లను జోడించగలదు, ఏ అభ్యర్థి మొదట ప్రయత్నించబడుతుందో క్రమం నిర్ణయిస్తుంది:
getent hosts localhost
resolvectl domain
ss -ltnp | grep 8080
అప్లికేషన్, డేటాబేస్ క్లయింట్ లేదా నోట్బుక్ URLలో హోస్ట్ పేరు స్థానంలో అక్షరార్థ చిరునామా పెట్టండి, తర్వాత అభ్యర్థనను పునరావృతం చేయండి. వైఫల్యం మాయమైతే మీకు నామకరణ సమస్య ఉంది, సొరంగం కేవలం ట్రిగ్గర్ మాత్రమే. అది కొనసాగితే వినేవాడు లేదా మార్గం తదుపరి అనుమానితుడు, పేరు కేవలం తప్పుడు ఆనవాలు.
లూప్బ్యాక్ను పట్టుకునే ప్రాక్సీ సెట్టింగ్లు
సొరంగం లేచినప్పుడు వర్తించే సిస్టమ్ ప్రాక్సీ 127.0.0.1 కు అభ్యర్థనను అంగీకరించి, మీరు ఏమి ఉద్దేశించారో తెలియని దూర ప్రాక్సీకి పంపుతుంది. ఖాళీ బైపాస్ జాబితా స్థానిక అభ్యర్థనను దూర అభ్యర్థనగా మారుస్తుంది, లోప సందేశం దీన్ని అరుదుగా చెబుతుంది. లూప్బ్యాక్ చిరునామాలను ఒక ఆదేశానికి కాదు, మొత్తం సెషన్కు బైపాస్ జాబితాలో జోడించండి, తర్వాత నెట్వర్క్ గురించి ఏదైనా నిర్ణయించే ముందు సాధనం దాన్ని గౌరవిస్తుందని నిర్ధారించుకోండి.
అప్లికేషన్ ఫ్రేమ్వర్క్లు తమ స్వంత పరిసర చరాలను మరియు కొన్నిసార్లు తమ స్వంత కాన్ఫిగరేషన్ ఫైల్ను చదువుతాయి, కాబట్టి ఒక సాధనానికి పనిచేసే బైపాస్ తదుపరి దానికి ఏమీ నిరూపించదు. బ్రౌజర్లు ఒక సూక్ష్మతను జోడిస్తాయి: Chromium ఆధారిత బ్రౌజర్లు లూప్బ్యాక్ కోసం ప్రాక్సీని పరోక్షంగా దాటుతాయి, బైపాస్ టోకెన్ ఆ ప్రవర్తనను తొలగించగలదు. ఆపరేటింగ్ సిస్టమ్ సెట్టింగే మొత్తం కథ అని భావించకుండా వాస్తవ ప్రాక్సీ నిర్ణయాన్ని తనిఖీ చేయండి. షెల్ నుండి ప్రారంభమయ్యే దేనికైనా రెండు ఆదేశాలు దీన్ని తీర్పు చేస్తాయి:
curl --noproxy '*' http://127.0.0.1:8080/health
NO_PROXY=localhost,127.0.0.1,::1 your-tool
bind చిరునామా ఎవరు కనెక్ట్ అవ్వగలరో నిర్ణయిస్తుంది
127.0.0.1 పై ప్రారంభమయ్యే సర్వర్ ఆ యంత్రం నుండి మాత్రమే కనెక్షన్లను అంగీకరిస్తుంది, ఇది డెవలప్మెంట్కు సాధారణంగా సరైన డిఫాల్ట్. 0.0.0.0 పై సర్వర్ VPN అడాప్టర్తో సహా ప్రతి ఇంటర్ఫేస్పై సమాధానం ఇస్తుంది, ఇది చాలామంది ఉద్దేశించిన దానికంటే ఎక్కువ బహిర్గతం. అక్షరార్థ లూప్బ్యాక్ చిరునామా విఫలమైనప్పుడు అన్నింటికి ముందు bind తనిఖీ చేయండి.
వినిపిస్తున్న సాకెట్ను చూసి అది ఏ చిరునామాకు కట్టబడిందో గుర్తించండి, పోర్టు మాత్రమే కాదు. మరో పరికరం లేదా కంటైనర్ సొరంగం ద్వారా సేవను చేరుకోవాలంటే అది ఉపయోగించే నిర్దిష్ట ఇంటర్ఫేస్కు కట్టి ఆ పోర్టును ఉద్దేశపూర్వకంగా అనుమతించండి. మీ స్వంత యంత్రానికి మాత్రమే అవసరమైతే సన్నని bind ఉంచి సర్వర్ను విస్తరించడం బదులు క్లయింట్ను సరిచేయండి. పోర్టు ఫార్వార్డింగ్ లేదా సొరంగ పొర రెండింటినీ కలపగలదు, కానీ ప్రతిదీ తర్వాత తన స్వంత డీబగ్గింగ్ అవసరమయ్యే భాగాన్ని జోడిస్తుంది.
డీబగ్గింగ్ సాధనం LAN ఆశించే చోటు
డీబగ్గింగ్ సాధనాలు సొరంగం నిశ్శబ్దంగా విచ్ఛిన్నం చేసే ఊహలను మోసుకుంటాయి. ఫోన్ డీబగ్గింగ్ వంతెన VPN పరికరం ఉపజాలాన్ని పట్టుకున్నప్పుడు దాని పరికరాన్ని కోల్పోతుంది, కాబట్టి LAN చిరునామా లేదా కేబుల్ ద్వారా తిరిగి కనెక్ట్ అవ్వడం ఘర్షణను నివారిస్తుంది. బ్రౌజర్ ఆటోమేషన్ హబ్ హబ్ ప్రాక్సీ ద్వారా మాత్రమే చేరుకోగలిగినప్పుడు, లేదా స్థానిక ఫైర్వాల్ దాని నియంత్రణ పోర్టును వదిలినప్పుడు సమయం ముగుస్తుంది. రిమోట్ డీబగ్గర్ క్లయింట్ మార్గాన్ని తిరిగి రాసిన చోట ఎలివేషన్ మరియు లూప్బ్యాక్ చిరునామా అడగవచ్చు.
నియంత్రణ పోర్టు మరియు డేటా పోర్టును విడివిడిగా గుర్తించండి, ఎందుకంటే తరచుగా ఒకటి బతికి ఉంటుంది మరొకటి ఉండదు. తర్వాత సరిచేయడం సాధనం కాన్ఫిగరేషన్కు, ఆ ఉపజాల మార్గానికి, లేదా విభజిత సొరంగ నియమానికి అని నిర్ణయించండి. ప్రతి డెవలపర్ యంత్రంపై hosts ఫైల్ను సవరించడం అత్యంత దారుణంగా స్కేలవుతుంది మరియు మొదట మరచిపోతారు. ప్రొఫైల్తో జీవించే, సొరంగం ఉన్న ఎవరైనా సమీక్షించగల సెట్టింగ్కు ప్రాధాన్యం ఇవ్వండి.
విఫలమయ్యే మొదటి దశలో ఆగండి
మూడు దశలుగా దిగండి: పేరును పరిష్కరించండి, అక్షరార్థ చిరునామాకు సాకెట్ తెరవండి, తర్వాత సాధనం తన స్వంత కనెక్షన్ చేయనివ్వండి. ప్రతి దశ ఒక పొరను తొలగిస్తుంది, కాబట్టి మొదటి వైఫల్యం సరిచేయవలసిన పొరను పేర్కొంటుంది, దాని తర్వాత అన్నీ పరీక్షించబడకుండా ఉంటాయి. ఏదైనా మార్చే ముందు ఫలితాన్ని రాయండి, ఎందుకంటే కొలతకు ముందు వర్తించిన సరిచేయడాన్ని అదృష్టం నుండి వేరు చేయలేము. మొదటి ప్రయత్నం విఫలమై మళ్లీ ప్రయత్నం పనిచేస్తే, సాధనం ప్రారంభమైనప్పుడు సొరంగం సిద్ధంగా లేదు.
స్థిర నిరీక్షణకు బదులు మార్గం కోసం వేచి ఉండే పరిమిత సిద్ధత తనిఖీ పెట్టండి, విఫలమయ్యే దశను లాగ్లో ఉంచండి తదుపరి వ్యక్తి ఎక్కడ ఆగిందో చూడగలరు. తనంతట తాను కోలుకునే సాధనం సరిచేయబడలేదు, అది అదృష్టవంతం, అదృష్టం మరొకరి యంత్రంలో ముగుస్తుంది. సొరంగాన్ని చివరగా మార్చండి, నిజంగా విఫలమైన దశకు మాత్రమే. ఆ క్రమమే పనిచేసే బిల్డ్కు తిరిగి వెళ్లే చిన్న మార్గం, ఎందుకంటే ఎప్పుడూ పాల్గొనని భాగాన్ని మళ్లీ నిర్మించకుండా అది మిమ్మల్ని ఆపుతుంది.