用java获取主机名和IP地址过程中所遇到的问题

用java编写代码获取主机名和IP地址过程中所遇到的问题

材料:windows、eclipse、WLAN网络

java代码

import java.io.IOException;
import java.net.InetAddress;
class  IPtoName{
public static void main(String [] args){
InetAddress host;
System.out.println("主机\t\tIP");
 try {
  host=InetAddress.getLocalHost();
  System.out.println(host);
 } catch (UnknownHostException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }
}

运行结果:

运行结果
在查看本机IP地址:
在这里插入图片描述
发现运行结果中IP并不是192.168.1.2而是192.168.56.1。这肯定不是凭空产生的。
查看本机其他网卡信息,发现这是我电脑第一个虚拟机的IP。

在这里插入图片描述禁用这张虚拟机网卡后(如何禁用网卡,去网上查吧)
在这里插入图片描述
运行结果:

在这里插入图片描述
然而结果还是不对,这是我第二个虚拟网卡的信息,没办法把电脑中的虚拟网卡全禁用后运行结果:
在这里插入图片描述终于正确了!

总结:

InetAddress.getLocalName()的返回值是本地主机的一个InetAddress对象。可理解为默认获取本地主机已开启的第一张网卡的网络信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值