Windows双网卡上网原理以及配置方法

目录

1. 背景

2. IP路由原理

3. windows双网卡上网解决方案

3.1. 基础配置解决方案

3.2. 高阶配置解决方案


1. 背景

        在windwos上使用多网卡在工作和生活中是一个常见的操作,比如为了获取内部消息将有线连接到内部局域网中,为而了访问外网又将电脑的WIFI连接到手机热点,这样的网络结构按理说应该是既能访问内网又能访问外网,但实际情况是经常发现在启动了这样的双网卡后会出现外网却不能正常访问,归根到底还是windows的网络的路由策略不够智能导致,哪怕是目前最新的win11系统也是如此,当然windows也提供了一些手动配置方案。

2. IP路由原理

        对与单网卡情况下,当电脑主机要访问某目标ip时,首先会通过掩码判断目标ip是否为同一局域网网段的ip,若本机ip与目标ip为同一网段ip,这时电脑主机将数据直接发给目标ip;若本机ip与目标ip不为同一网段ip,这时主机就不能向目标ip直接发送数据而需要把发给目标IP的数据发给网关,由网关使用同样的方式寻找目标ip,直到数据达到目标ip。

        在电脑使用了多网卡后,对于同网段局域网ip流程与单网卡完全一致,但对于启动了多网卡后流程就会变得复杂,这时主机就会在选在选择有线网卡还是无线网卡来发送数据上犯难了,比如我们要访问的ip需要通过无线网卡但是电脑主机确将这个数据发送到有线网卡上,那么我们访问目标ip就会一直失败。虽然window系统不能智能的解决这个多网卡问题,但也提供了对应的手动的解决方案。

        首先通过命令行查看(“route -4 print”)单网卡路由信息:

        以上路由信息解释如下:

网络目标

目标网络或IP地址。“0.0.0.0”通常表示默认路由。它代表了“所有其他网络”或“未知网络”,并用来匹配任何没有特定匹配项的目标 IP 地址。

网络掩码

目标网络的子网掩码,用于判断是否为同网段网络

网关

作为跨网段的目的ip,数据包需要通过的网关

接口

数据包通过的本地网络接口

跃点数

用于选择最佳路径的成本值,值越低,优先级越高

        双网卡路由信息(其中10.0.23.210为外网ip,192.168.1.105为内网ip):

        可以看到双网卡的跃点数不一样,即网卡的优先级不一样,内网网卡的优先级高于外网网卡的,这样会导致访问外网会优先使用内网网卡而导致访问失败,我们只需将外网网卡的优先级设置得比内网网卡高就可以正常同时访问内外网了(跃点数越低网卡优先级越高)。

3. windows双网卡上网解决方案

        通过上面分析已知修改了外网ip的跃点数就能可以同时正常使用外网和内网,以下分别提供两种操作方式。

3.1. 基础配置解决方案

        在控制面板中“控制面板\所有控制面板项\网络连接”或者win+R输入 ncpa.cpl 打开网卡适配器设置

        将外网网卡的跃点数修改成比内网网卡的跃点数小,默认路由就会优先使用跃点数小的网卡,这里将外网的网卡跃点数修改成30(内网网卡的默认跃点数为35),修改后两个设备的跃点数如下:

        按上述修改后对外网访问就能恢复正常了,当然对内网也是正常的。

3.2. 高阶配置解决方案

        按上述基础配资解决方案后基本上可以愉快的使用双网卡了,但内网若存在跨网段,这个访问仍然是失败的,这是由于对于电脑主机来说跨网段的内网访问也相对于外网访问,这时已不能简单的通过修改跃点数来解决双网卡问题,这时为固定的ip或者ip段手动自动固定路由。

临时配置:route add 内网ip(或内网ip段) mask 掩码 默认网关

永久配置:route add 内网ip(或内网ip段) mask 掩码 默认网关

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/46409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为云GaussDB部署指南:主备架构的常见问题与解决方案

文章目录 华为云GaussDB部署指南:主备架构的常见问题与解决方案背景介绍部署步骤1.修改主机名2.软件安装检查3.禁用交换内存4.创建数据目录并挂载5.配置NTP时钟同步6.添加资源限制参数7.修改网卡的MTU8.上传安装工具包9.编辑集群配置文件10.修改集群安装模板11.安装…

木舟0基础学习Java的第二十天(线程,实现,匿名有名,休眠,守护,加入,设计,计时器,通信)

多线程 并发执行的技术 并发和并行 并发:同一时间 有多个指令 在单个CPU上 交替执行 并行:同一时间 有多个指令 在多个CPU上 执行 进程和线程 进程:独立运行 任何进程 都可以同其他进程一起 并发执行 线程:是进程中的单个顺…

【.NET全栈】ASP.NET开发Web应用——站点导航技术

文章目录 前言一、站点地图1、定义站点地图文件2、使用SiteMapPath控件3、SiteMap类4、URL地址映射 二、TreeView控件1、使用TreeView控件2、以编程的方式添加节点3、使用TreeView控件导航4、绑定到XML文件5、按需加载节点6、带复选框的TreeView控件 三、Menu控件1、使用Menu控…

字节抖音电商 后端开发岗位 一面

笔者整理答案,以供参考 自我介绍 项目(20分钟) RocketMQ延时消息的底层实现 回答: 延时消息的实现主要依赖于RocketMQ中的定时任务机制。消息被发送到Broker时,会先存储在一个特定的延时消息队列中。Broker会定时扫…

再议扩散模型

目录 一、基础知识 1、数学期望 2、概率表示 3、KL散度 二、扩散过程 三、理想的去噪过程 四、真实的去噪过程 五、噪声生成 导言 笔者早些时候曾粗略看过扩散模型的流程,但对于底层算法(尤其是概率论方面),理解不够透彻…

pytorch学习(五)tensorboard使用

1. 创建环境 首先创建一个环境: conda create -n pytorch conda activate pytorch 然后安装tensorboard pip install tensorboard 安装opencv pip install opencv-python 2. 简单的案例 标量和图像的显示: 2.1标量实现的方法是add_scalar,第一个参数是给显…

探索Puppeteer的强大功能:抓取隐藏内容

背景/引言 在现代网页设计中,动态内容和隐藏元素的使用越来越普遍,这些内容往往只有在特定的用户交互或条件下才会显示出来。为了有效地获取这些隐藏内容,传统的静态爬虫技术往往力不从心。Puppeteer,作为一个强大的无头浏览器工…

印尼语翻译通:AI驱动的智能翻译与语言学习助手

在这个多元文化交织的世界中,语言是连接我们的桥梁。印尼语翻译通,一款专为打破语言障碍而生的智能翻译软件,让您与印尼语的世界轻松接轨。无论是商务出差、学术研究,还是探索印尼丰富的文化遗产,印尼语翻译通都是您的…

Java(二十一)---栈的使用和模拟实现

文章目录 前言1.什么是栈(Stack)?2. 栈的模拟实现3.stack的使用![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/80c82d22f3ee49cfaa2915d1c961573e.png)4.关于栈的oj题4.1.有效的括号4.2.逆波兰表达式4.3.栈的压入、弹出序列4.4.最小栈 前言 前面几篇我们学习了顺序…

Vue--Router(路由)

目录 一 Router(路由) 1.作用 2.实现步骤 3.注意 一 Router(路由) 1.作用 Router又叫做路由,简单来说,就是用来实现vue的页面之间跳转的。 我们都知道,使用vue必然会涉及到很多个组件,也就是页面,而页面之间肯定需…

RK3588读取不到显示器edid

问题描述 3588HDMIout接老的显示器或者HDMI转DVI接DVI显示器显示不了或者显示内容是彩色条纹,但是这种显示器测试过如果接笔记本或者主机是可以直接显示的。这一类问题是HDMI下的i2c与显示器通讯没成功,读取不到设备的edid。问题包括全志的H3 、AML的S905都有遇到 测试环境…

Qt-事件与信号

事件和信号的区别在于,事件通常是由窗口系统或应用程序产生的,信号则是Qt定义或用户自定义的。Qt为界面组件定义的信号往往通常是对事件的封装,如QPushButton的clicked()信号可以看做对QEvent::MouseButtonRelease类事件的封装。 在使用界面组…

【QGroundControl二次开发】二.使用QT编译QGC(Windows)

【QGroundControl二次开发】一.开发环境准备(Windows) 二. 使用QT编译QGC(Windows) 2.1 打开QT Creator,选择打开项目,打开之前下载的QGC项目源码。 编译器选择Desktop Qt 6.6.3 MSVC2019 64bit。 点击运…

vue3-tree-org实现带照片的组织架构图

官方文档&#xff1a;vue3-tree-org 显示照片需要注意的地方 使用步骤 下载 npm install vue3-tree-org --save 在main.js中引入 import "vue3-tree-org/lib/vue3-tree-org.css"; import vue3TreeOrg from vue3-tree-org;app.use(vue3TreeOrg) 实现代码 <tem…

level 6 day2 网络基础2

1.socket&#xff08;三种套接字&#xff1a;认真看&#xff09; 套接字就是在这个应用空间和内核空间的一个接口&#xff0c;如下图 原始套接字可以从应用层直接访问到网络层&#xff0c;跳过了传输层&#xff0c;比如在ubtan里面直接ping 一个ip地址,他没有经过TCP或者UDP的数…

解决TypeError: __init__() takes 1 positional argument but 2 were given

问题描述&#xff1a; 如下图&#xff0c;在使用torch.nn.Sigmoid非线性激活时报错 源代码&#xff1a; class testrelu(nn.Module):def __init__(self):super().__init__()self.sigmoid Sigmoid()def forward(self, input):output self.sigmoid(input)return outputwriter…

Blackbox AI:你的智能编程伙伴

目录 Blackbox AI 产品介绍 Blackbox AI 产品使用教程 Blackbox AI体验 AI问答 代码验证 实时搜索 探索&代理 拓展集成 总结 Blackbox AI 产品介绍 Blackbox是专门为程序员量身定制的语言大模型&#xff0c;它针对20多种编程语言进行了特别训练和深度优化&#xff0c;在AI代…

React 从入门到实战 一一开发环境基础搭建(小白篇)

React 从入门到实战一一开发环境基础搭建&#xff08;小白篇&#xff09; React 介绍什么是 react &#xff1f;react 主要功能react 框架特点 开发工具渲染测试 React 介绍 最近两年&#xff0c;react 也愈来愈火热&#xff0c;想要在里面分一杯羹&#xff0c;那肯定逃不过 r…

Windows下使用Cygwin创建rsync服务端

1 下载Cygwin 访问官网Cygwin&#xff0c;点击setup-X86_64.exe即可开始下载 2 安装 前面全部默认。路径可以自己选择&#xff0c;站点选阿里云的&#xff0c;等待安装即可 3 配置 使用打开Cygwin安装后创建的快捷方式窗口&#xff0c;输入下面的指令将windows用户导入到cyg…

C语言中常见库函数(1)——字符函数和字符串函数

文章目录 前言1.字符分类函数2.字符转换函数3.strlen的使用和模拟实现4.strcpy的使用和模拟实现5.strcat的使用和模拟实现6.strncmp的使用和模拟实现7.strncpy函数的使用8.strncat函数的使用9.strncmp函数的使用10.strstr的使用和模拟实现11.strtok函数的使用12.strerror函数的…