解决同时连接wifi和网线无法上网的问题

现况:电脑双网卡,同时连接wifi和网线,运行应用程序需要连接wifi,但是wifi流量用完了,无法上网,而插网线可以上网,同时连接时访问外网网页失败,无法上网。

解决方案1:连wifi + 网线,然后写个脚本让.50走wifi,其他走网线

要理解 “连 WiFi + 网线,写脚本让.50 走 WiFi,其他走网线”,核心是通过脚本手动控制 “特定目标 IP(.50)” 和 “其他所有 IP” 的网络传输路径—— 本质是利用 “路由规则”,让不同目的地的数据包分别走 WiFi 或网线(以太网),实现 “分流上网”。

先拆解核心概念

在同时连 WiFi 和网线的场景下,电脑会默认按 “接口跃点数” 选优先级高的网络(比如默认网线优先级高于 WiFi),所有数据都走同一条路。而 “让.50 走 WiFi,其他走网线”,是打破默认规则,做定向分流:

1. “.50”:指某个具体的目标 IP 地址(完整格式通常是类似 192.168.1.50 的局域网 IP,或 203.0.113.50 的公网 IP),是你需要 “单独走 WiFi” 访问的设备 / 服务(比如家里的某台打印机、某台服务器)。

2. “其他”:指除了 .50 之外的所有 IP 地址(比如浏览网页、刷视频、访问其他网站 / 设备的 IP),这些数据全部走网线。

3. “写脚本”:通过代码(比如 Windows 的批处理、Linux/macOS 的 Shell 脚本)自动添加 / 删除 “路由规则”,避免手动配置的繁琐(手动配置重启后可能失效,脚本可实现开机自动生效)。

为什么需要这么做?本质是 “路由规则” 的定向控制

电脑发送数据时,会先查 “路由表”—— 这是一张记录 “不同目标 IP 该走哪个网络接口(WiFi / 网线)” 的规则表。默认情况下,路由表只按 “跃点数” 留一条 “通用规则”(比如所有数据都走优先级高的网线)。
而我们要实现的,是在路由表里添加一条 **“特殊规则”**:

1. 对 “目标 IP=.50” 的数据包:强制让它走 WiFi 的网络接口。

2. 对 “其他所有 IP” 的数据包:按默认规则走网线的网络接口。

脚本的核心逻辑(以 Windows 为例)

要实现这个分流,脚本需要做 3 件关键事(背后依赖 Windows 的 route 命令,用于管理路由表):

1. 先获取两个关键信息(脚本可自动获取,或手动填写)

  • WiFi 的 “网关 IP” 和 “接口索引”:
    网关是 WiFi 网络的 “出口”(比如家里 WiFi 路由器的 IP 192.168.3.1);接口索引是系统给 WiFi 分配的唯一标识(比如 15,可通过 route print 命令查看)。
  • 网线的 “网关 IP”:
    即网线连接的网络出口(比如公司内网路由器 IP 192.168.10.1)。

2. 删除旧规则(避免冲突)

如果之前手动加过针对 .50 的路由规则,脚本先删除它,防止新规则失效:
route delete 192.168.1.50(这里 .50 假设为 192.168.1.50)。

3. 添加新的 “定向路由规则”

核心命令是 route add,给 .50 单独加一条 “走 WiFi” 的规则,同时保留其他数据走网线的默认规则:
route add 192.168.1.50 mask 255.255.255.255 192.168.3.1 if 15 metric 10

解析这条命令:

  • 192.168.1.50:目标 IP(就是要走 WiFi 的 .50);
  • mask 255.255.255.255:子网掩码(表示 “只针对这一个 IP”,不是一个网段);
  • 192.168.3.1:WiFi 的网关 IP(数据到 .50 必须经过这个出口);
  • if 15:指定走 WiFi 的接口索引(强制数据从 WiFi 网卡走);
  • metric 10:跃点数(设为 10,比默认规则低,确保这条特殊规则优先生效)。

4. (可选)设置脚本开机自动运行

因为路由规则重启后会消失,所以需要把脚本放到 Windows “启动文件夹”(C:\Users\你的用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup),实现开机自动配置。

举个实际场景例子

比如你家里:

1. 网线连的是 “宽带主路由”(IP 段 192.168.1.0,网速快、稳定,用于日常刷视频、办公);

2. WiFi 连的是 “副路由”(IP 段 192.168.3.0,专门连智能家居,比如 192.168.3.50 是你的智能摄像头);

此时写脚本让 192.168.3.50(摄像头 IP)走 WiFi,其他 IP 走网线,就能确保:

1. 访问摄像头时,数据走智能家居专属的 WiFi(避免和网线的日常流量冲突);

2. 刷视频、办公时,数据走高速稳定的网线(不被摄像头的流量拖慢)。

总结

“连 WiFi + 网线,脚本让.50 走 WiFi,其他走网线”,本质是通过脚本手动管理系统路由表:给 “特定目标 IP(.50)” 加一条 “强制走 WiFi” 的特殊规则,让其他所有数据仍按默认优先级走网线,最终实现 “不同目标 IP 走不同网络” 的定向分流,满足特定场景下的网络需求(比如分流量、分设备、分服务)。
 
解决方案2:把wifi网卡的metric调大
以win10为例
1. 进入控制面板\网络和 Internet\网络和共享中心,点击更改适配器设置

image

2. 右键WLAN,选择属性,双击Internet协议版本4(TCP/IPv4)

image

3. 点击高级,修改接口跃点数为800

image

同时连接以太网和 WiFi 时无法上网,将 WiFi 的接口跃点数改成 800 后就能走以太网正常上网,这主要是由网络连接优先级导致的。具体原因如下:

1. 网络优先级原理:接口跃点数是用于确定网络路由优先级的数值,它表示使用该路由的成本。在多个网络连接可用的情况下,操作系统会根据跃点数来决定使用哪个网络连接。跃点数越低,网络连接的优先级越高,数据就会优先通过该连接进行传输。

2. 默认设置下的冲突:通常情况下,以太网的跃点数默认值较低,因为它的连接更稳定、速率更快。当同时连接以太网和 WiFi 时,电脑会优先选择以太网作为网络连接方式。如果此时以太网连接存在问题,如未正确配置 IP 地址、网线故障、路由器端口故障或以太网连接到的是一个未连接外网的局域网等,就会导致无法上网。

3. 修改跃点数后的变化:将 WiFi 的接口跃点数改成 800,会使 WiFi 的网络优先级变得比以太网低很多(一般以太网跃点数默认远低于 800)。此时,若以太网连接正常且可以访问外网,电脑就会按照优先级选择以太网作为网络传输路径,数据通过以太网传输,从而能够正常上网。

 

posted @ 2025-09-06 15:47  罗毅豪  阅读(104)  评论(0)    收藏  举报