jjzjj

InetAddress

全部标签

java - Linux 上 Java 中的 IP 地址

到目前为止,我一直使用以下方法获取我的IP地址:InetAddress.getLocalHost().getHostAddress()上述方法适用于Windows,但在linux上我总是得到127.0.1.1作为我的IP地址。我做错了什么? 最佳答案 我在Internet上找到了一些应该可以解决您的问题的代码:StringhostName=InetAddress.getLocalHost().getHostName();InetAddressaddrs[]=InetAddress.getAllByName(hostName);Str

java - 为什么 Java 的 InetAddress 类不将 ipv6 地址解析为其 FQDN?

我正在尝试使用Java编写一个简单的程序,给定版本4或6格式的IP,将返回其FQDN。以下代码在给定ipv4地址时工作正常,但仅在输入ipv6地址时才返回给定地址。InetAddressinet;try{inet=InetAddress.getByName(theIpAddress);}catch(UnknownHostExceptione){System.out.println("UnknownHost");return;}System.out.println(inet.getHostAddress(););System.out.println(inet.getHostName();

java - 完全合格的机器名 Java with/etc/hosts

我正在尝试用Java获取我的机器(Windows7x64)的完全限定名称。在我的机器上,我更新了c:\Windows\system32\drivers\etc\hosts文件,使其具有如下条目:10.44.2.167myservermyserver.domain.com我们所有的系统在\etc\hosts文件(以上述格式)中都有一个我无法更改的条目。以下代码总是返回“myserver”,我永远无法获得完全限定的名称。InetAddressaddr=InetAddress.getLocalHost();StringfqName=addr.getCanonicalHostName();我如

希望同时使用 Inet4Address 和 Inet6Address 的 Java 应用程序

我有一个Java应用程序需要通过套接字连接到两台不同机器上的两个不同服务器。一台服务器已配置为监听IPv4连接,而另一台已配置为监听IPv6连接。现在,假设“host1”是监听IPv4连接的服务器的机器名,而“host2”是监听IPv6连接的服务器的机器名。我需要获取“host1”的Inet4Address和“host2”的Inet6Address以创建到每个服务器的套接字连接,如下所示:Inet4Addressinet4=(Inet4Address)InetAddress.getByName("host1");InetSocketAddresssoc4=newInetSocketAd

java - 从给定的网络掩码计算 CIDR - Java

有没有办法使用任何Javalib/function/trick计算给定Subnetmask的CIDR?我一直在寻找一段时间,我能找到的所有东西都是来自CIDR->Netmask我需要它的另一种方式是Netmask->CIDR...我不是那个Java很方便,但我愿意阅读很多书=)谢谢大家PzP=) 最佳答案 举了一个简单的例子。这会将InetAddress转换为cidr值,它还会验证InetAddress代表有效的网络掩码。测试输入是255.255.128.0。输出cidr为17。packagecom.stackoverflow._1

java - 为什么 InetAddress.getByName ("1.2") 是有效的 ip 地址?

publicclassInetAddresTest{publicstaticvoidmain(String...agrs){try{InetAddressinet=InetAddress.getByName("1.2");System.out.println("Goodipaddress");}catch(UnknownHostExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}}顺便说一句,InetAddress生成的ip地址返回为“1.0.0.2”。我无法从InetAddress的javadoc中找到合理的

java - InetAddress.getHostAddress() 是否符合 ipv6 标准?

是InetAddress.getHostAddress()JDK1.6是否兼容ipv6?具体我在做什么InetAddress.getLocalHost().getHostAddress()是否符合ipv6标准?它对ipv4和v6地址都有效吗? 最佳答案 扩展类java.net.Inet6Address符合IPv6。Java文档:ThisclassrepresentsanInternetProtocolversion6(IPv6)address.DefinedbyRFC2373:IPVersion6AddressingArchitec

java - Java 中的 INET_NTOA 和 INET_ATON?

我使用Java(使用Spring框架)并希望在IPv4地址的数字表示(例如2130706433)和对应的文本(例如127.0.0.1)之间进行转换。通常,以编程语言提供执行此操作的方法(它们通常分别称为INET_NTOA和INET_ATON),但我无法在Java中找到它。有人知道它们叫什么或如何实现它们吗? 最佳答案 看InetAddress在javadocs中。标准API不直接支持这些函数,但您可以使用此类提取这两种表示形式。一个小例子:InetAddressaddress=InetAddress.getLocalHost();b

java - 如何根据IP地址获取主机名?

我想在我的程序中根据给定的IP地址查找主机名。是否可以获取它,如果可以,请提供代码。谢谢。 最佳答案 是的,有可能。importjava.net.*;publicclassHostName{publicstaticvoidmain(Stringargs[]){InetAddressinetAddress=InetAddress.getByName("127.64.84.2");//getthehostInetusingipSystem.out.println("HostName:"+inetAddress.getHostName()

java - 如何在 Java 中检查互联网连接

这个问题在这里已经有了答案:WhydoesInetAddress.isReachablereturnfalse,whenIcanpingtheIPaddress?(12个答案)关闭9年前。我正在开发一个需要始终连接到互联网的Java项目。我希望我的程序每隔一段时间(例如5或10秒)持续检查互联网连接,并在未检测到互联网连接时立即显示一条消息。我尝试过使用isReachable方法来实现这个功能,下面是代码-try{InetAddressadd=InetAddress.getByName("www.google.com");if(add.isReachable(3000))System.