【发布时间】:2017-07-22 03:14:51
【问题描述】:
我想要:
如果输入:<IP-Address> -> 输出(准确!!!):www.example.com
问题:如果我只有一个网站的 IP 地址 (51.254.201.70) 并且想找出它是哪个网站,我只会得到这样的信息:70.ip-51-254-201 。欧盟。我想得到确切的 www.webmoney.ru
我发现了什么:
package PACK;
import java.net.InetAddress;
import java.net.UnknownHostException;
public class IPtoHost4 {
// Input:www.webmoney.com -> Output: All IP-Adresses of this Page
public static void main(String[] args) throws UnknownHostException {
for (InetAddress addr : InetAddress.getAllByName("www.webmoney.ru")) {
System.out.println(addr.getHostAddress() + " : " + getHost(addr));
}
// Output:
// 5.199.142.158 : www.webmoney.ru
// 51.254.201.70 : www.webmoney.ru
// 62.210.115.140 : www.webmoney.ru
// 88.99.82.144 : www.webmoney.ru
// Input:All-IPs -> Output: hostnames
String[] ips = { "5.199.142.158", "51.254.201.70", "62.210.115.140", "88.99.82.144" };
for (String i : ips) {
InetAddress ip = null;
ip = InetAddress.getByName(i);
System.out.println(getHost(ip));
}
// Output:
// z158.zebra.servdiscount-customer.com
// 70.ip-51-254-201.eu
// 62-210-115-140.rev.poneytelecom.eu
// static.144.82.99.88.clients.your-server.de
}
static String getHost(InetAddress ip) {
String hostName = "";
hostName = ip.getHostName();
return hostName;
}
}
【问题讨论】:
-
您获得的那些域可能是 ips 的正确域。您可能会假设您正在查询的域正在重定向您。除此之外,“webmoney”和“.ru”看起来很可疑,所以要小心。
-
一个IP地址可以有多个域名(virtual hosting)。
-
嗨。我只有 Wireshark 的 IP 地址。我想找出我的用户从我的服务器访问的真正的 HTML 网站(DNS 服务器和域对我来说并不感兴趣)。
标签: java ip ip-address hostname