Android端末でnslookupができませんか?


14

LG Allyのドメインにtelnetで接続しようとするたびに失敗しますが、IPアドレスを使用すると動作します。だから私は使用しようとしましたがnslookup telehack.com、それは返されます:

Server:       0.0.0.0
Address 1:    0.0.0.0

nslookup: can't resolve 'telehack.com'

私が持っているAndroidのターミナルエミュレータBusyBoxのがインストールされ、

デフォルトのDNSでは機能していなかったため、DNSエントリをOpenDNSに設定しましたが、まだ解決しません。

これを解決するためにできることはありますか、それとも同盟国の制限ですか?


私はそのドメインまたはその問題の任意のドメインでNSlookupを実行しても問題ありません。
ライアンコンラッド

ネットワーク設定はどのようなものですか?ポートがブロックまたは転送されていますか?
マシュー

私は同じ問題を抱えています。
マックスリード

回答:


4

これは、静的にリンクされたlibresolvおよびglibcを使用する場合の設計上の既知の問題です。

次の2つのオプションがあります。

  1. glibcではなく、Google Androidのネイティブlibc Bionicライブラリを使用します。

  2. busyboxをビルドしてライブラリを検索します/system/lib(または必要なリンクを作成します(例/usr/lib -> /system/lib))。ld-linux.so.3、libc.so.6、libresolv.so.2、libnss_dns.so.2を/system/lib


あなたは私にギブソンをhaxxorしたいですか?何?
-JKirchartz

1

実行してターミナルエミュレータ環境にDNSが正しく設定されていることgetprop net.dns1を確認し、必要に応じてを設定しsetprop net.dns1 [yourdns]ます。コマンドは、デバイス、使用net.eth0.dns1方法net.gprs.dns1、またはgetpropパラメータなしで実行され、ヒントのすべての設定プロパティを表示することによって異なる場合があります。


DNSが設定されているため、デフォルトからopenDNSに変更しましたが、まだ機能しません...
JKirchartz

nslookup正しいサーバーアドレスを与えるか、それはまだ表示されませんか0.0.0.0
onik

まだ0.0.0.0と表示されます
JKirchartz

DHCPサーバーがIPv4アドレスを配布しているにもかかわらず、getpropが存在し、DNSサーバーのIPv6アドレスを返します。しかし、setpropは存在しません。
マイケル

1

端末を入力し、「su」と入力してEnterキーを押します(ルート化された電話がある場合のみ機能します)

$ su
#

次に、次を入力します(xxxxをDNSサーバーのIPに置き換えます)

# 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システムによって接続が変更されるたびにが上書きされる可能性が高いことに注意してください。
フロー

実際、私はこれをどんなAndroidデバイスでも決して起こらなかった...それは変わりません(私はresolv.confにハードコードされたプライベートDNSサーバー(ローカル)があるのでこれを知っていて、実際に手動で設定する必要があります)他のネットワーク(詳細ダイアログを使用))
ミカ

1

ターミナルIDEのGoogleコードページの問題に投稿したコメントから回答をコピーしました(そして少し変更しました)が、同じである必要があります。

ルート化されている場合は、busyboxの最新バージョンをインストールできます(コンパイルできる場合があります)。その後、busyboxが更新された場所を見つけて、次のコマンドを実行します(新しいバージョンが存在/system/binし、古いバージョンが存在すると仮定しています~/system/bin)。

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

これで、ドメインが適切に解決されます。

注:busyboxの動作方法により、使用するにはrootである必要がありますping(ただしwgetnslookup必要が今ではホストを適切に解決できる必要があります)。busybox開発者はこの問題に取り組んでいます。

個人的にこのアプリケーションを使用して最新バージョンをインストールしました:https : //play.google.com/store/apps/details?id=stericson.busybox


0

どのネットワークを使用していますか?Wifiの場合、ネットワーク上の他のマシンからアクセスできますか?キャリアデータプランの場合...ブロックされていますか?

更新:0.0.0.0は、hostsファイルブロックのように思えます。広告ブロッカーはありますか?Adblock plus?ファイルの変更をホストしますか?

USBネットワークを試してください-ここにコメントを投稿する場合は、質問を更新してチュートリアルを入力します(関与しています、GNU / Linuxマシンでそれを行う方法しか知りません)


3g(verizon)またはWiFiでは動作せず、同じ0.0.0.0でも解決できません。
JKirchartz

0.0.0.0は、hostsファイルブロックのように思えます。広告ブロッカーはありますか?(回答を更新します。)
ブラム

以前は1つ持っていましたが、実際には機能しませんでした... /system/etc/hostsスパムのように見えるURLが127.0.0.1
多数

0

私はadbからAndroidでこれを使用します。たぶんより良い方法があります。

ip=$(ping -c 1 -W 1 example.com|grep PING|cut -d "(" -f 2|cut -d ")" -f 1)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.