根据 IP 地址查找计算机名称的命令是什么?
我总是忘记这个命令是什么,但我知道它存在于 Windows 中,并且我假设它存在于 *nix 命令行上。
答案1
答案2
在 *nix 上,您可以使用:
dig -x [address]
答案3
尝试“主持”
正向查找
host
:$ host google-public-dns-b.google.com. google-public-dns-b.google.com has address 8.8.4.4 google-public-dns-b.google.com has IPv6 address 2001:4860:4860::8844
反向查找
host
:$ host 8.8.4.4 4.4.8.8.in-addr.arpa domain name pointer google-public-dns-b.google.com.
类似于 dig
正向查找
dig
:$ dig google-public-dns-b.google.com. +short 8.8.4.4
反向查找
dig
:$ dig -x 8.8.4.4 +short google-public-dns-b.google.com.
顺便说一句:dig
它对命令行选项的排序很挑剔:
dig -x 8.8.4.4 +short
作品。dig +short -x 8.8.4.4
作品。dig -x +short 8.8.4.4
不起作用。
尝试“rdt”
这需要一些额外的设置。但是如果你这样做了,那么你就可以从命令行运行这个“rdt”PHP 脚本,这真是太棒了。它在正向查找和反向查找之间进行几次来回往返。
从这里下载:https://github.com/grawity/code/blob/master/net/rdt
示例。它工作时的样子如下:
$ rdt google-public-dns-b.google.com.
google-public-dns-b.google.com. = 2001:4860:4860::8844, 8.8.4.4
2001:4860:4860::8844 = dns.google
dns.google = 2001:4860:4860::8844, 2001:4860:4860::8888, 8.8.4.4, 8.8.8.8
2001:4860:4860::8888 = dns.google
8.8.8.8 = dns.google
8.8.4.4 = dns.google
答案4
我很清楚 dig/host/nslookup 是这些的标准工具,但我保留它们是为了测试操作系统的分辨率(本质上是为了测试 nsswitch.conf 是否正常工作):
获取主机名:
#!/usr/bin/perl
use Socket;
my @t = gethostbyname($ARGV[0]);
print "\$name = $t[0]\n"; shift(@t);
print "\$aliases = $t[0]\n"; shift(@t);
print "\$addrtype = $t[0]\n"; shift(@t);
print "\$length = $t[0]\n"; shift(@t);
foreach (@t) {
print " = ", inet_ntoa($_), "\n";
}
获取主机地址:
#!/usr/bin/perl
use Socket;
my @t = gethostbyaddr(inet_aton($ARGV[0]), AF_INET);
print "\$name = $t[0]\n"; shift(@t);
print "\$aliases = $t[0]\n"; shift(@t);
print "\$addrtype = $t[0]\n"; shift(@t);
print "\$length = $t[0]\n"; shift(@t);
foreach (@t) {
print " = ", inet_ntoa($_), "\n";
}
例子:
g3 0 /home/jj33/swap > gethostbyname www.google.com
$name = www.l.google.com
$aliases = www.google.com
$addrtype = 2
$length = 4
= 72.14.205.147
= 72.14.205.103
= 72.14.205.104
= 72.14.205.99
g3 0 /home/jj33/swap > gethostbyaddr 72.14.205.147
$name = qb-in-f147.google.com
$aliases =
$addrtype = 2
$length = 4
= 72.14.205.147