最新资讯

  • Linux:深入理解网络层

Linux:深入理解网络层

2025-05-14 07:37:43 1 阅读

网络层在复杂的网络环境中确定一个合适的路径.传输到指定的网络中

一、网络层的理解

问题1:为什么要有网络层的概念呢??

——>我们先来讲一个故事:

      假设我在学校里被誉为数学大神,是因为我的数学有考满分的能力,但是这种形容只能说明我有很大概率能考满分,而不是说我一定能考满分!!

        那我要怎么保证每次都考满分呢??假设我的三叔是学校的教导主任,当我发现这次考试因为粗心没考满分的时候,三叔就会公布此次考试无效,然后让教务处重新出一份试卷再考一次,多考几次那么基本可以保证满分了!!

        而此时我是一个具备满分能力的执行者(前提),而三叔是一可以通过重考的决策帮助我百分百考满分的人,所以能力+策略可以完美地完成这件事

        此时我就相当于是IP层(跑腿的能力),而三叔就相当于是TCP层(提供可靠性决策)。所以总的来说,用户需要的是一种可以将数据可靠地跨网络从A主机送到B主机的能力,而其中IP协议的本质工作就是提供一种能力,将数据跨网络从A主机送到B主机!而TCP协议就是提供策略保证这个过程的可靠性。 

 问题2:数据是如何通过IP层发送给给对方的呢??

——>我们常说唐僧自东土大唐而来要去往西天取经,其中西天是目标城市(网络)、大雷音寺是目标地点(主机)、佛祖就是目标人物(进程)。

      找到主机后将数据交给具体进程是传输层的事情,而找到主机是IP层的事情,所以这就需要我们对所有的主机进行标识,通过源IP和目的IP来标识源主机和目的主机!

     而要找到该主机,我们还需要确认他在哪个局域网里面,所以IP=目标网络+目标主机!(让我们可以在构建网络的时候为将来快速定位一台主机提供基础保证!!) 

    所以我们的IP层会先找到目标网络(通过路由器转发),等找到了之后,再在该网络里用mac地址去定位具体的主机,然后将数据传给他!! 

问题3:如何理解  目标网络+目标主机可以快速定位呢??

——> 我们来讲个故事

    其实我们生活在一个精心设计的世界里,假设我们学校的学号为  学院+学号。  前三位标识学院,后三位标识学生序号。假设计算机学院的编号是123,理学院是124,材料是125,电气是432,经管是223。我们每个学院都有一个群,而每个学院的学生会主席也有一个群。

  我是计算机123009学生,我有一天捡到了一个钱包,上面写的是432008,但是我只知道计算机学院开头是123,但是这个432我并不清楚,于是我只能去学校门口一个个问,但是查找本质上是排除,因此这种线性遍历的效率太低了!! 

  于是我又想了一个方法,虽然我不知道432是哪个学院的,但是我们学生会主席和各学院的主席都在一个群里,所以他肯定知道432是哪个学员的!!于是我就在我们的学院群里面@计算机学生会主席,然后我们主席一看这个432是电气的,于是就在主席群里@电气的学生会主席 ,然后电气主席看到了再在他们学员群里@432008同学!!这样就很快找到了 !!为什么归还的效率变快的呢??因为我们排除的效率变高了!!当我们确认432是电气学院的时候,其实就已经将其他所有学院的人都排除了!!

     同理,学院就相当于是目标网络,而学生就相当于是目标主机,如果我们能够优先定位到目标网络,就可以排除一大堆其他网络,因此我们的IP在设计的时候肯定也得遵循这种方式!

二、IP协议的报头 

主机: 配有IP地址, 但是不进行路由控制的设备;

路由器: 即配有IP地址, 又能进行路由控制;

节点: 主机和路由器的统 称;

 ​​​

1、4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4.

2、4位头部长度(header length): IP头部的长度是多少个32bit, 也就是 length * 4 的字节数. 4bit表示最大 的数字是15, 因此IP头部最大长度是60字节.

     通过头部长度-20可以知道是否携带选项 

3、8位服务类型(Type Of Service): 3位优先权字段(已经弃用), 4位TOS字段, 和1位保留字段(必须置为0). 4位TOS分别表示: 最小延时, 最大吞吐量, 最高可靠性, 最小成本. 这四者相互冲突, 只能选择一个. 对于ssh/telnet这样的应用程序, 最小延时比较重要; 对于ftp这样的程序, 最大吞吐量比较重要.

      服务类型就是一个自主策略,因为IP的路径选择是有多种方案的,而我们可以根据具体的需求去选择并给路由器一个提供转发的策略

4、16位总长度(total length): IP数据报整体占多少个字节.

     我们会发现IP报头有长度!说明他也是面向数据报形式一块块发送的!!

      而字节流动是TCP层给用户层提供的一个概念(就像你看到十字路口的人流一样,在你眼里是人流,但是其实他们是从各个方向走过来的) 他想表明的含义就是你别管我里层的数据从哪来的,是什么类型的,你就统一当做字节流去处理!!而IP层显然是没有这个概念的!

    所以只有目标主机能够看到TCP报文,中间路由器只能看到网络层,就相当于快递只知道快递去哪但是不知道快递是什么!! 

5、16位标识(id): 唯一的标识主机发送的报文. 如果IP报文在数据链路层被分片了, 那么每一个片里面的这个id都是相同的.

6、3位标志字段: 第一位保留(保留的意思是现在不用, 但是还没想好说不定以后要用到). 第二位置为1表示禁 止分片, 这时候如果报文长度超过MTU, IP模块就会丢弃报文. 第三位表示"更多分片", 如果分片了的话,最后一个分片置为1, 其他是0. 类似于一个结束标记.

7、13位分片偏移(framegament offset): 是分片相对于原始IP报文开始处的偏移. 其实就是在表示当前分片 在原报文中处在哪个位置. 实际偏移的字节数是这个值 * 8 得到的. 因此, 除了最后一个报文之外, 其他报 文的长度必须是8的整数倍(否则报文就不连续了).

     以上三个是为后面的切片做准备! 

8、8位生存时间(Time To Live, TTL): 数据报到达目的地的最大报文跳数. 一般是64. 每次经过一个路由, TTL -= 1, 一直减到0还没到达, 那么就丢弃了. 这个字段主要是用来防止出现路由循环  

      因为网络是错综复杂的,如果也一个报文一直转发但是却一直找不到目标地址,就会出现大量的游离报文,所以为了避免这种情况就会设置一个生存时间!! 

9、8位协议: 表示上层协议的类型

     这个可以得知我们要IP层的有效载荷交付给上层的哪个协议

10、16位头部校验和: 使用CRC进行校验, 来鉴别头部是否损坏.

11、32位源地址和32位目标地址: 表示发送端和接收端.

 我们可以根据这个来让路由器进行路径选择!! 

12、选项字段(不定长, 最多40字节): 

问题1:IP层是如何将报头和有效载荷分离的呢??

---——>固定长度(20字节)+自描述字段(首部长度+总长度)!!

问题2: 如何将有效载荷交付给上层呢??

——>32位源IP和目的IP是用来定位IP地址的,而其中8位协议字段是用来定位该主机的上层协议的(定位端口)

 问题3:数据在传输过程中光电信号是如何维持的?

--——>不要觉得数据报丢出去就没事了,因为报文是用光电信号传输的,所以有无数个中间设备要维持数据来发送给远端,而01的二进制信号会随着时间增加、距离增加而信号慢慢变弱,因此我们的网络设计者运营商考虑了这一点,因此在物理层有一个集线器的概念,当信号衰减的时候可以做信号放大,帮助我们进行长距离传输!(有点像我们生活中的电力一样,电力不足了可以通过变压放大来让我们进行长距离的传输)

三、网段划分(重要)

3.1 路由器的初步理解

我们的快读定位离不开路由器的转发

1、路由器本质上也是特定一个子网的主机,也有自己的ip地址

2、因为路由器需要转发别的网络,所以路由器一定至少要连接两个子网,路由器也就相当于同时在两个子网!(也说明了路由器可以配置多个IP,也就是需要多张网卡)

3、路由器一般是一个子网中的第一台设备,一般他的IP地址都是:网络号.1

4、路由器不仅仅可以用于IP报文的转发,还可以用来构建局域网!!因此该局域网里的主机号IP都是由该路由器去管理的(确保IP地址不会重复)

5、路由器有WAN口ip和LAN口ip

6、家用路由器理解上和运营商的路由器性质是类似的

3.2 IP地址的理解

IP地址分为两个部分, 网络号和主机号

网络号: 保证相互连接的两个网段具有不同的标识;

主机号: 同一网段内, 主机之间具有相同的网络号, 但是必须有不同的主机号;

不同的子网其实就是把网络号相同的主机放到一起.  

       如果在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复.  

通过合理设置主机号和网络号, 就可以保证在相互连接的网络中, 每台主机的IP地址都不相同.  

那么问题来了, 手动管理子网内的IP, 是一个相当麻烦的事情.

有一种技术叫做DHCP, 能够自动的给子网内新增主机节点分配IP地址, 避免了手动管理IP的不便.

一般的路由器都带有DHCP功能. 因此路由器也可以看做一个DHCP服务器.

3.3 IP地址的划分

IP地址有多少个呢?? 2的32次方=42亿+ 其实现在已经远远不够了

3.3.1 早期方案

      过去曾经提出一种划分网络号和主机号的方案, 把所有IP 地址分为五类, 如下图所示(该图出 自[TCPIP])。

A类 0.0.0.0到127.255.255.255

B类 128.0.0.0到191.255.255.255

C类 192.0.0.0到223.255.255.255

D类 224.0.0.0到239.255.255.255

E类 240.0.0.0到247.255.255.255  

     随着Internet的飞速发展,这种划分方案的局限性很快显现出来,大多数组织都申请B类网络地址, 导致B类地址很快就分配完了, 而A类却浪费了大量地址;

例如, 申请了一个B类地址, 理论上一个子网内能允许6万5千多个主机. A类地址的子网内的主机数更多.

然而实际网络架设中, 不会存在一个子网内有这么多的情况. 因此大量的IP地址都被浪费掉了.

 3.3.2 子网掩码

针对这种情况提出了新的划分方案, 称为CIDR(Classless Interdomain Routing):

引入一个额外的子网掩码(subnet mask)来区分网络号和主机号;

子网掩码也是一个32位的正整数. 通常用一串 "0" 来结尾;

将IP地址和子网掩码进行 "按位与" 操作, 得到的结果就是网络号;

网络号和主机号的划分与这个IP地址是A类、B类还是C类无关;

因为子网掩码的前28个是1,这说明只有后4位是用来表示主机号的! 

一般来说子网掩码的书写方式是表明有几个1

 问题1:怎么理解这个&呢??为什么他可以做到让IP地址和A类、B类还是C类无关呢??

——> 因为子网掩码可以对IP32位,进行任意的区域划分!!!

     比方说我当前有一个B类IP地址,按道理来说我可以有2的16次方台主机,但是我当前的子网里只需要14个机器,那么直接使用显然会造成大量的浪费。

     而后有了子网掩码,使得我们可以自己去做内网划分,比如我发现其实我只要4个bit位就可以表示14台主机了,因此我规定只有后面4位表示主机号,因此我们可以用IP/28!!这样我一次最多可以有14个IP地址(16-2)这样提高了地址的利用率 (一个B网络就可以使用2的12次方个大小为14个主机号的网络)

 问题2:子网掩码的二次理解

——>

        引入额外的子网掩码而不是直接修改原来的方案,这是对历史的尊重

       多几个1是能够让主机数变得更少,少几个1是可以让主机数变得更多 

        子网掩码和分类划分的方法都是在路由器中去配置好的!!我们作为用户并没有太多的感觉,你报文发送的时候只看到了IP,其实子网掩码是在经历的一个个网络路由器中去操作的,因此我们眼中的网络世界其实就是路由器的世界!

3.3.3 特殊的IP地址 

将IP地址中的主机地址全部设为0, 就成为了网络号, 代表这个局域网;

将IP地址中的主机地址全部设为1, 就成为了广播地址, 用于给同一个链路中相互连接的所有主机发送数据包;

127.*的IP地址用于本机环回(loop back)测试,通常是127.0.0.1

四、IP地址数量的限制 

       我们知道, IP地址(IPv4)是一个4字节32位的正整数. 那么一共只有 2的32次方 个IP地址, 大概是43亿左右. 而TCP/IP协议规定, 每个主机都需要有一个IP地址.

         这意味着, 一共只有43亿台主机能接入网络么?

         实际上, 由于一些特殊的IP地址的存在, 数量远不足43亿; 另外IP地址并非是按照主机台数来配置的, 而是每一个网卡 都需要配置一个或多个IP地址.

          CIDR在一定程度上缓解了IP地址不够用的问题(提高了利用率, 减少了浪费, 但是IP地址的绝对上限并没有增加), 仍然不是很够用. 这时候有三种方式来解决:

1、动态分配IP地址: 只给接入网络的设备分配IP地址. 因此同一个MAC地址的设备, 每次接入互联网中, 得到的IP地址不一定是相同的;(其实就是共享IP)

2、NAT技术(后面会重点介绍);

3、IPv6:IPv6并不是IPv4的简单升级版. 这是互不相干的两个协议, 彼此并不兼容; IPv6用16字节128位来表 示一个IP地址; 但是目前IPv6还没有普及; (重大变革!!)

问题:IPv6最成熟的就是中国了(因为ipv4是老外的),但是为什么ipV6出现了这么久还是没普及呢??

——>因为TCP IP协议栈是在OS内部的,你如果要改的话就得先把全世界的OS都给换了!!除此之外还得要求全世界的路由器都得支持IPV6!!这是很难做到的,因为互联网太大了!!

        但是如果有一天我们中国的网络比全世界的网络加起来还要大(网络的大小以前可以说是由人口决定,也可以说是当地经济发展设施建设决定的,但是最本质的是可入网设备的多少决定的!!!)

      比如说我们未来的物联网设备、汽车等各种设备需要独立控制,那么入网设备就会剧增!!从而孵化出新的经济场景和互联网公司,给国家带来更大的税收!!科学技术推动了生产力的进步!!一旦影响力很大了,那么他们想不想学我们赚很多钱呢??想的话我们自然就有动力去换IPV6了!!

     国家也在想办法推动,会要求互联网公司在搭建内网的时候必须支持IPV6,其实目前默认的路由器也会支持,所以这其实是一个系统性的工程!! 

五、理解运营商

问题1:我们是怎么上网的??

如果你是在城镇或者农村的话,你想上网前就得先联系运营商的工作人员把网线拉到你家里

如果你家里在城市里面,国家建设的时候就要求必须光纤(塑料壳里面包了很多玻璃丝)入户。

除此之外还需要两个设备,一个设备叫做调制解调器(猫),还需要有一台家用路由器

光纤(从运营商哪里接过来的)传递的是光电信号,但是计算机不认识,所以调制解调器会将他转变为数字信号(可以被识别的01序列)然后交给路由器

 除此之外,你还得交钱!!(早些年智能手机还不是很普及的时候会送你一台手机和电话卡,然后你要上网的话就得交钱往电话卡收费)    交钱可以获得上网的账号和密码(运营商会在你的家用路由器里把他们配置进去,你只要不欠费你就可以访问外网了)  相当于是征得了运营商的许可  

家用路由器还有一个作用是构建局域网, 当你把路由器打开的时候,因为里面配置了被运营商许可的账号和密码,所以你可以上网了,但是你并不希望你的邻居也可以用你的网络,因此家用路由器本身可以有路由器账号和密码,用来给用户链接路由器做登录认证的!!

    所以有路由器两套密码 ,一套是经过运营商认证可以上网,一套是用来认证用户连接网络的

 问题2:运营商的意义 

      首先我们要知道我们国家的互联网应用几乎在世界领域上是数一数二的,什么京东、支付宝、闲鱼等应用都得益于我们国家的互联网公司,但是之所以有这些公司,他们背后有一些角色很重要,那就是运营商!!(千万不要觉得运营商天天催话费,不交的话就不让打电话而特别仇视他,虽然在历史的发展中他有一些乱收费的事情,但是我们不能忽略他的一个积极和重大意义)

      因为这种应用的使用前提就是得上网!!而上网之前要做的就是网络基础设施建设!!因为只有这样才能让更多的网民入网,才能孵化更多的互联网公司!!

     但是因为网络基础设施建设回报周期太长了!!一般私人企业都是想赚快钱,所以为了能够推动网络设施的建设,国家会想方设法在这方面大力支持!!而这些运营商就会垄断这个网络建设的行业。

      以前流量费很贵,现在流量费变便宜了!!这也是为了能够让更多的人参与进来,不光是城市,还有农村也要有基层的工作人员去给你做工作!!

     我们会发现如果国家不逼着他们运营商的做建设的话,那么就不会有后面那么多大型互联网私企,就不会有那么多技术发展带来的时代红利!

问题3:国家推动网络建设的意义

       比方说国家大力发展滴滴,因为出租车越多,地方政府就能发更多的牌照,赚更多的钱,但是滴滴一旦进来了,因为有国家的支持,你地方政府还是可以发,但是你不能拦住滴滴的发展,所以他们并不欢迎。

       比方说国家发展支付宝,银行其实也可以线上支付只不过他做得没有支付宝好,大家都用支付宝那么存钱给银行的就少了。所以银行并不欢迎支付宝

      所以我们会发现国家存在的意义就是统筹全局!!一些新技术的出现总会有一部分人不喜欢、不愿意去改变,但如果整体的趋势就是好的,那么国家就需要去鼓励他们来帮助他们把影响力做大!!(下一盘大棋)

问题4:为啥互联网就业就业环境不好呢??

1、好和不好是需要对比的,这个跟国家当前经济发展所处的环境和阶段是有关系的,也跟周边环境有关系,而且跟人的预期也有关系。所以其实大家并不敢盲目去扩张业务

2、我们国家互联网发展到一定程度也会有问题,有些互联网公司做事情会没有底线,比如很多公司但是想做团购买菜,但是这样的话会让那些摆摊卖菜的小商小贩无法生存,我是希望你互联网公司创造岗位的,而不是让你搞得别人没岗位,做的太过分影响就太大了!!所以国家会出面进行管控!! 

六、理解全球网络

IP是一份大资源 。所以其实世界上的ipv4是被划分的

 一般来说IP地址的划分不是根据国家来划分的,而是根据国家组织地区人口综合评估来分发的(比如说中国网络设施建设好,入网设备多,那么就发分一点,但是印度人多但是网络建设很差,入网的设施很少,那就分少一点) 

        那会不会分配不均吵起来呢??一般是不会的,因为本身IP的存在就是为了让尽可能更多的人入网的,这样才能赚钱!

 那么IP具体是怎么分配的呢????

(举例,并不是真的这么分)比方说全国一百九十多个地方,那么我们就可以用前8个bit位来标识,然后我们中国有23个省,那么就需要5个bit位  然后再具体细分 你会发现这样的话其实IP地址已经严重不够了!!所以这些IP地址是不足以支撑这么多人去使用的!!

      所以真实的网络情况是,他用公网IP来构建全球网络,然后划分到一定程度后(某个地区),比如划分到西安市,再由当地的运营商拿到具体的公网IP后,再根据这个公网IP来构建内网!

     所以我们所使用的都是内网IP,然后再通过运营商的路由器访问到公网IP   

     公网+私网=互联网 任何一个人想访问网络之前都需要经过运营的网络(所以我们常说的翻墙,这个墙就是在运营商那里)这也是为什么我们一欠费就上不了网的原因  以及之前在信息没加密的时候会出现运营商劫持的问题

七、公有IP和私有IP

 IP被硬性分为了公有IP和私有IP,其实我们一般使用的都是私有IP,而云服务器是用的公网IP

     如果一个组织内部组建局域网,IP地址只用于局域网内的通信,而不直接连到Internet上,理论上 使用任意的IP地址都 可以,但是RFC1918规定了用于组建局域网的私有IP地址

10.*,前8位是网络号,共16,777,216个地址

172.16.到172.31.,前12位是网络号,共1,048,576个地址

192.168.*,前16位是网络号,共65,536个地址

包含在这个范围中的, 都成为私有IP, 其余的则称为全局IP(或公网IP); 

私有IP类型具体你选择哪一个,看你的构建的子网范围大不大,大的话选第一个,小的话选第三个(我们家里用的大部分都是192.168 )

目标ip一般是公有ip,是私有ip的时候当且仅当在内网中 

怎么解决上面的问题呢??我们会发现我们的路由器都有自己的子网IP和WAN口IP ,而我们家用路由器的WAN口IP就是运营商路由器的内网IP。所以报文在从路由器出去的时候会做一种策略:将源IP替换成每一个路由的的WAN口IP!

交给公网之前  

交给公网之后 这样至少可以将响应报文先传给运营商的入口路由器

私有IP不断被替换的过程就是NAP技术!! 

1、一个路由器可以配置两个IP地址, 一个是WAN口IP, 一个是LAN口IP(子网IP).

2、路由器LAN口连接的主机, 都从属于当前这个路由器的子网中.

3、不同的路由器, 子网IP其实都是一样的(通常都是192.168.1.1). 子网内的主机IP地址不能重复. 但是子网之 间的IP地址就可以重复了.

4、每一个家用路由器, 其实又作为运营商路由器的子网中的一个节点. 这样的运营商路由器可能会有很多级,

最外层的运营商路由器, WAN口IP就是一个公网IP了.

5、子网内的主机需要和外网进行通信时, 路由器将IP首部中的IP地址进行替换(替换成WAN口IP), 这样逐级 替换, 最终数据包中的IP地址成为一个公网IP. 这种技术称为NAT(Network Address Translation,网络地 址转换).

6、如果希望我们自己实现的服务器程序, 能够在公网上被访问到, 就需要把程序部署在一台具有外网IP的服务器上. 这样的服务器可以在阿里云/腾讯云上进行购买.

问题1:一个子网如果有两台路由器的话,我怎么知道该去哪个路由器呢??

----->路由器之间在内网是可以互相通信的,可以知道彼此的联网情况!一般来说我们自己的子网有两台路由器的情况是比较少见的!!但是运营商的子网路由器一般就比较多了!!! 

问题2:公司是不是这样的呢??

---->公司也是类似的!!因为公司也要给你发回数据,所以他们也是要给运营商交钱的

问题3:为什么要这么做呢??

——>主要是因为IP地址不足!!所以这种方法可以通过创建更多相同的内网IP来让更多人入网,这也是NAT技术的实际意义! 

八、路由

在复杂的网络结构中, 找出一条通往终点的路线;(通过目的IP进行路径选择)

路由的过程, 就是这样一跳一跳(Hop by Hop) "问路" 的过程.

所谓 "一跳" 就是数据链路层中的一个区间. 具体在以太网中指从源MAC地址到目的MAC地址之间的帧传输区间

IP数据包的传输过程也和问路一样 

当IP数据包, 到达路由器时, 路由器会先查看目的IP;

路由器决定这个数据包是能直接发送给目标主机, 还是需要发送给下一个路由器;

依次反复, 一直到达目标IP地址;

 那么如何判定当前这个数据包该发送到哪里呢? 这个就依靠每个节点内部维护一个路由表

 路由表可以使用route命令查看(本地主机也有路由表)

如果目的IP命中了路由表, 就直接转发;(查路由表就是看目标主机的IP&Genmask是否等于Destination

路由表中的最后一行,主要由下一跳地址和发送接口两部分组成,当目的地址与路由表中其它行都不匹配时,就按缺省路由条目规定的接口发送到下一跳地址。

 假设某主机上的网络接口配置和路由表如下:

        这台主机有两个网络接口,一个网络接口连到192.168.10.0/24网络,另一个网络接口连到192.168.56.0/24网络;

Destination是目的网络地址

Genmask是子网掩码

Gateway是下一跳地址

face是发送接口

Flags中的U标志表示此条目有效(可以禁用某些条目),G标志表示此条目的下一跳地址是某个路由器的地址,没有G标志的条目表示目的网络地址是与本机接口直接相连的网络,不必经路由器转发;

 转发过程例1: 如果要发送的数据包的目的地址是192.168.56.3

跟第一行的子网掩码做与运算得 到192.168.56.0,与第一行的目的网络地址不符

再跟第二行的子网掩码做与运算得 到192.168.56.0,正是第二行的目的网络地址,因此从eth1接口发送出 去;

由于192.168.56.0/24正 是与eth1 接口直接相连的网络,因此可以直接发到目的主机,不需要经路由器转 发;

转发过程例2: 如果要发送的数据包的目的地址是202.10.1.2

依次和路由表前几项进行对比, 发现都不匹配;

按缺省路由条目, 从eth0接口发出去, 发往192.168.10.1路由器;

由192.168.10.1路由器根据它的路由表决定下一跳地址;

问题1:路由表查询的结果是什么呢??

——> 其实有点像我们刚考上大学去一个陌生的地方上大学,下了火车的时候,我们找不到路,只能问人。无非就以下结果:

1、不知道(基本不存在这种情况,因为这样的话路由器本身设计就有bug  所以不考虑) 

2、给你具体下一跳

3、路由器不清楚,但是转入默认路由(一般是同网段的另一台路由器  )

      主机会先查自己的路由表,然后当发现目的IP和我的网络号不一致的话,说明我的目标IP一定不在我这个子网内,所以我就要去我子网里设置的缺省路由器的路由表去查(内网之间的路由器是可以互相知道对方子网的连接情况的),因为他里面可能会有其他的子网, 如果还找不到的话,那就再去同网段的另一套路由器或许能找到     

    反正不管怎么跳转 因为网络是精心设计的,所以一定可以越来越接近目标网络(一般一路的default上去都能到公网IP)

4、到达入口路由器

拿着目标IP&该路由器的子网掩码发现该网络就是我这个子网里面的!!

 因为IP=目标网络+目标主机,所以我们在进行转发的时候,我们先到达目标网络

问题2:有关路由表生成算法(选学)

——> 路由表可以由网络管理员手动维护(静态路由), 也可以通过一些算法自动生成(动态路由).调研一些相关的生成算法, 例如距离向量算法, LS算法, Dijkstra算法等.

当前主机也可以查

本文地址:https://www.vps345.com/10397.html

搜索文章

Tags

PV计算 带宽计算 流量带宽 服务器带宽 上行带宽 上行速率 什么是上行带宽? CC攻击 攻击怎么办 流量攻击 DDOS攻击 服务器被攻击怎么办 源IP docker 容器 运维 java-rabbitmq java 服务器安全 网络安全策略 防御服务器攻击 安全威胁和解决方案 程序员博客保护 数据保护 安全最佳实践 服务器 linux 游戏 云计算 网络工程师 网络管理 软考 2024 2024年上半年 下午真题 答案 deepseek DeepSeek-R1 API接口 物联网 ubuntu Deepseek Deepseek-R1 大模型 私有化部署 推理模型 c语言 英语 RTSP xop RTP RTSPServer 推流 视频 DNS ddos android 网络安全 web安全 人工智能 redis Ollama Qwen2.5-coder 离线部署 centos gcc centos 7 网络 tcp/ip 网络协议 ip协议 阿里云 llama 算法 opencv 自然语言处理 神经网络 语言模型 mysql adb ssh 数据库系统 游戏引擎 学习 macos windows conda ai nlp YOLO pytorch vscode python yolov5 php 开发语言 javascript 前端 chrome edge 深度学习 计算机视觉 卷积神经网络 进程 操作系统 进程控制 Ubuntu django CH340 单片机 嵌入式硬件 串口驱动 CH341 uart 485 模型联网 API CherryStudio 经验分享 jvm 虚拟机 笔记 学习方法 MCP https AIGC 人工智能生成内容 Dify vue.js spring boot nginx arm开发 架构 数据库 oracle 关系型 安全 分布式 负载均衡 tomcat 科技 个人开发 网络结构图 计算机外设 bug pycharm ide 数据分析 机器学习 开发环境 部署 harmonyos 华为 udp 本地环回 bind ffmpeg 音视频 视频编解码 pip jenkins gitee fstab gnu Ubuntu DeepSeek DeepSeek Ubuntu DeepSeek 本地部署 DeepSeek 知识库 DeepSeek 私有化知识库 本地部署 DeepSeek DeepSeek 私有化部署 kafka AI大模型 大模型技术 本地部署大模型 ubuntu 18.04 安装教程 apache 云原生 ip grub 版本升级 扩容 typescript 计算机网络 kubernetes 自动化 springsecurity6 oauth2 授权服务器 前后端分离 智能路由器 外网访问 内网穿透 端口映射 outlook 错误代码2603 无网络连接 2603 高级IO epoll 像素流送api 像素流送UE4 像素流送卡顿 像素流送并发支持 目标跟踪 目标检测 OpenVINO 推理应用 dify mcu prometheus grafana C 环境变量 进程地址空间 asm node.js virtualenv 策略模式 c++ 知识库 本地化部署 ui vnc 后端 鸿蒙 USB转串口 jellyfin nas eureka fastapi mcp mcp-proxy mcp-inspector fastapi-mcp agent sse debian PVE live555 rtsp rtp word图片自动上传 word一键转存 复制word图片 复制word图文 复制word公式 粘贴word图文 粘贴word公式 并查集 leetcode C# MQTTS 双向认证 emqx oracle fusion oracle中间件 ssh漏洞 ssh9.9p2 CVE-2025-23419 小程序 微信小程序域名配置 微信小程序服务器域名 微信小程序合法域名 小程序配置业务域名 微信小程序需要域名吗 微信小程序添加域名 大数据 spark hive TCP WebServer transformer uni-app devops elasticsearch perf GPU环境配置 Ubuntu22 CUDA PyTorch Anaconda安装 protobuf 序列化和反序列化 安装 spring cloud cpu 内存 实时 使用 Flask FastAPI Waitress Gunicorn uWSGI Uvicorn 课程设计 ubuntu20.04 Linux 开机黑屏 机器人 多线程服务器 Linux网络编程 媒体 dubbo 面试 VMware 聚类 程序 编程 性能分析 虚拟显示器 远程控制 json compose 持续部署 开源 github 实时音视频 实时互动 AI编程 HarmonyOS Next kylin xcode IIS .net core Hosting Bundle .NET Framework vs2022 windows 服务器安装 Linux PID dell服务器 qt QT 5.12.12 QT开发环境 Ubuntu18.04 EtherNet/IP串口网关 EIP转RS485 EIP转Modbus EtherNet/IP网关协议 EIP转RS485网关 EIP串口服务器 虚拟现实 JAVA Java c# 性能优化 Alexnet maven svn Ubuntu20.04 GLIBC 2.35 宝塔面板访问不了 宝塔面板网站访问不了 宝塔面板怎么配置网站能访问 宝塔面板配置ip访问 宝塔面板配置域名访问教程 宝塔面板配置教程 zotero WebDAV 同步失败 代理模式 腾讯云 cron crontab日志 ue4 着色器 ue5 虚幻 运维开发 audio vue音乐播放器 vue播放音频文件 Audio音频播放器自定义样式 播放暂停进度条音量调节快进快退 自定义audio覆盖默认样式 git sublime text 编辑器 思科 react.js 前端面试题 AI arm UEFI Legacy MBR GPT U盘安装操作系统 Doris搭建 docker搭建Doris Doris搭建过程 linux搭建Doris Doris搭建详细步骤 Doris部署 rag ragflow ollama 大模型部署 集成学习 集成测试 LDAP spring filezilla 无法连接服务器 连接被服务器拒绝 vsftpd 331/530 llm 进程优先级 调度队列 进程切换 yum docker-compose docker compose matplotlib fonts-noto-cjk opengl 快捷键 旋转屏幕 自动操作 ip命令 新增网卡 新增IP 启动网卡 多线程 上传视频文件到服务器 uniApp本地上传视频并预览 uniapp移动端h5网页 uniapp微信小程序上传视频 uniapp app端视频上传 uniapp uview组件库 axure 富文本编辑器 pygame cursor 数据结构 链表 openvpn server openvpn配置教程 centos安装openvpn 华为认证 交换机 Linux 维护模式 vim 华为云 pillow 监控k8s集群 集群内prometheus 安卓模拟器 mac websocket database ecmascript nextjs react reactjs flask vmware 卡死 RustDesk自建服务器 rustdesk服务器 docker rustdesk flutter 命令 burp suite 抓包 remote-ssh open webui rancher MacOS录屏软件 vue3 HTML audio 控件组件 vue3 audio音乐播放器 Audio标签自定义样式默认 vue3播放音频文件音效音乐 自定义audio播放器样式 播放暂停调整声音大小下载文件 回显服务器 UDP的API使用 ai小智 语音助手 ai小智配网 ai小智教程 智能硬件 esp32语音助手 diy语音助手 GaN HEMT 氮化镓 单粒子烧毁 辐射损伤 辐照效应 bash powerpoint 升级 CVE-2024-7347 漏洞 sql 缓存 EtherCAT转Modbus ECT转Modbus协议 EtherCAT转485网关 ECT转Modbus串口网关 EtherCAT转485协议 ECT转Modbus网关 统信 NFS iot 信息与通信 odoo 服务器动作 Server action deepseek-r1 大模型本地部署 1024程序员节 http Dell R750XS 温湿度数据上传到服务器 Arduino HTTP nftables 防火墙 oceanbase 传统数据库升级 银行 游戏程序 ios postman 测试工具 aws FTP 服务器 ipython wsl VSCode YOLOv8 NPU Atlas800 A300I pro asi_bench rtsp服务器 rtsp server android rtsp服务 安卓rtsp服务器 移动端rtsp服务 大牛直播SDK 私有化 本地部署 软件工程 软件构建 安卓 rust java-ee 灵办AI unix 远程桌面 rdp 远程服务 Trae IDE AI 原生集成开发环境 Trae AI 政务 分布式系统 监控运维 Prometheus Grafana 沙盒 mount挂载磁盘 wrong fs type LVM挂载磁盘 Centos7.9 驱动开发 硬件工程 嵌入式实习 VMware安装mocOS macOS系统安装 matlab 电脑 golang 7z agi Cline 软件需求 深度求索 私域 CPU 使用率 系统监控工具 linux 命令 express p2p 主从复制 gpu算力 etcd 数据安全 RBAC selenium 网络爬虫 浪潮信息 AI服务器 产品经理 microsoft 多层架构 解耦 嵌入式 linux驱动开发 SRS 流媒体 直播 报错 服务器无法访问 ip地址无法访问 无法访问宝塔面板 宝塔面板打不开 微信 微信分享 Image wxopensdk zabbix mariadb .netcore openEuler 教程 环境搭建 Maven 华为od vite 区块链 visual studio code 云电竞 云电脑 todesk milvus ssl C语言 MacMini Mac 迷你主机 mini Apple 虚拟局域网 rust腐蚀 rc.local 开机自启 systemd 麒麟 webrtc AI-native Docker Desktop 读写锁 notepad html jupyter shell centos-root /dev/mapper yum clean all df -h / du -sh maxkb ARG 前端框架 3d 数学建模 计算生物学 生物信息学 生物信息 基因组 DeepSeek hadoop DevEco Studio CPU 主板 电源 网卡 互信 vSphere vCenter 软件定义数据中心 sddc jmeter 软件测试 stm32项目 stm32 国产数据库 瀚高数据库 数据迁移 下载安装 ocr 大语言模型 LLMs gateway Clion Nova ResharperC++引擎 Centos7 远程开发 智慧农业 开源鸿蒙 团队开发 onlyoffice gitlab unity vue 硬件架构 系统架构 eclipse 热榜 TrueLicense Cursor elk 进程信号 远程连接 实验 WSL2 上安装 Ubuntu Kali Linux 黑客 渗透测试 信息收集 Google pay Apple pay jar 离线部署dify numpy 远程工作 程序人生 Mac内存不够用怎么办 intellij-idea intellij idea lvm 磁盘挂载 磁盘分区 k8s rpc 大文件分片上传断点续传及进度条 如何批量上传超大文件并显示进度 axios大文件切片上传详细教 node服务器合并切片 vue3大文件上传报错提示错误 vu大文件秒传跨域报错cors postgresql 微信小程序 创意 社区 ruoyi VMware创建虚拟机 源码剖析 rtsp实现步骤 流媒体开发 VMware安装Ubuntu Ubuntu安装k8s IM即时通讯 QQ 企业微信 剪切板对通 HTML FORMAT webdav Hive环境搭建 hive3环境 Hive远程模式 vr Hyper-V WinRM TrustedHosts tcp fork wait waitpid exit 串口服务器 指令 大模型入门 大模型教程 GPU list 端口号 开放端口 访问列表 C++ WSL2 Ubuntu22.04 虚拟化 开发人员主页 redhat WLAN 压测 ECS ESP32 camera Arduino 电子信息 python2 ubuntu24.04 程序员 KylinV10 麒麟操作系统 Vmware SSH Xterminal WebUI DeepSeek V3 chatgpt oneapi 大模型微调 rabbitmq edge浏览器 pdf efficientVIT YOLOv8替换主干网络 TOLOv8 Linux无人智慧超市 LInux多线程服务器 QT项目 LInux项目 单片机项目 gpt Agent LLM CrewAI iftop 网络流量监控 ros 话题通信 服务通信 linux内核 网络药理学 生信 gromacs 分子动力学模拟 MD 动力学模拟 gradle RAGFLOW go docker run 数据卷挂载 交互模式 文件系统 路径解析 镜像下载 freebsd 自动化编程 openwrt 加解密 Yakit yaklang ftp 硅基流动 ChatBox 图像处理 自动驾驶 执法记录仪 智能安全帽 smarteye vscode1.86 1.86版本 ssh远程连接 交互 UOS 统信操作系统 LLM Web APP Streamlit ros2 moveit 机器人运动 mybatis ssrf 失效的访问控制 嵌入式系统开发 jdk 环境配置 HP Anyware 通信工程 毕业 Mermaid 可视化图表 自动化生成 llama3 Chatglm 开源大模型 iBMC UltraISO wireshark 显示过滤器 ICMP Wireshark安装 copilot linux环境变量 搜索引擎 全文检索 图搜索算法 xrdp mongodb webstorm export import save load 迁移镜像 rime 高德地图 鸿蒙接入高德地图 HarmonyOS5.0 低代码 bcompare Beyond Compare 环境迁移 爬虫 实战案例 内网渗透 靶机渗透 系统安全 强制清理 强制删除 mac废纸篓 openstack Xen KVM Docker Compose 服务器扩容没有扩容成功 npm 拓扑图 Mac软件 linux安装配置 ansible playbook 剧本 xml kali 共享文件夹 命名管道 客户端与服务端通信 TRAE 无人机 视频平台 录像 视频转发 性能测试 视频流 存储 宝塔面板无法访问 智能手机 矩阵 一切皆文件 nac 802.1 portal KingBase 博客 windwos防火墙 defender防火墙 win防火墙白名单 防火墙白名单效果 防火墙只允许指定应用上网 防火墙允许指定上网其它禁止 clickhouse 中兴光猫 换光猫 网络桥接 自己换光猫 工业4.0 selete v10 镜像源 软件 框架搭建 yaml Ultralytics 可视化 nvm fpga开发 鸿蒙系统 rocketmq Ubuntu共享文件夹 共享目录 Linux共享文件夹 Kylin-Server 国产操作系统 服务器安装 cuda CLion 大模型应用 NAS Termux Samba 数据挖掘 弹性计算 云服务器 裸金属服务器 弹性裸金属服务器 retry 重试机制 tcpdump Web服务器 多线程下载工具 网络编程 PYTHON SSH 密钥生成 SSH 公钥 私钥 生成 mock mock server 模拟服务器 mock服务器 Postman内置变量 Postman随机数据 frp 迁移指南 腾讯云大模型知识引擎 网络用户购物行为分析可视化平台 大数据毕业设计 SWAT 配置文件 服务管理 网络共享 googlecloud 系统开发 binder 车载系统 framework 源码环境 常用命令 文本命令 目录命令 网卡的名称修改 eth0 ens33 docker搭建pg docker搭建pgsql pg授权 postgresql使用 postgresql搭建 IIS服务器 IIS性能 日志监控 iperf3 带宽测试 云原生开发 K8S k8s管理系统 服务器配置 Linux的基础指令 top Linux top top命令详解 top命令重点 top常用参数 Python ros1 Noetic 20.04 apt 安装 docker搭建nacos详解 docker部署nacos docker安装nacos 腾讯云搭建nacos centos7搭建nacos P2P HDLC autoware 开发 高效I/O YOLOv12 NVML nvidia-smi 客户端 kamailio sip VoIP 大数据平台 DIFY Invalid Host allowedHosts 毕设 Docker Kubernetes ubuntu24.04.1 sqlserver 宠物 毕业设计 免费学习 宠物领养 宠物平台 burpsuite 安全工具 mac安全工具 burp安装教程 渗透工具 .net firewalld 匿名管道 Chatbox 功能测试 自动化测试 ping++ IO Redis Desktop excel 在线预览 xlsx xls文件 在浏览器直接打开解析xls表格 前端实现vue3打开excel 文件地址url或接口文档流二进 隐藏文件 隐藏目录 管理器 通配符 程序员创富 seatunnel dns 银河麒麟 AI写作 samba tar 云服务 MCP server C/S ragflow 源码启动 计算机系统 Portainer搭建 Portainer使用 Portainer使用详解 Portainer详解 Portainer portainer next.js 部署next.js glibc vmamba cudnn anaconda 移动云 安防软件 微服务 springcloud 磁盘清理 Reactor 设计模式 个人博客 kotlin android studio iphone H3C 远程 执行 sshpass 操作 OpenManus html5 firefox 版本 显示器 arkUI 网易邮箱大师 安全威胁分析 云桌面 微软 AD域控 证书服务器 计算机 VMware Tools vmware tools安装 vmwaretools安装步骤 vmwaretools安装失败 vmware tool安装步骤 vm tools安装步骤 vm tools安装后不能拖 vmware tools安装步骤 miniapp 真机调试 调试 debug 断点 网络API请求调试方法 HiCar CarLife+ CarPlay QT RK3588 浏览器自动化 ROS2 豆瓣 追剧助手 迅雷 c/c++ 串口 web3.py unity3d kylin v10 麒麟 v10 ESXi 王者荣耀 termux CentOS ollama下载加速 asp.net大文件上传 asp.net大文件上传下载 asp.net大文件上传源码 ASP.NET断点续传 visual studio yolov8 设置代理 实用教程 软链接 硬链接 模拟实现 ArkTs ArkUI 硬件 设备 PCI-Express ux 鲲鹏 昇腾 npu 系统 黑苹果 springboot systemctl ci/cd composer AutoDL HCIE 数通 string模拟实现 深拷贝 浅拷贝 经典的string类问题 三个swap alias unalias 别名 threejs 3D sysctl.conf vm.nr_hugepages 权限 okhttp 代码调试 ipdb adobe 中间件 iis 僵尸进程 MQTT协议 消息服务器 代码 n8n 工作流 视觉检测 监控 自动化运维 DevOps 软件交付 数据驱动 应用场景 db Ubuntu 22.04 MySql 算家云 算力租赁 压力测试 大模型压力测试 EvalScope minicom 串口调试工具 fd 文件描述符 mysql离线安装 ubuntu22.04 mysql8.0 飞牛nas fnos log4j ArkTS 移动端开发 qps 高并发 CosyVoice 远程看看 远程协助 diskgenius 直播推流 sqlite3 rsyslog 机柜 1U 2U ROS PX4 MAVROS 四旋翼无人机 虚拟机安装 kind 5G 3GPP 卫星通信 chatbox flash-attention Cookie su sudo mq React Next.js 开源框架 物联网开发 MQTT DigitalOcean GPU服务器购买 GPU服务器哪里有 GPU服务器 Linux的权限 r语言 云耀服务器 工具 正则表达式 harmonyOS面试题 IPMI 大屏端 Docker Hub docker pull daemon.json shell脚本免交互 expect linux免交互 键盘 雨云 NPS css less 监控k8s 监控kubernetes 统信UOS bonding 链路聚合 消息队列 zip unzip windows日志 ebpf uprobe 信号 内核 GameFramework HybridCLR Unity编辑器扩展 自动化工具 GCC aarch64 编译安装 HPC 数据集 curl wget 图文教程 VMware虚拟机 macOS系统安装教程 macOS最新版 虚拟机安装macOS Sequoia WebVM 基础环境 流水线 脚本式流水线 安装MySQL ufw AD域 智能体 autogen openai coze 域名服务 DHCP 符号链接 配置 CUPS 打印机 Qt5 netty Qualcomm WoS QNN AppBuilder visualstudio Windsurf c 磁盘监控 状态管理的 UDP 服务器 Arduino RTOS WSL win11 无法解析服务器的名称或地址 nohup 异步执行 进程程序替换 execl函数 execv函数 execvp函数 execvpe函数 putenv函数 x64 SIGSEGV SSE xmm0 gitea armbian u-boot linux上传下载 JDK LInux Windows MS Materials file server http server web server Spring Security k8s集群资源管理 EasyConnect env 变量 论文阅读 AimRT 流式接口 单例模式 Wi-Fi 输入法 minio 技能大赛 scikit-learn Attention NLP 交叉编译 jetty undertow SysBench 基准测试 服务器时间 软件卸载 系统清理 mamba Vmamba css3 etl esp32 蓝牙 职场和发展 HarmonyOS Tabs组件 TabContent TabBar TabsController 导航页签栏 滚动导航栏 lsb_release /etc/issue /proc/version uname -r 查看ubuntu版本 免密 登录 公钥 私钥 SSL证书 Linux环境 dity make eNSP 网络规划 VLAN 企业网络 es6 qt6.3 g726 信息可视化 echarts 深度优先 图论 并集查找 换根法 树上倍增 Kali 语音识别 边缘计算 telnet 远程登录 RAG 检索增强生成 文档解析 大模型垂直应用 桥接模式 windows虚拟机 虚拟机联网 MNN Qwen 医疗APP开发 app开发 Docker引擎已经停止 Docker无法使用 WSL进度一直是0 镜像加速地址 ECT转485串口服务器 ECT转Modbus485协议 ECT转Modbus串口服务器 python3.11 ajax 模拟器 gaussdb llama.cpp k8s资源监控 annotations自动化 自动化监控 监控service 监控jvm Linux Vim 宝塔面板 searxng Dell HPE 联想 浪潮 dash AI作画 聊天室 localhost firewall 宝塔 cfssl 思科模拟器 Cisco 产测工具框架 IMX6ULL 管理框架 scapy 测试用例 asp.net上传文件夹 asp.net上传大文件 .net core断点续传 .net mvc断点续传 微信公众平台 VPN wireguard muduo X11 Xming ollama api ollama外网访问 web Ark-TS语言 群晖 飞牛 HistoryServer Spark YARN jobhistory photoshop 其他 Linux find grep 银河麒麟服务器操作系统 系统激活 uni-file-picker 拍摄从相册选择 uni.uploadFile H5上传图片 微信小程序上传图片 Typore 算力 健康医疗 互联网医院 RAID RAID技术 磁盘 AP配网 AK配网 小程序AP配网和AK配网教程 WIFI设备配网小程序UDP开 Socket 多端开发 智慧分发 应用生态 鸿蒙OS Obsidian Dataview cmos 社交电子 蓝桥杯 lb 协议 kvm vscode 1.86 网站搭建 serv00 服务器部署 本地拉取打包 重启 排查 系统重启 日志 原因 具身智能 强化学习 直流充电桩 充电桩 微信开放平台 微信公众号配置 可信计算技术 换源 国内源 Debian SEO 单元测试 ceph 显示管理器 lightdm gdm AI代码编辑器 网络攻击模型 NAT转发 NAT Server kernel pyicu 安全架构 图形化界面 显卡驱动 HarmonyOS NEXT 原生鸿蒙 lighttpd安装 Ubuntu配置 Windows安装 服务器优化 7-zip 相机 banner Webserver 异步 gpt-3 文心一言 CNNs 图像分类 uv Linux24.04 deepin openssl 游戏机 netlink libnl3 金融 Netty 即时通信 NIO wsl2 tensorflow trae 容器技术 rustdesk 毕昇JDK 序列化反序列化 crosstool-ng jina 数据采集 Crawlee Playwright 致远OA OA服务器 服务器磁盘扩容 IPv4 子网掩码 公网IP 私有IP 半虚拟化 硬件虚拟化 Hypervisor 能力提升 面试宝典 技术 IT信息化 Web应用服务器 ruby 行情服务器 股票交易 速度慢 切换 股票量化接口 股票API接口 线程 micropython mqtt Ardupilot nuxt3 Linux权限 权限命令 特殊权限 大版本升 升级Ubuntu系统 Isaac Sim 虚拟仿真 计算机科学与技术 底层实现 本地部署AI大模型 双系统 GRUB引导 Linux技巧 密码学 业界资讯 Office 模拟退火算法 springboot远程调试 java项目远程debug docker远程debug java项目远程调试 springboot远程 田俊楠 mosquitto 工具分享 数据可视化 sublime text3 分析解读 服务器管理 配置教程 网站管理 openjdk csrf pyside6 界面 umeditor粘贴word ueditor粘贴word ueditor复制word ueditor上传word图片 ueditor导入word ueditor导入pdf ueditor导入ppt AISphereButler hibernate CentOS Stream UDP UOS1070e 京东云 联网 easyconnect 代理 initramfs Linux内核 Grub 代码托管服务 lio-sam SLAM FTP服务器 wps Carla 智能驾驶 Java Applet URL操作 服务器建立 Socket编程 网络文件读取 新盘添加 partedUtil ukui 麒麟kylinos openeuler W5500 OLED u8g2 TCP服务器 chfs ubuntu 16.04 多进程 小艺 Pura X 动静态库 图片增强 增强数据 网络穿透 办公自动化 pdf教程 火绒安全 VPS Nuxt.js rnn Xinference fast 智能电视 nacos workflow linuxdeployqt 打包部署程序 appimagetool Pyppeteer 上传视频至服务器代码 vue3批量上传多个视频并预览 如何实现将本地视频上传到网页 element plu视频上传 ant design vue vue3本地上传视频及预览移除 OD机试真题 华为OD机试真题 服务器能耗统计 DeepSeek行业应用 Heroku 网站部署 big data CORS 跨域 uniapp 恒源云 VR手套 数据手套 动捕手套 动捕数据手套 arcgis 小智 反向代理 开机自启动 智能音箱 智能家居 IPMITOOL BMC 硬件管理 rclone AList fnOS 空间 查错 大模型训练/推理 推理问题 mindie av1 电视盒子 机顶盒ROM 魔百盒刷机 pyautogui 向日葵 ShenTong 国产化 DBeaver ACL 流量控制 基本ACL 规则配置 prompt 繁忙 服务器繁忙 解决办法 替代网站 汇总推荐 AI推理 CDN neo4j 数据仓库 数据库开发 数据库架构 bot dba 端口测试 实时内核 nvidia 跨平台 nohup后台启动 分子对接 autodock mgltools PDB PubChem keepalived Kylin OS sonoma 自动更新 XCC Lenovo Echarts图表 折线图 柱状图 异步动态数据 鸿蒙开发 可视化效果 js grep 代码规范 safari 服务器数据恢复 数据恢复 存储数据恢复 raid5数据恢复 磁盘阵列数据恢复 embedding 高效远程协作 TrustViewer体验 跨设备操作便利 智能远程控制 chrome devtools chromedriver 历史版本 下载 sudo原理 su切换 wsgiref Web 服务器网关接口 nfs ArcTS ArcUI GridItem SSL 域名 skynet DeepSeek r1 Open WebUI 服务网格 istio cd 目录切换 Node-Red 编程工具 流编程 iTerm2 终端 java-rocketmq 机架式服务器 1U工控机 国产工控机 Jellyfin 同步 备份 建站 LORA 阻塞队列 生产者消费者模型 服务器崩坏原因 生活 MAC SecureCRT langchain deep learning NLP模型 自学笔记 小米 澎湃OS Android apt 源代码 黑客技术 vpn URL api pyqt xpath定位元素 bat 内网环境 OpenHarmony Claude Desktop Claude MCP Windows Cli MCP sdkman 管道 华为OD 可以组成网络的服务器 cpp-httplib 网工 opensearch helm 服务器主板 AI芯片 用户缓冲区 MI300x WebRTC linux 命令 sed 命令 支付 微信支付 开放平台 图形渲染 RoboVLM 通用机器人策略 VLA设计哲学 vlm fot robot 视觉语言动作模型 小游戏 五子棋 聊天服务器 套接字 自动化任务管理 命令行 基础入门 vasp安装 easyui perl ELF加载 SSH 服务 SSH Server OpenSSH Server 游戏服务器 TrinityCore 魔兽世界 zerotier cocoapods k8s部署 MySQL8.0 高可用集群(1主2从) SenseVoice pppoe radius yum源切换 更换国内yum源 音乐服务器 Navidrome 音流 雨云服务器 token sas stable diffusion cmake 推荐算法 渗透 蓝耘科技 元生代平台工作流 ComfyUI 源码 Docker快速入门 桌面环境 code-server SVN Server tortoise svn 混合开发 环境安装 文件分享 网页设计 远程过程调用 Windows环境 玩游戏 考研 saltstack 金仓数据库 2025 征文 数据库平替用金仓 相差8小时 UTC 时间 在线office 银河麒麟操作系统 RAGFlow 华为证书 HarmonyOS认证 华为证书考试 服务器部署ai模型 webgl 高效日志打印 串口通信日志 服务器日志 系统状态监控日志 异常记录日志 免费域名 域名解析 trea idea 三级等保 服务器审计日志备份 laravel docker命令大全 DocFlow risc-v chrome 浏览器下载 chrome 下载安装 谷歌浏览器下载 macbook 联想开天P90Z装win10 beautifulsoup bootstrap VM搭建win2012 win2012应急响应靶机搭建 攻击者获取服务器权限 上传wakaung病毒 应急响应并溯源 挖矿病毒处置 应急响应综合性靶场 EMQX 通信协议 飞牛NAS 飞牛OS MacBook Pro cnn 小番茄C盘清理 便捷易用C盘清理工具 小番茄C盘清理的优势尽显何处? 教你深度体验小番茄C盘清理 C盘变红?!不知所措? C盘瘦身后电脑会发生什么变化? 邮件APP 免费软件 大文件秒传跨域报错cors RTMP 应用层 ShapeFile GeoJSON Nginx Ubuntu Server Ubuntu 22.04.5 影刀 #影刀RPA# 宕机切换 服务器宕机 孤岛惊魂4 终端工具 远程工具 idm 大模型面经 大模型学习 AnythingLLM AnythingLLM安装 IP 地址 代理服务器 MobaXterm 文件传输 单一职责原则 java-zookeeper Minecraft opcua opcda KEPServer安装 DOIT 四博智联 实习 IMM 数据管理 数据治理 数据编织 数据虚拟化 Xshell 数码 联机 僵尸毁灭工程 游戏联机 开服 信号处理 powerbi qemu libvirt Linux awk awk函数 awk结构 awk内置变量 awk参数 awk脚本 awk详解 rpa 树莓派 VNC LVM lvresize 磁盘扩容 pvcreate thingsboard DenseNet 笔灵AI AI工具 iDRAC R720xd ftp服务 文件上传 conda配置 conda镜像源 电视剧收视率分析与可视化平台 日志分析 系统取证 多产物 自定义客户端 SAS can 线程池 Reactor反应堆 XFS xfs文件系统损坏 I_O error 考试 make命令 makefile文件 蓝桥杯C++组 网络文件系统 镜像 ssh远程登录 virtualbox 稳定性 看门狗 ubuntu24 vivado24 FunASR ASR 技术共享 我的世界 我的世界联机 Charles NVM Node Yarn PM2 Sealos 查看显卡进程 fuser navicat 打不开xxx软件 无法检查其是否包含恶意软件 ArtTS glm4 arkTs 我的世界服务器搭建 华为机试 浏览器开发 AI浏览器 干货分享 黑客工具 密码爆破 whistle massa sui aptos sei 进程间通信 流量运营 ISO镜像作为本地源 计算机学习路线 编程语言选择 烟花代码 烟花 元旦 word 性能调优 安全代理 本地知识库部署 DeepSeek R1 模型 vllm Helm k8s集群 备份SQL Server数据库 数据库备份 傲梅企业备份网络版 Maxkb RAG技术 本地知识库 网络建设与运维 网络搭建 神州数码 神州数码云平台 云平台 网页服务器 web服务器 wordpress Erlang OTP gen_server 热代码交换 事务语义 Ubuntu 24.04.1 轻量级服务器 材料工程 hugo kerberos pthread AI员工 GPU训练 dns是什么 如何设置电脑dns dns应该如何设置 xss PPI String Cytoscape CytoHubba 知识图谱 券商 股票交易接口api 类型 特点 deekseek Zoertier 内网组网 AI agent TCP协议 mm-wiki搭建 linux搭建mm-wiki mm-wiki搭建与使用 mm-wiki使用 mm-wiki详解 抗锯齿 postgres Dify重启后重新初始化 论文笔记 裸机装机 linux磁盘分区 裸机安装linux 裸机安装ubuntu 裸机安装kali 裸机 多路转接 可执行程序 Logstash 日志采集 嵌入式Linux IPC hosts EMUI 回退 降级 状态模式 授时服务 北斗授时 NVIDIA Qwen2.5-VL VS Code AD 域管理 nosql dock 加速 游戏开发 proxy模式 hexo ecm bpm 负载测试 小智AI服务端 xiaozhi TTS rsync 星河版 Apache Beam 批流统一 案例展示 数据分区 容错机制 vsxsrv OpenSSH 磁盘镜像 服务器镜像 服务器实时复制 实时文件备份 web3 区块链项目 win服务器架设 windows server minecraft HTTP 服务器控制 ESP32 DeepSeek 备选 网站 调用 示例 银河麒麟桌面操作系统 软考设计师 中级设计师 SQL 软件设计师 Ubuntu 24 常用命令 Ubuntu 24 Ubuntu vi 异常处理 分布式训练 卸载 列表 comfyui comfyui教程 seleium EVE-NG 弹性服务器 查询数据库服务IP地址 SQL Server sqlite pgpool qt项目 qt项目实战 qt教程 react native 国标28181 视频监控 监控接入 语音广播 流程 SIP SDP 对比 meld DiffMerge 教育电商 智能合约 哈希算法 子系统 项目部署 ubuntu安装 linux入门小白 银河麒麟高级服务器 外接硬盘 Kylin 根服务器 WINCC 电路仿真 multisim 硬件工程师 硬件工程师学习 电路图 电路分析 仪器仪表 GRE 服务器ssl异常解决 IO模型 软负载 内网服务器 内网代理 内网通信 Alist mount 挂载 网盘 需求分析 规格说明书 deepseak 豆包 KIMI 腾讯元宝 deployment daemonset statefulset cronjob ranger MySQL8.0 飞书 g++ g++13 MDK 嵌入式开发工具 冯诺依曼体系 servlet WireGuard 异地组网 运维监控 可用性测试 k8s二次开发 集群管理 hosts文件管理工具 开源软件 IMX317 MIPI H265 VCU resolv.conf mysql安装报错 windows拒绝安装 xshell termius iterm2 达梦 DM8 hdc 钉钉 mcp服务器 client close Headless Linux Trae叒更新了? 程序化交易 量化交易 高频交易 端口聚合 windows11 wpf 抓包工具 System V共享内存 进程通信 zookeeper flink 语法 Anolis nginx安装 linux插件下载 合成模型 扩散模型 图像生成 分布式账本 信任链 共识算法 docker desktop image ai工具 ldap junit 配置原理 支持向量机 移动开发 项目部署到linux服务器 项目部署过程 超融合 iNode Macos 内存管理 安全漏洞 信息安全 端口 查看 ss h.264 post.io 企业邮箱 搭建邮箱 显卡驱动持久化 GPU持久化 docker部署翻译组件 docker部署deepl docker搭建deepl java对接deepl 翻译组件使用 捆绑 链接 谷歌浏览器 youtube google gmail kubeless 文件存储服务器组件 MacOS open Euler dde shard 动态规划 Qwen3 qwen3 32b xfce 企业网络规划 华为eNSP prometheus数据采集 prometheus数据模型 prometheus特点 regedit 开机启动 NFC 近场通讯 智能门锁 client-go 崖山数据库 YashanDB SystemV IPv6 IPv6测试 IPv6测速 IPv6检测 IPv6查询 GeneCards OMIM TTD chromium dpi 商用密码产品体系 搭建个人相关服务器 swoole OpenCore linux子系统 忘记密码 玩机技巧 软件分享 软件图标 阿里云ECS qt5 客户端开发 无桌面 做raid 装系统 Radius rtc IP配置 netplan 架构与原理 智能体开发 怎么卸载MySQL MySQL怎么卸载干净 MySQL卸载重新安装教程 MySQL5.7卸载 Linux卸载MySQL8.0 如何卸载MySQL教程 MySQL卸载与安装 多个客户端访问 IO多路复用 TCP相关API 机械臂 gunicorn tailscale derp derper 中转 autodl Python基础 Python教程 Python技巧 triton 模型分析 webpack 线性代数 电商平台 C++软件实战问题排查经验分享 0xfeeefeee 0xcdcdcdcd 动态库加载失败 程序启动失败 程序运行权限 标准用户权限与管理员权限 IDEA docker部署Python 移动魔百盒 录音麦克风权限判断检测 录音功能 录音文件mp3播放 小程序实现录音及播放功能 RecorderManager 解决录音报错播放没声音问题 软件开发 lua vue-i18n 国际化多语言 vue2中英文切换详细教程 如何动态加载i18n语言包 把语言json放到服务器调用 前端调用api获取语言配置文件 llamafactory 微调 csrutil mac恢复模式进入方法 恢复模式 docker search VGG网络 卷积层 池化层 Unity Dedicated Server Host Client 无头主机 Claude 欧标 OCPP 锁屏不生效 figma 音乐库 极限编程 deepseek r1 源代码管理 midjourney mac设置host iventoy VmWare OpenEuler 信创 信创终端 中科方德 sentinel 增强现实 沉浸式体验 技术实现 案例分析 AR 僵尸世界大战 游戏服务器搭建 es GoogLeNet IPv4/IPv6双栈 双栈技术 网路规划设计 ensp综合实验 IPv4过渡IPv6 IPv4与IPv6 GIS 遥感 WebGIS USB网络共享 无法访问wordpess后台 打开网站页面错乱 linux宝塔面板 wordpress更换服务器 c/s 用户管理 虚幻引擎 问题解决 佛山戴尔服务器维修 佛山三水服务器维修 线程同步 线程互斥 条件变量 node brew 带外管理 cocos2d 3dcoat pycharm安装 UFW 服务器正确解析请求体 macOS 输入系统 金仓数据库概述 金仓数据库的产品优化提案 DrissionPage 计算虚拟化 弹性裸金属 物理地址 页表 虚拟地址 watchtower MVS 海康威视相机 桌面快捷方式 元服务 应用上架 PyQt PySide6 飞腾处理器 搜狗输入法 中文输入法 lrzsz solidworks安装 风扇控制软件 finebi HAProxy ABAP authing Masshunter 质谱采集分析软件 使用教程 科研软件 存储维护 NetApp存储 EMC存储 海康 vm AI Agent 字节智能运维 大模型推理 网络原理 创业创新 北亚数据恢复 oracle数据恢复 西门子PLC 通讯 Python 视频爬取教程 Python 视频爬取 Python 视频教程 Qt QModbus RDP Bug解决 Qt platform OpenCV 大大通 第三代半导体 碳化硅 mybase ardunio BLE paddle 接口优化 sequoiaDB tidb 设备树 火山引擎 解决方案 华为鸿蒙系统 ArkTS语言 Component 生命周期 条件渲染 Image图片组件 静态IP AzureDataStudio 框架 yashandb 李心怡 Putty 花生壳 RK3568 fiddler 充电桩平台 充电桩开源平台 cpolar caddy yum换源 qwen2vl mvc 百度云 矩池云 数据下载 数据传输 免费 电脑桌面出现linux图标 电脑桌面linux图标删除不了 电脑桌面Liunx图标删不掉 linux图标删不掉 粘包问题 Unity插件 数字证书 签署证书 solr easyTier 组网 脚本 跨域请求 anythingllm open-webui docker国内镜像 android-studio element-ui 上传视频并预览视频 vue上传本地视频及进度条功能 vue2选择视频上传到服务器 upload上传视频组件插件 批量上传视频 限制单个上传视频 Github加速 Mac上Github加速 Chrome浏览器插件 win向maOS迁移数据 知行EDI 电子数据交换 知行之桥 EDI STL qtcreator 三次握手 gru d3d12 webview AWS 华为昇腾910b3 CAD瓦片化 栅格瓦片 矢量瓦片 Web可视化 DWG解析 金字塔模型 网络库 logstash Linux的基础开发工具 MinIO pythonai PlaywrightMCP 鸿蒙NEXT 命令模式 向量数据库 安装部署 milvus安装 archlinux kde plasma 欧拉系统 设计规范 vCenter服务器 ESXi主机 监控与管理 故障排除 日志记录 零售 VM虚拟机 homeassistant #STC8 #STM32 PTrade QMT 量化股票 ECS服务器 deepseek-v3 ktransformers harmonyosnext finalsheel 提示词 web开发 SoC Metastore Catalog miniconda gitee go 接口返回 swift fpga 进程池实现 Bandizip Mac解压 Mac压缩 压缩菜单 匿名FTP 邮件传输代理 SSL支持 chroot监狱技术 bert OS 动态库 GCC编译器 -fPIC -shared 红黑树封装map和set 智能问答 Spring AI Milvus 导航栏 pyscenic 生信教程 bigdata 数据库管理 OpenManage mcp协议 go-zero 概率论 pxe mapreduce 定义 核心特点 优缺点 适用场景 GRANT REVOKE java毕业设计 微信小程序医院预约挂号 医院预约 医院预约挂号 小程序挂号 工厂方法模式 事件驱动 AI提示词优化 模板 泛型编程 aac notepad++ OpenGL Async注解 ubantu 漏洞报告生成 mujoco