Java 关于按名称获取IP地址
我想核实一件事 例如,有一个应用程序向其名为www.coolapp.com的服务器发送请求,我可以通过以下方式获取此服务器的IP地址:Java 关于按名称获取IP地址,java,networking,network-programming,Java,Networking,Network Programming,我想核实一件事 例如,有一个应用程序向其名为www.coolapp.com的服务器发送请求,我可以通过以下方式获取此服务器的IP地址: String serverIp = InetAddress.getByName("www.coolapp.com"); 但是,如果应用程序设计为在地理位置上连接到不同的服务器,则此函数是否返回应用程序连接到的服务器的相应IP,尽管主机名相同www.coolapp.com 例如,我在欧洲使用该应用程序,它连接到德国的服务器,服务器主机名是www.coolapp.
String serverIp = InetAddress.getByName("www.coolapp.com");
但是,如果应用程序设计为在地理位置上连接到不同的服务器,则此函数是否返回应用程序连接到的服务器的相应IP,尽管主机名相同www.coolapp.com
例如,我在欧洲使用该应用程序,它连接到德国的服务器,服务器主机名是www.coolapp.com IP是182.12.12.12。然后,如果我去日本旅行,应用程序正在连接到www.coolapp.com,IP是123.13.13.13。API会根据地理位置返回相应的IP吗?InetAddress.getByName执行DNS查询,因此DNS规则适用
在DNS中,您可以在不同的地理位置获得不同的IP。但是,DNS还允许为每个DNS名称定义更多IP。在这种情况下,大多数DNS解析程序在地址之间交替,因此即使在一个图形位置,您也可能在两个连续查询中获得不同的IP。这可能会导致您无法获得连接到的相同IP
请注意,这可能会受到途中或计算机上任何缓存的影响