正常应该通过InetAddress.getLocalHost().getHostAddress();就能获取了。
可是安装VirtualBox后获取的IP地址却是VirtualBox的虚拟机Ip:192.168.56.1,
不是我的本机IP:192.168.0.101。网上查的有人说用for (NetworkInterface networkInterface : Collections.list(NetworkInterface.getNetworkInterfaces())) {
//也许 networkInterface.isVirtual() 能帮助获取正确的IP
}还有人说用NetworkInterface.getHardwareAddress()获取MAC地址来排除虚拟机IP。我对网络结构不是很清楚,所以求高手指点。
可是安装VirtualBox后获取的IP地址却是VirtualBox的虚拟机Ip:192.168.56.1,
不是我的本机IP:192.168.0.101。网上查的有人说用for (NetworkInterface networkInterface : Collections.list(NetworkInterface.getNetworkInterfaces())) {
//也许 networkInterface.isVirtual() 能帮助获取正确的IP
}还有人说用NetworkInterface.getHardwareAddress()获取MAC地址来排除虚拟机IP。我对网络结构不是很清楚,所以求高手指点。
解决方案 »
- 各位大侠帮我看看哪错了!!!
- 急!!!使用java如何生成XML
- java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
- 如何得到上个窗口的TITLE?
- 线程池问题,分我另外会补的,在线等
- 如何从String中读取每一个字符!!
- Java Swing JFrame 背景图片无法显示
- swing写的能搞成exe类型吗?
- 如何把回车的焦点落在一个JBUTTON上?
- JAVA菜鸟提问了,HELLOWORLD通不过!!
- 求助:关于继承与调用的问题!
- 初学者,关于强制类型转换问题
可以在虚拟机如vmware的设置里改虚拟网卡的地址和你的主机里的一样。
MAC地址在vmware里也能改的。
Company and Products MAC unique identifier (s)
Virtual Iron 4 00-0F-4B
Red Hat Xen 00-16-3E
Oracle VM 00-16-3E
XenSource 00-16-3E
Novell Xen 00-16-3E
Sun xVM VirtualBox 08-00-27
不过我只想知道怎么获取我想要的IP地址,有人知道怎么实现么?