UNIXホストにログインせずにIPがわかっているUNIXホストのホスト名を見つける必要があります
11 に答える
nslookupを使用する
nslookup 208.77.188.166
...
Non-authoritative answer:
166.188.77.208.in-addr.arpa name = www.example.com.
を使用してDNS逆引き参照を実行することもできますhost
。引数としてIPアドレスを指定するだけです。
$ host 192.168.0.10
server10 has address 192.168.0.10
逆ルックアップに使用できる別の NS ルックアップ ユーティリティにはdig
、次の-x
オプションがあります。
$ dig -x 72.51.34.34
; <<>> DiG 9.9.2-P1 <<>> -x 72.51.34.34
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12770
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1460
;; QUESTION SECTION:
;34.34.51.72.in-addr.arpa. IN PTR
;; ANSWER SECTION:
34.34.51.72.in-addr.arpa. 42652 IN PTR sb.lwn.net.
;; Query time: 4 msec
;; SERVER: 192.168.178.1#53(192.168.178.1)
;; WHEN: Fri Jan 25 21:23:40 2013
;; MSG SIZE rcvd: 77
また
$ dig -x 127.0.0.1
; <<>> DiG 9.9.2-P1 <<>> -x 127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11689
;; flags: qr aa ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;1.0.0.127.in-addr.arpa. IN PTR
;; ANSWER SECTION:
1.0.0.127.in-addr.arpa. 10 IN PTR localhost.
;; Query time: 2 msec
;; SERVER: 192.168.178.1#53(192.168.178.1)
;; WHEN: Fri Jan 25 21:23:49 2013
;; MSG SIZE rcvd: 63
発掘マンページからの引用:
逆引き -- アドレスを名前にマッピング -- は、 -xオプションによって簡素化されます。addr は、ドット付き 10 進数表記の IPv4 アドレス、またはコロンで区切られた IPv6 アドレスです。このオプションを使用する場合、name、class、および type 引数を指定する必要はありません。dig は 11.12.13.10.in-addr.arpa のような名前のルックアップを自動的に実行し、クエリ タイプとクラスをそれぞれ PTR と IN に設定します。
Windows の場合 ping -a 10.10.10.10
Windows の場合は、次を試してください。
NBTSTAT -A 10.100.3.104
また
ping -a 10.100.3.104
Linux の場合は、次を試してください。
nmblookup -A 10.100.3.104
それらはほとんど同じです。
python -c "import socket;print(socket.gethostbyaddr('127.0.0.1'))"
名前だけが必要で、追加情報が必要ない場合は、最後に [0] を追加します。
python -c "import socket;print(socket.gethostbyaddr('8.8.8.8'))[0]"
それは文脈に依存します。オペレーティング システムのホスト名を参照していると思います (hostname
ログイン時に返される)。このコマンドは内部名のみを対象としているため、マシンの名前を照会するには別の命名システムが必要です。DNS、DHCP、LDAP (DN) などを含む名前を使用してホストを識別する複数のシステムがありhostname
、多くのシステムはzeroconfを使用して複数のネーミング システム間で名前を同期します。このため、 からの結果は(以下を参照) または他の命名システムhostname
からの結果と一致することがありますが、多くの場合、一致しません。dig
DNSは最も一般的であり、インターネット ( などgoogle.com. A 216.58.218.142
) と自宅 (mDNS/LLMNR)の両方で使用されているため、逆引き DNS ルックアップを実行する方法は次のとおりです: dig -x <address>
(nslookup
よりhost
単純で、詳細が少なく、異なる結果を返すことさえあります結果; ただし、dig
Windows には含まれていません)。
CDN内のホスト名は正規のドメイン名 (「google.com」など) に解決されず、クエリしたホスト IP のホスト名 (「dfw25s08-in-f142.1e100.net」など) に解決されることに注意してください。興味深いヒント: 1e100 は 1 グーゴルです)。
また、DNS ホストは複数の名前を持つことができることに注意してください。これは、複数の Web サーバー (仮想ホスティング) を持つホストでは一般的ですが、仮想化テクノロジの普及により、あまり一般的ではなくなりつつあります。これらのホストには、複数の PTR DNS レコードがあります。
最後に、DNS ホスト レコードは/etc/hosts経由でローカル マシンによって上書きされる可能性があることに注意してください。期待するホスト名が得られない場合は、このファイルを確認してください。
DHCPホスト名は、使用されている DHCP サーバー ソフトウェアに応じて異なる方法でクエリされます。これは、(私の知る限り) プロトコルでクエリの方法が定義されていないためです。ただし、ほとんどのサーバーはこれを行うための何らかの方法を提供しています (通常は特権アカウントを使用)。
通常、DHCP 名は DNS サーバーと同期されるため、DHCP クライアントの最小テーブルと DNS サーバーの A (または IPv6 の場合は AAAA) レコードに同じホスト名が表示されるのが一般的です。繰り返しますが、これは通常、zeroconf の一部として行われます。
また、クライアントに DHCP リースが存在するからといって、それがまだ使用されているわけではないことに注意してください。
NetBIOS for TCP/IP (NBT)は名前解決を実行するために何十年も使用されていましたが、名前解決のために LLMNR に置き換えられました(Windows の zeroconf の一部)。nbtstat
このレガシー システムは、 (Windows) またはnmblookup
(Linux)で引き続きクエリできます。
ここでの他の答えは正しいです-逆引きDNSルックアップを使用してください。スクリプト言語(Python、Perl)を介してそれを実行したい場合は、gethostbyaddrAPIを使用できます。
tracerouteコマンドも使用できます。
http://linux.die.net/man/8/traceroute
tracerouteを使用するだけで、ホスト名(解決されたIP)を含むルーティングパスが表示されます
ほとんどの場合、traceroute コマンドは正常に機能します。nslookup およびホスト コマンドが失敗する場合があります。