Thiết bị đầu cuối Android không thể nslookup?


14

Mỗi lần tôi cố gắng telnet đến một tên miền trên LG Ally thì nó không thành công, nhưng nó hoạt động nếu tôi sử dụng địa chỉ IP. Vì vậy, tôi đã cố gắng sử dụng nslookup telehack.comvà nó trở lại:

Server:       0.0.0.0
Address 1:    0.0.0.0

nslookup: can't resolve 'telehack.com'

Tôi đã cài đặt Trình mô phỏng thiết bị đầu cuối AndroidBusyBox ,

Nó không hoạt động với các dns mặc định, vì vậy bây giờ tôi đã đặt các mục dns của mình thành OpenDNS và nó vẫn không giải quyết được.

Có điều gì tôi có thể làm để giải quyết vấn đề này không, hay đó là một hạn chế đối với Đồng minh?


Tôi không có vấn đề gì khi thực hiện NSlookup trên tên miền đó hoặc bất kỳ tên miền nào cho vấn đề đó.
Ryan Conrad

Thiết lập mạng của bạn như thế nào? Bạn có cổng bị chặn hoặc chuyển tiếp?
Matthew Đọc

Tôi có cùng một vấn đề.
Max Ried

Câu trả lời:


4

Đây là một vấn đề thiết kế đã biết khi sử dụng libresolv và glibc được liên kết tĩnh.

Bạn có 2 lựa chọn:

  1. Sử dụng thư viện Bionic libc bản địa của Google Android thay vì glibc.

  2. Xây dựng busybox để tìm kiếm các thư viện trong /system/lib(hoặc tạo các liên kết cần thiết, vd /usr/lib -> /system/lib). Đặt ld-linux.so.3, libc.so.6, libresolv.so.2, libnss_dns.so.2 trong của bạn /system/lib.


Vì vậy, bạn muốn tôi haxxor các gibson? gì?
JKirchartz

1

Kiểm tra xem môi trường giả lập thiết bị đầu cuối của bạn có DNS được đặt chính xác bằng cách chạy getprop net.dns1và nếu cần thiết đặt nó với setprop net.dns1 [yourdns]. Các lệnh có thể khác nhau tùy theo thiết bị, một số sử dụng net.eth0.dns1hoặc net.gprs.dns1, chạy getpropmà không có tham số để xem tất cả các thuộc tính được đặt cho gợi ý.


dns được thiết lập, tôi đã thay đổi nó từ mặc định thành openDNS và nó vẫn không hoạt động ...
JKirchartz

không nslookuphiện nay cung cấp cho các địa chỉ máy chủ đúng hay không nó vẫn hiển thị 0.0.0.0?
onik

vẫn hiển thị 0.0.0.0
JKirchartz

getprop tồn tại và trả về một địa chỉ IPv6 cho các máy chủ DNS, mặc dù thực tế là máy chủ DHCP đang phân phát địa chỉ IPv4 cho chúng. Nhưng setprop không tồn tại.
Michael

1

nhập thiết bị đầu cuối của bạn, sau đó nhập 'su' và nhấn enter (lưu ý chỉ hoạt động nếu bạn có điện thoại đã root)

$ su
#

sau đó nhập thông tin sau (thay thế xxxx bằng ip máy chủ dns của bạn)

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

Bây giờ hãy kiểm tra xem nó có hoạt động chính xác không

$ nslookup google.com

Nó sẽ giải quyết ngay bây giờ.


Lưu ý rằng có khả năng resolv.confsẽ bị ghi đè lên mỗi thay đổi kết nối của hệ thống.
Lưu lượng

thực sự, tôi KHÔNG BAO GIỜ có điều này xảy ra trên bất kỳ thiết bị Android nào ... Nó không thay đổi (tôi biết điều này vì tôi có máy chủ dns riêng (cục bộ) được mã hóa vào độ phân giải và tôi phải thực sự đặt thủ công cho các mạng khác (sử dụng hộp thoại nâng cao))
Mikah

1

Tôi đã sao chép (và thay đổi một chút) câu trả lời của tôi từ một bình luận tôi đã đăng về một vấn đề trên trang mã Google cho Terminal IDE, tuy nhiên, nó phải giống nhau:

Nếu bạn đã root, bạn có thể cài đặt phiên bản busybox mới nhất (bạn có thể biên dịch nó). Sau đó tìm ra nơi bạn cập nhật busybox và chạy các lệnh sau: (Tôi giả sử phiên bản mới đang ở trong /system/binvà phiên bản cũ nằm trong ~/system/bin)

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

Bây giờ tên miền sẽ được giải quyết đúng.

Xin lưu ý: do cách busybox hoạt động, bạn phải root để có thể sử dụng ping(mặc dù những thứ như wgetnslookupsẽ có thể giải quyết máy chủ đúng cách ngay bây giờ). Các nhà phát triển busybox đang làm việc về vấn đề này.

Cá nhân tôi đã sử dụng ứng dụng này để cài đặt phiên bản mới nhất: https://play.google.com/store/apps/details?id=stericson.busybox


0

Bạn đang sử dụng mạng nào? Nếu là Wifi, các máy khác trong mạng của bạn có thể liên lạc với nó không? Nếu đó là gói dữ liệu của nhà mạng ... nó có bị chặn không?

Cập nhật: 0.0.0.0 có vẻ như là một khối tệp máy chủ đối với tôi. Bất kỳ chặn quảng cáo? Quảng cáo cộng? Lưu trữ sửa đổi tập tin?

Hãy thử kết nối mạng USB - nếu bạn đăng một bình luận ở đây để hỏi về nó, tôi sẽ cập nhật câu hỏi và đưa vào một hướng dẫn (nó có liên quan và tôi chỉ biết cách thực hiện trên các máy GNU / Linux)


Nó không hoạt động trên 3g (verizon) hoặc trên WiFi, cùng 0,0.0.0 không thể giải quyết.
JKirchartz

0.0.0.0 có vẻ như là một khối tập tin máy chủ đối với tôi. Bất kỳ chặn quảng cáo? (Cập nhật câu trả lời.)
Broam

Tôi đã từng có một cái nhưng nó không thực sự hoạt động ... /system/etc/hostscó một loạt các URL trông có vẻ spam chỉ vào127.0.0.1
JKirchartz

0

Tôi sử dụng điều này trong Android từ adb. Có lẽ có những cách tốt hơn.

ip=$(ping -c 1 -W 1 example.com|grep PING|cut -d "(" -f 2|cut -d ")" -f 1)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.