iPhoneలో WireGuard DNS: డొమైన్ కేవలం ఒక శోధన సఫిక్స్
DNS లైన్కు డొమైన్ జోడించడం విభజిత DNS లాగా కనిపిస్తుంది. Apple క్లయింట్లలో ఇది చిన్న పేర్లను మాత్రమే పూర్తి చేస్తుంది, మరియు ప్రతి ప్రశ్న ఇప్పటికీ టన్నెల్ రిజాల్వర్కు వెళ్తుంది.
మీరు రిజాల్వర్ చిరునామా మరియు కంపెనీ డొమైన్ ఉన్న ఒక లైన్ రాస్తారు, ఆ డొమైన్లోని పేర్లు మాత్రమే టన్నెల్ రిజాల్వర్ను ఉపయోగిస్తాయని ఆశిస్తారు. Apple క్లయింట్లో ఇప్పుడు అన్ని పేర్లు అక్కడికి వెళ్తాయి, డొమైన్లోని చిన్న పేర్లు కూడా పరిష్కరించబడతాయి. ఈ లైన్ రెండు వేర్వేరు పనులు చేస్తుంది, వాటిలో ఒకటి మాత్రమే టన్నెల్ ఏ ప్రశ్నలను నిర్వహిస్తుందనే దానికి సంబంధించినది. మరొకటి టైపింగ్ సౌలభ్యం, దానిని ఆశావాద పఠనం విధానం స్థాయికి ఎత్తింది.
DNS లైన్ ఏమిగా విడగొట్టబడుతుంది
క్లయింట్ ఎంట్రీని జాబితాగా చదివి ప్రతి అంశాన్ని దాని ఆకారం ప్రకారం వర్గీకరిస్తుంది. చిరునామా లాగా కనిపించేది ఏదైనా DNS సర్వర్ అవుతుంది; డొమైన్ లాగా కనిపించేది ఏదైనా శోధన సఫిక్స్ అవుతుంది. రెండూ టన్నెల్ సెట్టింగ్లలోకి వెళ్తాయి, కానీ వేర్వేరు ఫీల్డ్లలో. ప్రైవేట్ రిజాల్వర్ మరియు ఒక అంతర్గత డొమైన్ మోసే టన్నెల్ కోసం ఉదాహరణ లైన్ ఇలా కనిపిస్తుంది.
DNS = 10.24.8.53, lab.internal.exampleచిరునామా రిజాల్వర్ను అందిస్తుంది. డొమైన్ ఒక సఫిక్స్ను అందిస్తుంది, అది క్లయింట్కు చిన్న పేరు టైప్ చేయడానికి మరియు వ్యవస్థకు అడగడానికి ముందు మిగిలినది జోడించడానికి అనుమతిస్తుంది. రెండూ రిజాల్వర్ను ఆ డొమైన్కు పరిమితం చేయడం గురించి ఏమీ చెప్పవు, ప్రజలు ఆశించి పొందని భాగం అదే. ప్లాట్ఫారమ్లో ఒకే ఫీల్డ్ ఆ పరిమితిని వ్యక్తపరచగలదు, అది ఈ ఫీల్డ్ కాదు.
Apple యొక్క రెండు ఫీల్డ్లు, రెండు వేర్వేరు పనులు
Apple తన DNS సెట్టింగ్ల ఆబ్జెక్ట్లో ఆ భేదాన్ని బహిర్గతం చేస్తుంది. శోధన-డొమైన్ జాబితా ఒకే-లేబుల్ హోస్ట్నేమ్లను అర్హత కల్పించడానికి ఉపయోగించే జాబితాగా నమోదు చేయబడింది: బేర్ హోస్ట్నేమ్ టైప్ చేయండి మరియు వ్యవస్థ ప్రతి సఫిక్స్ను వరుసగా జోడించగలదు. ఇది పూర్తి చేసే నియమం, రూటింగ్ నియమం కాదు. ఆ జాబితాలో ఏదీ ఏ సర్వర్ను అడగాలో నిర్ణయించదు.
సరిపోలిక-డొమైన్ జాబితా మరో లక్షణం. ఏ నేమ్స్పేస్లు ఈ DNS సెట్టింగ్ల సమితిని ఉపయోగిస్తాయో అది నిర్ణయిస్తుంది, మరియు ఖాళీ ఎంట్రీ నిర్దిష్ట సఫిక్స్ కాదు, డిఫాల్ట్ డొమైన్ అని అర్థం. ప్యాకెట్-టన్నెల్ సెట్టింగ్ల జనరేటర్ Apple క్లయింట్లో ఆ నమూనాను అనుసరిస్తుంది. విశ్లేషించిన శోధన సఫిక్స్లను శోధన జాబితాలో పెడుతుంది, సర్వర్లు ఉన్నప్పుడు సరిపోలిక జాబితాను ఖాళీ స్ట్రింగ్కు సెట్ చేస్తుంది. ఫలితం వ్యవస్థ పంపే ప్రతిదానికీ సమాధానం ఇచ్చే టన్నెల్ రిజాల్వర్, దానితో పాటు చిన్న పేర్లకు సహాయపడే సఫిక్స్.
కాబట్టి ఆ లైన్లోని డొమైన్ నేమ్స్పేస్ ఎంపికకర్త కాదు. మరొకటి జోడించడం టన్నెల్ ఉపయోగించే ప్రశ్నలను సంకుచితం చేయదు, దాన్ని తీసివేయడం వాటిని విస్తరించదు. మారే ఏకైక విషయం ఏమిటంటే ఎన్ని చిన్న పేర్లు పూర్తవుతాయి.
ఏది ప్రతి పేరు ఇప్పటికీ టన్నెల్ రిజాల్వర్కు చేరుకుంటుంది
ఖాళీ సరిపోలిక ఎంట్రీతో, టన్నెల్ సాధారణ పేర్లకు అభ్యర్థి రిజాల్వర్, కంపెనీ డొమైన్కు మాత్రమే కాదు. పూర్తి-టన్నెల్ కాన్ఫిగరేషన్లో ఇది సాధారణంగా పెద్దగా పట్టించుకోదు, ఎందుకంటే మొత్తం ట్రాఫిక్ ఏదో ఒకవిధంగా టన్నెల్లో ఉంటుంది. విభజిత టన్నెల్లో ఇది చాలా ముఖ్యం. ప్రజా పేర్లను ఇప్పుడు ప్రైవేట్ జోన్ మాత్రమే ఉన్న రిజాల్వర్ పరిష్కరించగలదు, మరియు వైఫల్యం విరిగిన VPN లాగా కనిపిస్తుంది, నిజానికి అది నేమ్స్పేస్లోని ఒక భాగానికి మాత్రమే సమాధానం ఇచ్చే రిజాల్వర్. టన్నెల్ బాగుంది, ప్రశ్నలు బయటకు వెళ్తాయి, సమాధానాలు ఖాళీగా తిరిగి వస్తాయి.
రెండు మరమ్మతులు అందుబాటులో ఉన్నాయి మరియు అవి వేర్వేరు నిర్ణయాలు. టన్నెల్ రిజాల్వర్ను, ప్రజా పేర్లను ఆమోదించిన మార్గం ద్వారా పంపే పూర్తి రిజాల్వర్గా చేయండి, లేదా డొమైన్ జాబితాకు బదులుగా క్లయింట్ కాన్ఫిగరేషన్ను మార్చి ప్రజా పేర్లను అక్కడికి పంపడం ఆపండి. మొదటిది ప్రతి ప్రశ్నను టన్నెల్పై ఉంచి పైన ప్రవాహాన్ని నమ్ముతుంది. రెండవది కొన్ని ప్రశ్నలను స్థానికంగా ఉంచి, టన్నెల్ మూసి ఉన్నప్పుడు ప్రైవేట్ పేర్లు పరిష్కారం కావడం ఆగిపోవచ్చని అంగీకరిస్తుంది.
విభజిత DNS నిజంగా ఏమి కావాలి
నేమ్స్పేస్కు పరిమితమైన రిజాల్వర్ విధానానికి దాన్ని వ్యక్తపరచడానికి అనుమతించే క్లయింట్ కావాలి: Apple ప్లాట్ఫారమ్లలో డొమైన్లను సరిపోల్చండి, లేదా మీరు ఉపయోగించే ఉత్పత్తిలో సమానమైన సెట్టింగ్. సర్వర్లు మరియు సఫిక్స్లను మాత్రమే అంగీకరించే కాన్ఫిగరేషన్ ఫీల్డ్ దాన్ని ఎలా విరామచిహ్నం చేసినా వ్యక్తపరచలేదు. ప్రొఫైల్ ఆ విధానాన్ని మోయగలదు, ఎందుకంటే అది కనెక్ట్ సమయ సూచన కాదు, నిర్వహించబడే కాన్ఫిగరేషన్ను వివరిస్తుంది. అది డొమైన్, సర్వర్లు మరియు ఆ డొమైన్ చేరుకోలేనప్పుడు ఏమి జరగాలో పేరు పెట్టగలదు. సెట్టింగ్ మరియు ఒప్పందం మధ్య భేదం అదే.
నిర్వహించబడే Apple పరికరాలలో ఇది సాధారణంగా డొమైన్-నిర్దిష్ట DNS సెట్టింగ్లను మోసే కాన్ఫిగరేషన్ ప్రొఫైల్ ద్వారా అందించబడుతుంది. ఇది WireGuard కాన్ఫిగరేషన్ ఫైల్కు భిన్నమైన యంత్రాంగం, క్లయింట్ ప్రొఫైల్ను గౌరవిస్తే మాత్రమే రెండూ కలిసి ఉండగలవు. రెండు ఉత్పత్తులు ఒకేలా ప్రవర్తిస్తాయని భావించే ముందు మీ క్లయింట్ ఆ ఫీల్డ్ను నిజంగా ఏమి పిలుస్తుందో తనిఖీ చేయండి. Macలో wg-quick స్క్రిప్ట్ మరియు iPhoneలో WireGuard యాప్ సమానమైన లైన్లను చదివి వాటిని వేర్వేరు పొరల ద్వారా ఇన్స్టాల్ చేస్తాయి.
ఇన్స్టాల్ చేసిన సెట్టింగ్లను చదవండి, కాన్ఫిగ్ కాదు
Macలో వ్యవస్థ చివరికి ఏమైందో తనిఖీ చేయవచ్చు, అది మీరు రాసిన ఫైల్ను మళ్లీ చదవడం కంటే ఎక్కువ సమాచారం ఇస్తుంది. రిజాల్వర్ జాబితా ఏ సర్వర్లు ఏ డొమైన్లకు కాన్ఫిగర్ చేయబడ్డాయో చూపిస్తుంది, పరిధి-ప్రశ్నలు ఏది గెలిచిందో చూపిస్తాయి. లైన్ను పాడు చేసే క్లయింట్ దాన్ని మీరు రాసిన ఫైల్లో కాదు, ఇక్కడ చూపిస్తుంది. iOSలో సమానమైన కమాండ్ లైన్ లేదు, కాబట్టి అక్కడ సాక్ష్యం ఒక ఫలితం: టన్నెల్ ద్వారా పరిష్కరించబడే ప్రైవేట్ పేరు, మరియు దాని సమాధానం ఏ రిజాల్వర్ సమాధానం ఇచ్చిందో వెల్లడించే ప్రజా పేరు.
scutil --dns | grep -A3 resolver
networksetup -getdnsservers Wi-Fiఈ రెండు ఆదేశాలు ప్రస్తుత రిజాల్వర్ కాన్ఫిగరేషన్ను మరియు సక్రియ సేవ యొక్క DNS సర్వర్లను ముద్రిస్తాయి. టన్నెల్ రిజాల్వర్ డొమైన్ పరిమితి లేకుండా డిఫాల్ట్ రిజాల్వర్గా కనిపిస్తే, కాన్ఫిగరేషన్ క్లయింట్ అడిగినదే చేస్తోంది. యంత్రాంగాన్ని మార్చి దాన్ని సరిచేయండి, రెండవ సఫిక్స్ జోడించి ప్రవర్తన మారుతుందని ఆశించడం ద్వారా కాదు.