Android टर्मिनल nslookup करने में सक्षम नहीं है?


14

हर बार जब मैं अपने एलजी सहयोगी पर एक डोमेन को टेलनेट करने की कोशिश करता हूं तो वह विफल हो जाता है, लेकिन अगर मैं आईपी पते का उपयोग करता हूं तो यह काम करता है। इसलिए मैंने उपयोग करने की कोशिश की nslookup telehack.comऔर यह लौट आया:

Server:       0.0.0.0
Address 1:    0.0.0.0

nslookup: can't resolve 'telehack.com'

मेरे पास Android टर्मिनल एमुलेटर और बिजीबॉक्स स्थापित है,

यह डिफ़ॉल्ट डीएनएस के साथ काम नहीं कर रहा था, इसलिए अब मैंने अपने डीएनएस प्रविष्टियों को ओपनडीएनएस पर सेट किया है , और यह अभी भी हल नहीं होगा।

क्या मैं इसे हल करने के लिए कुछ भी कर सकता हूं, या क्या यह सहयोगी पर एक सीमा है?


मेरे पास उस डोमेन या उस मामले के लिए किसी भी डोमेन पर NSlookup करने का कोई मुद्दा नहीं है।
रयान कॉनरॉड

आपका नेटवर्क सेटअप कैसा है? क्या आपके पास पोर्ट अवरुद्ध या अग्रेषित हैं?
मैथ्यू पढ़ें

मैं एक ही मुद्दा रहा हूँ।
मैक्स राइड

जवाबों:


4

यह एक ज्ञात डिजाइन समस्या है, जब स्टैटिकली लिंब्रोलोल्व और ग्लिबक का उपयोग किया जाता है।

आपके पास 2 विकल्प हैं:

  1. Glibc के बजाय Google Android की मूल libc बायोनिक लाइब्रेरी का उपयोग करें।

  2. पुस्तकालयों में /system/lib(या आवश्यक लिंक जैसे बनाने के लिए /usr/lib -> /system/lib) खोज करने के लिए बिजीबॉक्स बनाएँ । अपने में ld-linux.so.3, libc.so.6, libresolv.so.2, libnss_dns.so.2 रखें /system/lib


तो तुम मुझे gibson haxxor करना चाहते हैं? क्या?
JKirchartz

1

जाँच करें कि आपके टर्मिनल एमुलेटर वातावरण में DNS सही ढंग से चल रहा है getprop net.dns1और यदि आवश्यक हो तो इसे सेट करें setprop net.dns1 [yourdns]। संकेत के लिए सभी सेट संपत्तियों को देखने के लिए कमांड, डिवाइस द्वारा भिन्न हो सकते हैं, कुछ उपयोग net.eth0.dns1या net.gprs.dns1, getpropमापदंडों के बिना चला सकते हैं।


डीएनएस सेट है, मैंने इसे डिफॉल्ट से ओपनडएनएस में बदल दिया और यह अभी भी काम नहीं करता है ...
JKirchartz

क्या nslookupअब सही सर्वर पता देता है या अभी भी दिखाता है 0.0.0.0?
onik

अभी भी 0.0.0.0
JKirchartz

getprop मौजूद है और DNS सर्वर के लिए एक IPv6 पता लौटाता है, इस तथ्य के बावजूद कि DHCP सर्वर उनके लिए एक IPv4 पता सौंप रहा है। लेकिन सेटपॉप मौजूद नहीं है।
माइकल

1

अपना टर्मिनल दर्ज करें, फिर 'सु' टाइप करें और एंटर दबाएं (नोट तभी काम करता है जब आपके पास कोई रूट फोन हो)

$ su
#

फिर निम्नलिखित दर्ज करें (अपने डीएनएस सर्वर आईपी के साथ xxxx को बदलें)

# echo 'nameserver x.x.x.x' > /system/etc/resolv.conf
# echo 'nameserver x.x.x.x' >> /system/etc/resolv.conf
# exit

अब यह देखने के लिए परीक्षण करें कि क्या यह सही ढंग से काम करता है

$ nslookup google.com

इसे अब हल करना चाहिए।


ध्यान दें कि यह संभावना है कि resolv.confसिस्टम द्वारा हर कनेक्टिविटी परिवर्तन पर ओवरराइट किया जाएगा।
फ्लो

वास्तव में, मेरे पास कभी भी किसी भी एंड्रॉइड डिवाइस पर ऐसा होता है ... यह सिर्फ बदलता नहीं है (मुझे यह पता है क्योंकि मेरे पास मेरा निजी डीएनएस सर्वर (स्थानीय) रिज़ॉल्व.कॉन्फ़ में हार्डकोड है और मुझे वास्तव में इसे मैन्युअल रूप से सेट करना है अन्य नेटवर्क (उन्नत संवाद का उपयोग करके)
मिका

1

मैंने टर्मिनल आईडीई के लिए Google कोड पृष्ठ पर एक मुद्दे पर पोस्ट की गई टिप्पणी से अपना जवाब (और थोड़ा बदल दिया है), हालांकि, यह समान होना चाहिए:

यदि आप निहित हैं, तो आप बिजीबॉक्स का नवीनतम संस्करण स्थापित कर सकते हैं (आप इसे संकलित करने में सक्षम हो सकते हैं)। फिर पता करें कि आपने कहाँ व्यस्त है अद्यतन किया है और निम्नलिखित कमांड चलाएं: (मैं मान रहा हूं कि नया संस्करण अंदर है /system/binऔर पुराना संस्करण चालू है ~/system/bin)

PATH=/system/bin:$PATH
cd ~/system/bin
mv busybox busybox.old
ln -s /system/bin/busybox busybox

अब डोमेन ठीक से हल हो जाएंगे।

कृपया ध्यान दें: बिजीबॉक्स के काम करने के तरीके के कारण, आपको उपयोग करने में सक्षम होने के लिए रूट होना होगा ping(हालांकि चीजों को पसंद करना चाहिए wgetऔर nslookupमेजबानों को ठीक से हल करने में सक्षम होना चाहिए)। इस मुद्दे पर बिजीबॉक्स डेवलपर्स काम कर रहे हैं।

मैंने नवीनतम संस्करण को स्थापित करने के लिए व्यक्तिगत रूप से इस एप्लिकेशन का उपयोग किया है: https://play.google.com/store/apps/details?id=stericson.busybox


0

आप किस नेटवर्क का उपयोग कर रहे हैं? यदि यह वाईफ़ाई है, तो क्या आपके नेटवर्क की अन्य मशीनें इससे संपर्क कर सकती हैं? यदि यह वाहक डेटा योजना है ... तो क्या इसे अवरुद्ध किया जा रहा है?

अद्यतन: 0.0.0.0 मुझे एक मेजबान फ़ाइल ब्लॉक की तरह लगता है। कोई विज्ञापन अवरोधक? ऐडब्लॉक प्लस? होस्ट्स फाइल में संशोधन?

USB नेटवर्किंग आज़माएं - यदि आप यहां कोई टिप्पणी पोस्ट कर रहे हैं, तो मैं उससे सवाल पूछूंगा और ट्यूटोरियल में डालूंगा (यह शामिल है, और मुझे केवल यह पता है कि इसे GNU / Linux मशीनों पर कैसे करना है)


यह 3 जी (वर्जन) या वाईफाई पर काम नहीं करता है, वही 0.0.0.0 हल नहीं कर सकता है।
JKirchartz

0.0.0.0 मुझे एक होस्ट फ़ाइल ब्लॉक की तरह लगता है। कोई विज्ञापन अवरोधक? (अद्यतन उत्तर।)
ब्राम

मेरे पास एक था, लेकिन यह वास्तव में काम नहीं करता था ... /system/etc/hostsमें 127.0.0.1
स्पैममी

0

मैं Android में adb से इसका उपयोग करता हूं। शायद बेहतर तरीके हैं।

ip=$(ping -c 1 -W 1 example.com|grep PING|cut -d "(" -f 2|cut -d ")" -f 1)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.