- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试了 InetAddress.getLocalHost().getHostAddress()
来获取用户的互联网地址。它给了我 127.0.1.1
但我正在寻找更像 192.168.1.75
的东西。知道如何获得我正在寻找的地址吗?谢谢 - 泰勒
编辑:我有Ubuntu。记住这一点。我将我的程序导出到一个 jar 并在我妈妈的 Windows 笔记本电脑上运行它。它告诉我正确的地址。即 192.168.1.64
。我戴的还是不对。
最佳答案
这意味着您以某种方式错误配置了本地解析器。getLocalHost()
应该返回真实的本地IP地址,getLoopbackAddress()
返回环回地址,通常是127.0.0.1
(你说你得到的是 127.0.1.1
;虽然这并非不可能,但我仍然认为这是一个错字?)
您可以在 getLocalHost()
的 Java 代码中识别出几种情况,这将使它返回环回地址而不是真实地址:
本地主机名设置为localhost
String local = impl.getLocalHostName();
// [...]
if (local.equals("localhost")) {
return impl.loopbackAddress();
}
您的代码没有获取本地主机地址的权限(它可能是没有权限的小程序或 Java WebStart 应用程序)
} catch (java.lang.SecurityException e) {
return impl.loopbackAddress();
}
然而,在其他情况下,它应该抛出一个 UnknownHostException
。
如果您的问题是 1,那么您需要将机器的主机名更改为可以解析回计算机 IP 号的名称。
如果您的问题是第 2 点,那么您需要确保您的代码获得适当的许可,例如通过签署 applet 或 webstart 应用程序。
关于java - InetAddress.getLocalHost().getHostAddress() 返回不需要的地址 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27200158/
我写了一个小测试程序,它使用 Dns.GetHostAddresses 来解析主机名。如果我输入一个不存在的主机名,它会抛出一个 SocketException 并且消息将是 No such host
我一直试图找到使用 GetHostAddresses 或 GetHostEntry 的正确位置。我通过阅读这篇文章 (http://msdn.microsoft.com/en-us/library/m
我正在编写一个使用 C# 解析域 IP 地址的脚本 问题是我有很多域无法解析为 IP,因此代码 (Dns.GetHostAddresses) 运行了很长时间,试图解析域的 IP没有 IP。 这是代码:
InetAddress address= InetAddress.getLocalHost(); System.out.println(address.getHostName()+ "------"+
我正在尝试使用 WifiManager 和 WifiInfo 类获取我的手机 IP 地址。 它返回正确的 ip 地址反转。 public String getWifiIpAddress() {
我有一个用 Java 编写的遗留服务器应用程序,在过去的六年里,它在运行 Java 6 的 Windows 2003 机器上运行良好。 我们最近将应用程序迁移到运行最新版本 java 的全新 wind
这是我尝试过的: @Test public void local_host_test() { InetAddress inetAddress = Mockito.mock(InetAddres
我正在开发 uwp 应用程序。我编辑了主机文件并将 www.example.com 重定向到本地服务器 IP (192.168.1.187)。在浏览器中网站加载正确但在应用程序中 System.Net
Dns.GetHostAddresses 真的能取回所有注册的 IP 吗? 也就是说,DNS 可以针对一个 DNS 名称注册多个 IP,以用于循环类型目的(例如,多个代理服务器,但使用一个主要的 DN
我有两个设备 - Note 3 (N9005) 和 G Pad 8.3(也用 Nexus 4 而不是 note 3 进行了测试,结果相同)。 当我在 Note 3 是组所有者时创建 Wifi P2P
我尝试了 InetAddress.getLocalHost().getHostAddress() 来获取用户的互联网地址。它给了我 127.0.1.1 但我正在寻找更像 192.168.1.75 的东
我想加入要在消息框中显示的字符串,但不确定为什么会在这一行出现错误: IPAddress[] ips = Dns.GetHostAddresses(he.HostName); var addr = s
是InetAddress.getHostAddress() JDK 1.6 是否兼容 ipv6? 具体我在做什么 InetAddress.getLocalHost().getHostAddress()
我正在使用 Java 在一个类中构建一个简单的方法,该方法将获取用户计算机的 LAN IPv4 地址。对于大多数部分,这很好用,除了一个异常(exception)......我得到的 IP 地址是我的
我正在创建 TCP 套接字应用程序。在服务器端, ss = new ServerSocket(10000); Socket socket = ss.accept(); String remoteIp
我已经对此进行了相当多的搜索,但仍然没有任何运气。问题是,如果我从我的服务器进行 nslookup,如果主机有 IPv6 地址,我会在列表中看到它。但是,如果我使用 .Net System.Net 的
因此,我正在使用 Xamarin 和 .net 在 iOS 项目中实现 uPNP。我一直在努力为本地设备(即运行程序的设备)获取有效的本地 IP 地址。 我已尝试使用 NetworkInterface
用下面的代码 InetAddress.getLocalHost().getHostAddress(); 可以获取主机地址。但是 JVM 是如何发现它的呢? Java API 只告诉您它返回它 ( AP
我正在使用一个库,该库使用 java.net.InetAddress.getLocalHost().getHostAddress() 来获取我的本地 IP 地址。但是,这总是在我的计算机上返回一个 I
我正在开发一个 Android 应用程序,它可以返回连接到 WI-FI 网络的设备的 IP 地址。当我使用代码时 InetAddress.getLocalHost().getHostAddress()
我是一名优秀的程序员,十分优秀!