Terminal Android tidak dapat nslookup?

14

Setiap kali saya mencoba telnet ke domain di LG Ally saya gagal, tetapi berfungsi jika saya menggunakan alamat IP. Jadi saya mencoba menggunakan nslookup telehack.comdan mengembalikan:

Server:       0.0.0.0
Address 1:    0.0.0.0

nslookup: can't resolve 'telehack.com'

Saya sudah menginstal Terminal Android Emulator dan BusyBox ,

Itu tidak berfungsi dengan default dns, jadi sekarang saya punya entri dns saya diatur ke OpenDNS , dan masih tidak akan menyelesaikan.

adakah yang bisa saya lakukan untuk menyelesaikan ini, atau itu adalah batasan pada Ally?

JKirchartz
sumber
Saya tidak punya masalah melakukan NSlookup pada domain itu atau domain apa pun dalam hal ini.
Ryan Conrad
Seperti apa pengaturan jaringan Anda? Apakah Anda memiliki port yang diblokir atau diteruskan?
Matius Baca
Saya mengalami masalah yang sama.
Max Ried

Jawaban:

4

Ini adalah masalah desain yang diketahui saat menggunakan libresolv dan glibc yang terhubung secara statis.

Anda memiliki 2 opsi:

  1. Gunakan perpustakaan Bionic libc asli Google Android dan bukan glibc.

  2. Bangun busybox untuk mencari pustaka di /system/lib(atau membuat tautan yang diperlukan misalnya /usr/lib -> /system/lib). Tempatkan ld-linux.so.3, libc.so.6, libresolv.so.2, libnss_dns.so.2 di dalam /system/lib.

Konstantin Krastev
sumber
Jadi, Anda ingin saya haxx atau gibson? apa?
JKirchartz
1

Periksa apakah lingkungan emulator terminal Anda telah mengatur DNS dengan benar dengan menjalankan getprop net.dns1dan jika perlu, setel dengannya setprop net.dns1 [yourdns]. Perintah dapat berbeda menurut perangkat, sebagian menggunakan net.eth0.dns1atau net.gprs.dns1, berjalan getproptanpa parameter untuk melihat semua properti yang ditetapkan untuk petunjuk.

onik
sumber
dns diatur, saya mengubahnya dari default ke openDNS dan masih tidak berfungsi ...
JKirchartz
apakah nslookupsekarang memberikan alamat server yang benar atau apakah masih muncul 0.0.0.0?
onik
masih menunjukkan 0.0.0.0
JKirchartz
getprop ada dan mengembalikan alamat IPv6 untuk server DNS, meskipun server DHCP membagikan alamat IPv4 untuk mereka. Tetapi setprop tidak ada.
Michael
1

masukkan terminal Anda, lalu ketik 'su' dan tekan enter (note hanya berfungsi jika Anda memiliki ponsel yang di-root)

$ su
#

kemudian masukkan berikut ini (ganti xxxx dengan ip server dns Anda)

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

Sekarang tes untuk melihat apakah itu berfungsi dengan benar

$ nslookup google.com

Itu harus diselesaikan sekarang.

Mikah
sumber
Perhatikan bahwa kemungkinan resolv.confakan ditimpa pada setiap perubahan konektivitas oleh sistem.
Alur
sebenarnya, saya TIDAK PERNAH memiliki ini terjadi pada perangkat android ... Itu tidak berubah (saya tahu ini karena saya punya server dns pribadi saya (lokal) hardcoded ke resolv.conf dan saya harus benar-benar secara manual mengaturnya untuk jaringan lain (menggunakan dialog lanjutan))
Mikah
1

Saya telah menyalin (dan sedikit berubah) jawaban saya dari komentar yang saya posting pada masalah pada halaman kode Google untuk IDE Terminal, namun, itu harus sama:

Jika Anda di-root, Anda dapat menginstal versi busybox terbaru (Anda mungkin dapat mengompilasinya). Kemudian cari tahu di mana Anda memperbarui busybox dan jalankan perintah berikut: (Saya mengasumsikan versi baru ada /system/bindan versi lama ada ~/system/bin)

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

Sekarang domain akan diselesaikan dengan benar.

Harap dicatat: karena cara busybox bekerja, Anda harus menjadi root untuk dapat menggunakan ping(meskipun hal-hal seperti wgetdan nslookupharus dapat menyelesaikan host dengan benar sekarang). Pengembang busybox sedang mengerjakan masalah ini.

Saya pribadi menggunakan aplikasi ini untuk menginstal versi terbaru: https://play.google.com/store/apps/details?id=stericson.busybox

Hosh Sadiq
sumber
0

Jaringan mana yang Anda gunakan? Jika itu Wifi, dapatkah mesin lain di jaringan Anda menghubunginya? Jika paket data operator ... apakah ini diblokir?

Pembaruan: 0.0.0.0 sepertinya blok file host bagi saya. Adakah pemblokir iklan? Adblock plus? Host modifikasi file?

Coba jaringan USB - jika Anda mengirim komentar di sini untuk meminta saya akan memperbarui pertanyaan & memasukkan tutorial (ini terlibat, dan saya hanya tahu bagaimana melakukannya di mesin GNU / Linux)

Broam
sumber
Itu tidak bekerja pada 3g (verizon) atau pada WiFi, 0.0.0.0 yang sama tidak dapat diselesaikan.
JKirchartz
0.0.0.0 tampaknya seperti blok file host bagi saya. Adakah pemblokir iklan? (Memperbarui jawaban.)
Broam
Saya dulu punya satu tetapi itu tidak benar-benar berfungsi ... /system/etc/hostsmemiliki banyak URL yang tampak seperti spam127.0.0.1
JKirchartz
0

Saya menggunakan ini di android dari adb. Mungkin ada cara yang lebih baik.

ip=$(ping -c 1 -W 1 example.com|grep PING|cut -d "(" -f 2|cut -d ")" -f 1)
Zibri
sumber