关于同一局域网中,获取的IP非本地真实IP的问题。

4 篇文章 0 订阅
4 篇文章 0 订阅



关于同一局域网中,获取的IP非本地真实IP的问题。


目录结构










前言

		本博客结合 java 代码如下:
	/**
     * 获取本机的内网ip地址
     *
     * @return
     * @throws SocketException
     */
    public static String getInnetIp() throws SocketException {
        String localip = null;	// 本地IP,如果没有配置外网IP则返回它
        String netip = null;	// 外网IP
        Enumeration<NetworkInterface> netInterfaces;
        netInterfaces = NetworkInterface.getNetworkInterfaces();

        InetAddress ip = null;
        boolean finded = false;	// 是否找到外网IP
        while (netInterfaces.hasMoreElements() && !finded) {
            NetworkInterface ni = netInterfaces.nextElement();
            Enumeration<InetAddress> address = ni.getInetAddresses();
            while (address.hasMoreElements()) {
                ip = address.nextElement();
                if (!ip.isSiteLocalAddress()
                        &&!ip.isLoopbackAddress()
                        &&ip.getHostAddress().indexOf(":") == -1){// 外网IP
                    netip = ip.getHostAddress();
                    finded = true;
                    break;
                } else if (ip.isSiteLocalAddress()
                        &&!ip.isLoopbackAddress()
                        &&ip.getHostAddress().indexOf(":") == -1){// 内网IP
                    localip = ip.getHostAddress();
                }
            }
        }
        System.out.println("=================== ip ======================");
        System.out.println("内网:" + localip);
        System.out.println("外网:" + netip);
        System.out.println("=================== ip ======================");

        if (netip != null && !"".equals(netip)) {
            // 返回内网地址
            return localip;
            // 返回外网地址
//            return netip;
        } else {
            // 返回内网地址
            return localip;
        }
    }

查看是否开启了电脑上的 “投屏” 功能


解决办法:

 		关闭投屏功能即可。










禁用除 “WLAN” 外的其他 “本地连接”

  1. 看图。【禁用 “被代理的IP”
    在这里插入图片描述
    在这里插入图片描述
    禁用 “本地连接 * 2 ” 网卡即可。【这里 “本地连接 * 2” 是电脑 “投屏” 功能的网卡。】
    在这里插入图片描述
  2. 开启被禁用的网卡。【记住上图 “本地连接 * 2 ” 的 网卡名称。】
    1. 打开设备管理器。
    2. 找到 “网络适配器”
    3. 把禁用的网卡开启即可。【右击鼠标 点击 “启用设备” 即可】
      在这里插入图片描述
      在这里插入图片描述






回到顶部

END!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值