मेरा फ़ोन Google सार्वजनिक DNS का उपयोग क्यों करता है?


10

मैं यह जानने के लिए उत्सुक था कि मेरे फोन का DNS सर्वर क्या उपयोग करता है। इसलिए मैंने एक टर्मिनल एमुलेटर लॉन्च किया और मैंने प्रवेश किया:

$ cat /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4

जैसा कि आप देख सकते हैं, मेरा फोन DNS सर्वर ( Google सार्वजनिक DNS सर्वर ) के रूप में 8.8.8.8 और 8.8.4.4 का उपयोग करता है ।

घर पर (Wifi), DHCP के माध्यम से OpenDNS के सर्वर देने के लिए मेरा राउटर कॉन्फ़िगर किया गया है। लेकिन, मेरे फोन पर, cat /etc/resolv.confवही आउटपुट देता है। 3 जी के साथ एक ही बात। और, भले ही मैं वाईफ़ाई और 3 जी दोनों को अक्षम करता हूं, और फिर फोन को रिबूट करता हूं, यह अभी भी Google के पब्लिक डीएनएस सर्वर का उपयोग करता है।

मुझे याद नहीं है कि resolv.confइसे बदलने के लिए कोई एप्लिकेशन बदला या स्थापित किया गया है।

मेरा फोन CyanogenMod 7.2.0.1 (Android 2.3.7) के साथ एक HTC इच्छा है।

क्या कोई मुझे समझा सकता है कि मेरा फ़ोन Google सार्वजनिक DNS का उपयोग क्यों करता है? क्या यह किसी भी Android उपकरणों, या CyanogenMod ROM के लिए एक सामान्य विन्यास है?

जवाबों:


11

स्टीव कोंडिक के अनुसार , यह अनिवार्य रूप से पुराना कोड है जो CyanogenMod के पुराने संस्करणों से बचा हुआ है:

यह केवल उन ऐप्स के लिए यहां था जो पुराने सीएम संस्करणों में यूक्लिब के खिलाफ सांख्यिकीय रूप से जुड़े थे। यह सिर्फ हटाया जा सकता है।

हालाँकि, उन्होंने यह भी ध्यान दिया :

साथ ही, यह फ़ाइल तब नहीं लिखी जाती जब नेटवर्क से कनेक्ट होता है / सिस्टम आसानी से पढ़ा जाता है। वास्तविक DNS सर्वर सिस्टम गुणों से पढ़े जाते हैं।

मैंने यह भी सत्यापित किया है कि डीएचसीपी आपूर्ति किए गए सर्वर वास्तव में उपयोग किए जा रहे हैं, इसलिए यह मुद्दा अमान्य है जब तक कि कोई अन्यथा साबित न हो।

तो /etc/resolv.confवास्तव में मूल्य आपकी DNS सेटिंग्स को प्रतिबिंबित नहीं करते हैं। इसके बजाय आप क्या कर सकते getpropहैं अपने DNS मूल्यों को खोजने के लिए उपयोग करें। आप इसे अच्छी तरह से पेयर कर सकते हैं यदि आप आउटपुट को इस तरह से पकड़ते हैं:

getprop | grep dns

यह भी ध्यान देने योग्य है: /etc/resolv.confफ़ाइल CyanogenMod के बाद के संस्करणों में पूरी तरह से हटा दी गई प्रतीत होती है। मेरे पास CM10 पर एक भी नहीं है, लेकिन getpropमेरी DNS सेटिंग्स को सही ढंग से दिखाता है।


महान उत्तरदाता, धन्यवाद। हालाँकि, getprop | grep dnsकुछ भी वापस नहीं करता है। getprop | grep -E '([0-9]{1,3}\.){3}[0-9]{1,3}'(IPv4 पते की तलाश) प्रासंगिक परिणाम वापस नहीं करता है। लौट आए गुण हैं ro.baseband, ro.build.description, ro.modversionऔर gsm.version.baseband। कोई उपाय?
मॉर्गन कोर्टबेट

@ मॉर्गन: मुझे लगता है कि यह सीएम 7 (आप चल रहा है) और सीएम 10 (जो मैंने परीक्षण किया था) के बीच कुछ अंतर हो सकता है। यदि आप आउटपुट को बिल्कुल नहीं बढ़ाते हैं तो क्या होता है? क्या आप कुछ भी प्रासंगिक देखते हैं? ( moreलंबे समय तक हो सकता है के रूप में इसे या इसी तरह पाइप करने के लिए चाहते हो सकता है)
eldarerathis

1
@ मॉर्गन: मेरे पास परीक्षण करने के लिए जिंजरब्रेड डिवाइस नहीं है, लेकिन मानक वायरलेस सेटिंग्स में ऐसा करने का एक तरीका होना चाहिए यदि आप एक स्टेटिक आईपी को कॉन्फ़िगर करते हैं (मुझे नहीं लगता कि आप इसका उपयोग इस तरह से कर सकते हैं। डीएचसीपी, दुर्भाग्य से)। जेबी पर मैं उस नेटवर्क को लंबे समय तक दबाता हूं जिससे मैं जुड़ा हुआ हूं और इसे प्राप्त करने के लिए "संशोधित करें" चुनें। यह "उन्नत सेटिंग" के तहत हो सकता है (मेनू बटन जब वाईफाई नेटवर्क की सूची में है)। आप इसका उपयोग भी कर सकते हैं, setpropलेकिन यह रिबूट / डिस्कनेक्ट पर जारी नहीं रहेगा। उदाहरण के लिए। संपत्ति setprop net.rmnet0.dns1 <your DNS IP>का मूल्य बदलना चाहिए net.rmnet0.dns1
eldarerathis

1
और मुझे लगता है कि एडॉप्टर ( net.rmnet0.dns1आपके मामले में) द्वारा अधिक विशिष्ट उपयोग किया जाएगा , हालांकि यह अधिक सामान्य net.dns1संपत्ति से उस मूल्य को प्राप्त कर सकता है।
एल्डारैथिस

1
@ आर्युक: मुझे नहीं पता। setpropयदि आप इसे खाली मान देते हैं तो यह एक अस्थायी समाधान हो सकता है, लेकिन आपको इसे हर बूट पर चलाना होगा (और मुझे यकीन नहीं है कि यह वास्तव में काम करेगा)।
एल्डररैथिस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.