首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

网卡-热点搜索不到或者无法连接问题

编程知识
2024年08月26日 23:16

大屏设置网卡开启热点后,经常收到反馈,手机端无法搜索到大屏热点、或者手机连接大屏热点失败

这类问题一般有以下几类情况:

1. 物理网卡IP与热点网卡IP相同

2. 热点网卡IP,非正常热点IP(192.168.137.X)

热点IP我们一般定为192.168.137.X,192.168.137.X是一个保留的IPv4地址范围。其中,X代表了特定设备在局域网中的唯一标识,通常是1到254之间的一个数字。

这个地址范围通常被用作局域网内部的私有IP地址,如Wi-Fi热点或者一些家庭网络

设置此私有IP地址范围为热点IP,可以避免与现有网络冲突。同时比较有特征的IP段可以让用户将局域网内的设备划分到特定的子网中,有利于管理和监控设备的连接和通信

针对上面2类情况,修复热点IP,

1. 物理网卡IP与热点网卡IP相同

-- 在物理网卡设置了某个热点IP如192.168.137.1时,热点网卡IP需要规避此IP。如果局域网中已经有DHCP服务器在分配IP地址,而热点设备也在尝试分配IP地址,可能会引起IP地址分配冲突,导致网络连接问题。虽然不建议物理网卡分配此IP,但出现问题我们貌似只能通过热点虚拟网卡来规避此冲突了

2. 热点网卡IP,非热点IP(192.168.137.X)

-- 热点为私有网络,建议用热点专有IP域,可以减少与局域网正常分配IP之间的冲突。

以下是修复代码,团队内部开发的网卡一部分业务逻辑:

 1     /// <summary>
 2     /// 修复IP冲突
 3     /// </summary>
 4     public async Task RepairIpConflictAsync()
 5     {
 6         var allNetworks = await GetAllNetworkInfosAsync();
 7         // 获取到当前虚拟网卡
 8         var virtualAdapter = allNetworks.FirstOrDefault(x => x.IPEnabled &&
 9                                                            x.Description.Contains(VirtualWifiDescription));
10 
11         if (virtualAdapter == null) return;
12         //实际网卡是否使用了热点IP
13         var physicalCardErrorIps = new List<string>();
14         foreach (var x in allNetworks.Where(x => !x.Description.Contains(VirtualWifiDescription)))
15         {
16             physicalCardErrorIps.AddRange(x.Ipv4Array.Where(ip => ip.StartsWith("192.168.137.")));
17         }
18         var isVirtualCardCorrectIp = virtualAdapter.Ipv4Array.FirstOrDefault(x => x.StartsWith("192.168.137.")) != null;
19         //物理网卡未使用热点IP,且虚拟网卡在使用热点IP,不需要修复IP
20         if (physicalCardErrorIps.Count == 0 && isVirtualCardCorrectIp)
21         {
22             return;
23         }
24         var defaultHotspotIp = "192.168.137.1";
25         if (physicalCardErrorIps.Count > 0)
26         {
27             for (var i = 1; i < 255; i++)
28             {
29                 var ip = $"192.168.137.{i}";
30                 if (physicalCardErrorIps.Contains(ip)) continue;
31                 defaultHotspotIp = ip;
32                 break;
33             }
34         }
35         var networkAdapter = new NetworkAdapterController(virtualAdapter.SettingID);
36         networkAdapter.SetIPAddress(defaultHotspotIp, "255.255.255.0");
37     }

先获取当前虚拟网卡"Microsoft Wi-Fi Direct Virtual Adapter",virtual adapter一般会有多张,选择IPEnabled=true的那张(在网络适配器上绑定并启用 TCP/IP)。

物理网卡可能存在使用热点IP,所以接下来获取所有使用热点IP的IP列表,用于后续给热点网卡规避这些IP。

虚拟网卡是否采用热点IP,未采用的话也需要重新设置下。

所以,根据网卡ID标识,设置此虚拟网卡为192.168.137.X范围的热点IP、以及默认掩码"255.255.255.0"。同时跳过物理网卡已经使用的热点IP,规避IP冲突

 

From:https://www.cnblogs.com/kybs0/p/18253301
本文地址: http://shuzixingkong.net/article/1470
0评论
提交 加载更多评论
其他文章 Tomcat的配置文件中有哪些关键的配置项,它们分别有什么作用?
Tomcat的配置文件主要包括server.xml和web.xml,它们位于Tomcat安装目录下的conf文件夹中。今天的内容重点介绍 server.xml 文件的配置,V 哥会结合一些业务场景来介绍,希望可以帮助到你,以下是一些关键的配置项及其作用: server.xml中的配置项: &lt;S
详细分析平衡树-红黑树的平衡修正 图文详解(附代码) (万字长文)
目录红黑树简述性质/规则主要规则:推导性质:红黑树的基本实现struct RBTreeNodeclass RBTree红黑树的插入红黑树插入修正前言什么时候需要变色:变色的基础:为什么需要旋转与变色变色:旋转需要修正的所有情况先认识最简单的情况1. 叔叔是红色结点注意:2.没有叔叔结点3. 叔叔是黑
详细分析平衡树-红黑树的平衡修正 图文详解(附代码) (万字长文) 详细分析平衡树-红黑树的平衡修正 图文详解(附代码) (万字长文) 详细分析平衡树-红黑树的平衡修正 图文详解(附代码) (万字长文)
Flask细说
Flask框架 简介 特点: 微框架,间接,给开发者提供很大的扩展性 Flask和相应的插件写得很好,用起来很爽。 开发效率非常高,比如使用 SQLAlchemy 的 ORM 操作数据库可以节省开发者大量书写 sql 的时 间。 文档地址 中文文档(http://docs.jinkan.org/do
Flask细说 Flask细说 Flask细说
基于事件总线EventBus实现邮件推送功能
有时候,有人给我的网站留了言,但是我必须要打开我的网站(https://www.xiandanplay.com/)才知道,所以我便决定给网站增加一个邮件推送的功能,好让我第一时间知道。于是乎,按照我自己的思路,同时为了去学习了解rabbitmq以及EventBus概念,我便设计了一套邮件推送的功能,
基于事件总线EventBus实现邮件推送功能 基于事件总线EventBus实现邮件推送功能
6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh
1、Chaos Mesh 介绍 Chaos Mesh是一个开源的混沌工程平台,旨在帮助用户在生产环境中测试、验证和优化其应用程序的可靠性和稳定性。通过引入故障注入和混沌工程原则,Chaos Mesh可以模拟各种故障场景,如网络延迟、节点故障、磁盘故障等,以帮助用户发现和解决系统中的潜在问题。 项目地
6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh 6.2K star!推荐一款开源混沌工程测试平台:Chaos Mesh
零基础学习人工智能—Python—Pytorch学习(九)
前言 本文主要介绍卷积神经网络的使用的下半部分。 另外,上篇文章增加了一点代码注释,主要是解释(w-f+2p)/s+1这个公式的使用。 所以,要是这篇文章的代码看不太懂,可以翻一下上篇文章。 代码实现 之前,我们已经学习了概念,在结合我们以前学习的知识,我们可以直接阅读下面代码了。 代码里使用了,d
零基础学习人工智能—Python—Pytorch学习(九)
One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024
通过对多样化基准的严格评估,论文展示了现有特定方法在实现跨领域推理以及其偏向于数据偏差拟合方面的缺陷。从两阶段的视角重新审视视觉推理:(1)符号化和(2)基于符号或其表示的逻辑推理,发现推理阶段比符号化更擅长泛化。因此,更高效的做法是通过为不同数据领域使用分离的编码器来实现符号化,同时使用共享的推理
One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024 One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024 One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024
折腾 Quickwit,Rust 编写的分布式搜索引擎-官方配置详解
Node configuration(节点配置) 节点配置允许您为集群中的各个节点自定义和优化设置。它被分为几个部分: 常规配置设置:共享的顶级属性 Storage(存储)设置:在storage部分定义 https://quickwit.io/docs/configuration/node-conf
折腾 Quickwit,Rust 编写的分布式搜索引擎-官方配置详解