在我的unix vm中,我可以在/ etc / hosts中提供以下条目
ABC_XYZ_HOSTNAME.abc.com 15.115.112。***之后我可以" ping ABC_XYZ_HOSTNAME.abc.com
"成功。但我的代码正在打破
InetAddresses.forString(ip)
例外,带有IP字符串文字的IllegalArgumentException无效。
所以问题是,下划线是否支持主机名或其他错误?
答案 0 :(得分:2)
您无法在InetAddresses.forString
中使用DNS名称。此方法的javadoc说明:
返回具有给定字符串表示形式的InetAddress。
这故意避免所有名称服务查找(例如没有DNS)。
参数: ipString - 包含IPv4或IPv6字符串文字的字符串,例如“192.168.0.1”或“2001:db8 :: 1”
DNS名称不是有效值。
对于DNS lookup of your address,您应该使用
InetAddress.getByName(host)