当前位置: 首页 > news >正文

交换机、路由器、网关、MAC地址——从入门到实战

你是否好奇,当你在手机上点击一个网页链接时,数据是如何从你的设备“飞”到千里之外的服务器并返回的?背后离不开交换机、路由器、网关和MAC地址的默契配合。本文用通俗语言+实战场景,带你彻底搞懂这些网络核心组件,从此不再被专业术语吓倒!


一、MAC地址:设备的“身份证号”

1.1 什么是MAC地址?
  • 定义:MAC地址(Media Access Control Address)是网卡的唯一物理标识,类似于人的身份证号。

  • 格式:由48位二进制数组成,通常显示为6组十六进制数(如 00:1A:2B:3C:4D:5E)。

    图片

  • 核心特性

全球唯一:前24位由IEEE分配给厂商(如华为、华硕),后24位由厂商自行分配。

    不可修改:虽然可通过软件临时伪装(MAC克隆),但硬件层面的MAC地址固化在网卡中。

      1.2 MAC地址的作用
      • 局域网内的精准定位:在同一个网络(如你家WiFi)中,设备通过MAC地址直接通信。

      • ARP协议的关键:通过ARP(地址解析协议),设备将目标IP地址转换为MAC地址。例如:

      当你的电脑(IP 192.168.1.100)想访问同局域网的打印机(IP 192.168.1.200),会先广播ARP请求:“谁是192.168.1.200?请告诉我你的MAC地址!”

        1.3 实战场景:为什么WiFi需要MAC地址过滤?
        • 安全防护:路由器可设置“仅允许特定MAC地址的设备接入网络”,防止陌生人蹭网。

        • 局限性:MAC地址容易被伪造,因此需结合WPA3加密等更高级的安全措施。


        二、交换机:局域网的高效“邮局分拣员”

        2.1 交换机的核心功能
        • 数据帧的智能转发

        传统集线器(Hub)像“大喇叭”,所有数据广播到所有端口,导致网络拥堵。

          交换机则像“智能分拣员”,通过MAC地址表(记录端口与MAC地址的映射),将数据精准发送到目标设备。

          图片

          • 学习与泛洪机制

            学习模式:首次收到数据帧时,记录源MAC地址和对应端口。

            泛洪模式:若目标MAC地址不在表中,向所有端口广播(除来源端口),直到目标设备回应。

          2.2 交换机的两大特性
          • 分割冲突域:每个端口独立工作,避免数据碰撞(比如A向B传文件时,C和D仍可互相通信)。

          • 不隔离广播域:所有端口属于同一广播域,ARP请求等广播消息会传遍整个网络。

          2.3 企业级应用:VLAN技术
          • 问题:大型局域网中广播风暴频发,如何隔离部门间的流量?

          • 解决方案:通过VLAN(虚拟局域网),将同一交换机的端口划分到不同逻辑网络,广播仅在VLAN内传播。


          三、路由器:跨网络通信的“导航专家”

          3.1 路由器的核心使命
          • 连接不同网络:例如将家庭局域网(192.168.1.0/24)与互联网(公网IP)联通。

          • IP地址路由:根据路由表(记录目标网络与下一跳地址的映射)选择最优路径。

            路由表生成方式:静态配置(手动添加)或动态学习(通过OSPF、BGP等协议)。

            图片

          3.2 关键功能:NAT(网络地址转换)
          • 背景:IPv4地址枯竭,私有IP(如192.168.x.x)无法直接访问公网。

          • NAT原理

          家庭路由器将内网设备的私有IP转换为公网IP(如120.230.10.20)。

            通过端口号区分不同内网设备(如手机和电脑同时访问百度)。

              3.3 实战问题:为什么重启路由器能解决90%的网络故障?
              • 原因:重启会清空路由表缓存、重置NAT映射表、重新协商PPPoE拨号连接,解决临时配置错误或内存溢出问题。


              四、网关:网络的“出境口岸”

              4.1 网关的两种定义
              • 狭义网关:即默认网关(Default Gateway),是设备访问外网的出口IP(通常是路由器的内网IP,如192.168.1.1)。

              • 广义网关:支持不同协议转换的设备或服务(如邮件网关将HTTP协议转换为SMTP协议)。

              4.2 为什么必须设置网关?
              • 跨子网通信:当设备发现目标IP不在本地子网时,会将数据包发送给网关,由网关负责转发。

              • 示例:你的电脑(192.168.1.100)访问百度(220.181.38.148),由于目标IP不在192.168.1.0/24网段,数据包会先发给网关(路由器)。


              五、全流程实战:从点击网页到数据返回的完整旅程

              场景:用手机(IP 192.168.1.2,MAC AA:AA:AA:AA:AA:AA)访问 www.example.com(IP 93.184.216.34)。

              1. DNS解析:手机向DNS服务器查询域名对应的IP地址(93.184.216.34)。

              2. 判断目标网络:发现目标IP不在本地子网(255.255.255.0),需通过网关。

              3. ARP查询网关MAC地址:手机广播ARP请求:“谁是192.168.1.1?”,路由器回复MAC地址BB:BB:BB:BB:BB:BB

              4. 数据封装

                数据帧:目标MAC = 网关MAC(BB:BB:BB:BB:BB:BB),源MAC = 手机MAC。

                IP包:目标IP = 93.184.216.34,源IP = 192.168.1.2

              5. 交换机转发:根据MAC地址表,将帧发送到连接路由器的端口。

              6. 路由器处理

                NAT转换:将源IP替换为公网IP(如120.230.10.20),并记录映射关系。

                路由决策:查询路由表,通过ISP网络将数据包转发至目标服务器。

              7. 响应返回:服务器将数据包发回公网IP 120.230.10.20,路由器根据NAT表转发给手机。


              六、核心组件对比表

              组件工作层级寻址依据核心作用类比角色
              MAC地址

              数据链路层

              物理地址

              局域网内精准定位设备

              身份证号

              交换机

              数据链路层

              MAC地址

              高效转发数据帧,减少冲突

              智能邮局分拣员

              路由器

              网络层

              IP地址

              跨网络路由,NAT转换

              导航专家+翻译官

              网关

              多层级

              IP地址

              网络出口,协议转换

              出境海关


              七、常见问题解答

              Q1:交换机和路由器能互相替代吗?

              • 不能!交换机负责局域网内高效通信,路由器负责跨网络连接。家庭“无线路由器”实际是路由器+交换机+AP(无线接入点)的三合一设备。

              Q2:MAC地址会被黑客盗用吗?

              • 可能!通过MAC克隆可伪装成合法设备,需结合IP绑定、端口安全等策略防护。

              Q3:如何查看本机MAC地址?

              • Windows:命令行输入 ipconfig /all,查找“物理地址”。

              • 手机:WiFi设置→高级信息→MAC地址。


              八、总结与互动

              理解交换机、路由器、网关和MAC地址,是掌握网络通信的基础。下次遇到网络故障时,不妨尝试:

              1. 检查网关是否可达(ping 192.168.1.1);

              2. 查看ARP表(arp -a)确认MAC地址映射;

              3. 重启路由器或交换机。

              互动话题:你在生活中遇到过哪些网络问题?是重启大法解决的,还是深入排查了原因?欢迎留言分享!

              相关文章:

              交换机、路由器、网关、MAC地址——从入门到实战

              你是否好奇,当你在手机上点击一个网页链接时,数据是如何从你的设备“飞”到千里之外的服务器并返回的?背后离不开交换机、路由器、网关和MAC地址的默契配合。本文用通俗语言实战场景,带你彻底搞懂这些网络核心组件,从此…...

              【江协科技STM32】ADC数模转换器-学习笔记

              ADC简介 ADC(Analog-Digital Converter)模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁,ADC是一种将连续的模拟信号转换为离散的数字信号的设备或模块12位逐次逼近型…...

              LanceDB快速入门之基本操作与API一览

              LanceDB可以以多种方式运行 可以嵌入到现有后端(如您的 Django、Flask、Node.js 或 FastAPI 应用程序)中直接从如 Jupyter 笔记本等客户端应用程序中用于分析工作负载部署为远程无服务器数据库 安装 Python: pip install lancedbTypeScrip…...

              Spring Boot 整合 Redis

              以下是 Spring Boot 整合 Redis 的指南&#xff0c;涵盖配置、基本操作、高级用法及常见问题解决。 1. 添加依赖 在 pom.xml 中添加 Spring Data Redis 和连接池依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId&…...

              七层协议攻防实战:从HTTP慢速攻击到DNS隧道检测

              一、七层协议攻击类型与特征 攻击类型协议特征HTTP慢速攻击HTTP低速率发送不完整请求DNS隧道DNS异常长域名、高频率TXT查询API滥用攻击HTTP高频调用关键接口&#xff08;如短信发送&#xff09;WebSocket洪水WebSocket海量小消息耗尽服务器资源 二、HTTP协议深度防护 1. 慢速…...

              Java CAS(Compare-And-Swap)概念及原理

              Java CAS&#xff08;Compare-And-Swap&#xff09;概念及原理 1. CAS的基本概念 CAS&#xff08;Compare-And-Swap&#xff09;是一种无锁编程的核心技术&#xff0c;用于实现多线程环境下的原子操作。其核心思想是&#xff1a; “先比较&#xff0c;再交换”。具体操作包含…...

              内存检测工具——Qt Creator

              前言 检测内存错误的工具&#xff0c;有很多个&#xff0c;我今天粗浅的学了一下可在Qt上使用的工具们&#xff1a; Dr.Memory 工具之前我曾在关注的博主上看到相关的博客&#xff1a;C(Qt)软件调试---内存调试器Dr.Memory&#xff08;21&#xff09;_dr. memory-CSDN博客 今…...

              Ubuntu切换lowlatency内核

              文章目录 一. 前言二. 开发环境三. 具体操作 一. 前言 低延迟内核&#xff08;Lowlatency Kernel&#xff09; 旨在为需要低延迟响应的应用程序设计的内核版本。Linux-lowlatency特别适合音频处理、实时计算、游戏和其他需要及时响应的实时任务。其主要特点是优化了中断处理、调…...

              侯捷 C++ 课程学习笔记:STL标准库与泛型编程

              STL 体系结构基础介绍 STL 六大部件&#xff1a; 容器&#xff08;Containers&#xff09; 分配器&#xff08;Allocators&#xff09; …...

              Java 大视界 -- Java 大数据在智能安防视频摘要与检索技术中的应用(128)

              &#x1f496;亲爱的朋友们&#xff0c;热烈欢迎来到 青云交的博客&#xff01;能与诸位在此相逢&#xff0c;我倍感荣幸。在这飞速更迭的时代&#xff0c;我们都渴望一方心灵净土&#xff0c;而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识&#xff0c;也…...

              19874并查集

              19874并查集 ⭐️难度&#xff1a;中等 &#x1f31f;考点&#xff1a;并查集、数据结构 &#x1f4d6; &#x1f4da; import java.util.*;public class Main {static int N 100010;static int[] a new int[N];static int[] p new int[N];static int n;static int m;st…...

              ABC 376

              目录 D. Cycle D. Cycle&#xff08;改&#xff09; E. Max Sum D. Cycle 这道题就是个 01 最短路&#xff0c;直接从 1 开始 bfs 看能不能回到 1 #include<bits/stdc.h> #define int long long using namespace std; const int N 2e5 5, INF 1e18;struct node {int …...

              win32汇编环境,对 WM_MOUSEMOVE 消息的理解

              ;运行效果 ;win32汇编环境,对 WM_MOUSEMOVE 消息的理解 ;理解在 WM_MOUSEMOVE 消息发生时&#xff0c;同时来的wParam和lParam值的含义&#xff0c;并取出各自的值进行运用。从这例子也可以更好的理解windows的消息机制. ;WM_MOUSEMOVE消息就是当鼠标移动时&#xff0c;发送给窗…...

              第27周JavaSpringboot电商进阶开发 2.常用功能进阶

              电商常用功能进阶 - 课程笔记整理 Excel解析与处理 一、课程内容概述 本小节开始进入电商常用功能进阶部分&#xff0c;主要讲解以下内容&#xff1a; Excel的解析和处理商品图片的处理Valid注解对列表的验证订单数变化趋势图Spring Boot高级功能 二、Excel解析与处理的背…...

              网络安全基础知识:从零开始了解网络安全

              ### 网络安全基础知识&#xff1a;从零开始了解网络安全 欢迎来到《零基础入门到独立参加网络安全比赛》系列教程的第一篇&#xff01;在这篇文章中&#xff0c;我们将从最基础的概念开始&#xff0c;深入探讨网络安全的定义、重要性、常见的网络攻击类型&#xff0c;以及网络…...

              【A2DP】蓝牙A2DP协议剖析:从架构到规范

              目录 一、A2DP 协议架构 1.1 A2DP 协议栈结构组成 1.2 协议栈各部分的关系与作用 二、设备配置与角色定义&#xff08;Configurations and roles &#xff09; 2.1 角色定义 2.2 配置示例与角色体现 三、用户需求与场景 3.1 用户需求与场景 3.2 协议限制 3.3 协议要求…...

              python力扣15. 三数之和

              给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三元组。 示例 1&am…...

              Linux之系统文件目录理解

              1.boot/ 存储启动系统的相关文件的 2.swap/ 虚拟内存 3.dev/ 用于存放设备文件&#xff08;device files&#xff09;。这些文件是操作系统与硬件设备之间的接口&#xff0c;允许用户和程序通过文件操作的方式访问硬件资源 字符设备&#xff08;Character Devices&#xf…...

              uvm_transaction, uvm_seq_item, uvm_object, uvm_component的关系

              uvm_object ├── uvm_component (验证环境中的静态组件) └── uvm_transaction└── uvm_sequence_item (用于sequence-driver交互的事务) 2. 核心类的作用与区别 (1) uvm_object 定位&#xff1a;所有UVM类的基类。 功能&#xff1a; 提供基础的对象操作&…...

              Reflect.get和target[key]有何不同?

              主要区别在this指向不同&#xff0c;下面输出张三还是李四?&#xff1a; const person{name:张三,get FullName(){return this.name;},};let personProxynew Proxy(person,{get(target,key){return Reflect.get(target,key)//或者return target[key]}});const p1{__proto__:pe…...

              K8s 1.27.1 实战系列(十)PV PVC

              一、核心概念与关系 ​1、PV(Persistent Volume)​ PV 是集群中的持久化存储资源,由管理员预先创建并配置,独立于 Pod 生命周期。它抽象了底层存储(如 NFS、云存储等),定义存储容量、访问模式(如 ReadWriteOnce)、回收策略(Retain/Delete/Recycle)等属性。例如,一…...

              JQuery

              1.jquery介绍 jQuery是目前使用最广泛的javascript函数库。据统计&#xff0c;全世界排名前100万的网站&#xff0c;有46%使用jQuery&#xff0c;远远超过其他库。微软公司甚至把jQuery作为他们的官方库。 jQuery的版本分为1.x系列和2.x、3.x系列&#xff0c;1.x系列兼容低版…...

              「AI 加持的高效架构」高并发场景下的服务器成本优化

              网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…...

              html css 笔记

              01_浏览器相关知识 五大主流浏览器&#xff1a; Chrome Safari IE Firefox Opera (拥有自己的内核) 四大内核: webkit Trident Gecko blink. 02_网页相关知识 构成 网址 网站 网页 网页标准&#xff1a; 结构 表现 行为 分别对应 HTML CSS JavaScript 03_HTML简介 H…...

              通义万相 2.1:AIGC 领域的 “王炸” 组合如何颠覆创作生态?

              引言 在数字化和人工智能的飞速发展中&#xff0c;AIGC&#xff08;AI生成内容&#xff09;技术已经成为推动创作、设计和内容生成领域创新的核心力量。而当通义万相2.1与蓝耘智算平台强强联手&#xff0c;这一“王炸”组合不仅提升了AIGC的效率&#xff0c;还为创作生态带来了…...

              Math.NET Numerics 库怎么装

              你提到的缺少的库是 Math.NET Numerics。 关于 Math.NET Numerics Math.NET Numerics 是一个用于 .NET 平台的开源数学库&#xff0c;提供了以下功能&#xff1a; 线性代数&#xff08;矩阵运算、求解线性方程组等&#xff09;。数值计算&#xff08;积分、微分、优化等&…...

              NPM安装与配置全流程详解(2025最新版)

              写目录 一、环境准备与Node.js安装1. 下载Node.js&#xff08;含NPM&#xff09;2. 验证安装 二、NPM核心配置优化1. 全局模块与缓存路径设置2. 镜像加速3. 代理配置&#xff08;企业网络适用&#xff09; 三、NPM基础操作指南1. 项目初始化2. 包管理命令3. 依赖锁定与版本管理…...

              python-52-基于Langchain和Faiss实现向量存储和检索的技术原理

              文章目录 1 文本加载与预处理1.1 计算文本的MD5哈希值1.2 加载文本并计算哈希2 初始化向量存储2.1 基于Ollama的嵌入模型2.2 获取code和id的对应关系2.3 清空索引向量2.4 基于HuggingFaceEmbeddings的嵌入模型2.4.1 将模型下载到本地2.4.2 使用方式3 添加新文本3.1 处理新文本并…...

              游戏引擎学习第140天

              回顾并为今天的内容做准备 目前代码的进展到了声音混音的部分。昨天我详细解释了声音的处理方式&#xff0c;声音在技术上是一个非常特别的存在&#xff0c;但在游戏中进行声音混音的需求其实相对简单明了&#xff0c;所以今天的任务应该不会太具挑战性。 今天我们会编写一个…...

              Jetpack Navigation 实战:Fragment 和 Activity 的交互与导航

              在 Android 开发中&#xff0c;使用 Jetpack Navigation 组件可以方便地管理 Fragment 和 Activity 之间的导航。以下是如何使用 Jetpack Navigation 实现 Fragment 之间、Activity 之间以及 Activity 与 Fragment 之间跳转的实战示例。 1. 添加依赖 首先&#xff0c;在 build.…...

              Linux中的基本指令(上)

              目录 ls指令 判断linux中文件 pwd指令 认识路径 ​编辑 绝对路径/相对路径 cd指令 简要理解用户 理解家目录 echo指令和printf指令 touch指令 mkdir指令 cat指令 tree指令 rmdir指令和rm指令 man指令 cp指令 which指令 alias 指令 date指令 cal指令 理解…...

              多用户网页在线聊天室(测试报告)

              文章目录 多用户网页在线聊天室一&#xff0c;项目概括1.1 项目名称1.2 测试时间1.3 项目背景1.3 编写目的 二&#xff0c;测试计划2.1 测试环境与配置2.2 测试用例2.3实际执行用例2.3.1登录2.3.2聊天消息列表展示2.3.3聊天消息详情页展示2.3.4联系人页展示2.3.5信息的编辑与发…...

              字节青训营后端方向的个人总结(2025年3月4日)

              字节青训营的结营总结&#xff08;25寒假&#xff09; ——致青训营队友的一封信 明天就是大项目结项的日子了&#xff0c;不知道大家在这方面学习、精进了多少&#xff0c;也许有的朋友收获颇多并且已经完成了项目&#xff0c;我个人对此表示由衷的恭喜和祝贺。 当初自告奋…...

              VX iOS分析随记

              断SVC的时候看调用栈&#xff0c;发现里面一个特别大的ollvm函数。vx版本8054 * thread #36, queue com.apple.root.default-qos, stop reason breakpoint 4.1 frame #0: 0x0000000111ad6124 WeChat___lldb_unnamed_symbol1315083 20 WeChat___lldb_unnamed_symbol13150…...

              docker 小记

              一、卸载 查看当前版本 docker -v2. 如果有&#xff0c;先停止docker systemctl stop docker如果是yum安装&#xff0c;卸载方式为 #已防版本冲突&#xff0c;直接卸载 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-lat…...

              AI代码编程辅助工具

              现在AI火的一塌糊涂&#xff0c;作为技术应该更应该关注当前AI对编程行业的影响。 分享下当前网络上最火的网络编程辅助工具。 以下是个人搜集到的可以对编程起辅助作用的工具&#xff1a; 2025年最佳AI编程辅助工具 1. GitHub Copilot 这个工具也许你已经在使用了&#xff0…...

              使用 kubectl cp 命令可以在 Kubernetes Pod 和本地主机之间拷贝文件或文件夹

              使用 kubectl cp 命令可以在 Kubernetes Pod 和本地主机之间拷贝文件或文件夹 kubectl cp <namespace>/<pod-name>:<pod-path> <local-path> # 从 Pod 拷贝到本地 kubectl cp <local-path> <namespace>/<pod-name>:<pod-path&g…...

              【eNSP实战】交换机配置端口隔离

              交换机端口隔离可以实现在同一个VLAN内对端口进行逻辑隔离&#xff0c;端口隔离分为L2层隔离和L3层隔离&#xff0c;这里只进行L2层隔离演示。 拓扑图 路由器AR1配置GE 0/0/1配置IP&#xff0c;其余PC主机各自配置IP和网关。 现将PC1到PC4四个主机全部进行L2层隔离&#xff0c…...

              动态规划-第2篇

              前言&#xff1a;在上一篇文章中&#xff0c;我们了解了动态规划的基本概念和解决问题的基本思路。通过分解问题、存储子问题的解&#xff0c;动态规划为我们提供了高效的解决方案。然而&#xff0c;动态规划并不是一成不变的&#xff0c;它有很多不同的技巧和变种&#xff0c;…...

              数据库查问题常用OS命令汇总

              1、内存使用情况查看 top //查看活跃进程占用情况 free -mh //查看操作系统当前可用内存 2、cpu使用情况 lscpu //查看os cpu情况 sar -u -f sar文件名 -s hh:mm:ss -e hh:mm:ss //查看对应日期的历史cpu情况 top //查看当前活跃进程使用cpu情况 3、io情况 iostat …...

              基于springboot住院管理系统(源码+lw+部署文档+讲解),源码可白嫖!

              摘要 随着世界经济信息化、全球化的到来和电子商务的飞速发展&#xff0c;推动了很多行业的改革。若想达到安全&#xff0c;快捷的目的&#xff0c;就需要拥有信息化的组织和管理模式&#xff0c;建立一套合理、畅通、高效的线上管理系统。当前的住院管理存在管理效率低下&…...

              《用Python+PyGame开发双人生存游戏!源码解析+完整开发思路分享》

              导语​ "你是否想过用Python开发一款可玩性高的双人合作游戏&#xff1f;本文将分享如何从零开始实现一款类《吸血鬼幸存者》的生存射击游戏&#xff01;包含完整源码解析、角色系统设计、敌人AI逻辑等核心技术点&#xff0c;文末提供完整代码包下载&#xff01;" 哈…...

              【ES6】在ES6中自定义数组

              在ES6中是允许自定义类扩展基础类型的&#xff0c;因为这些基础类型是有构造函数的&#xff0c;在JS中类就是函数。 // 自定义数组 class myArray extends Array {constructor() {super();} }let arr new myArray();arr.push(1);console.log(arr);重写Array的原生方法 ES6的…...

              软件开发项目有哪些风险

              软件开发项目风险主要包括 需求不明确、技术实现难度大、进度延误、成本超支、质量问题。其中&#xff0c;需求不明确可能导致功能设计反复修改&#xff1b;技术实现难度大会使开发过程中不断遇到未知挑战&#xff1b;进度延误常常因资源配置不足或变更频繁而发生&#xff1b;成…...

              47.HarmonyOS NEXT 登录模块开发教程(二):一键登录页面实现

              温馨提示&#xff1a;本篇博客的详细代码已发布到 git : https://gitcode.com/nutpi/HarmonyosNext 可以下载运行哦&#xff01; HarmonyOS NEXT 登录模块开发教程&#xff08;二&#xff09;&#xff1a;一键登录页面实现 文章目录 HarmonyOS NEXT 登录模块开发教程&#xff0…...

              RAGFlow版本升级-Win10系统Docker

              下载源码压缩包 https://github.com/infiniflow/ragflow.git 删除旧版本代码文件夹&#xff0c;把下载的代码解压到原先目录 更新一下env文件&#xff1a;ragflow/docker/.env 把值改为最新版本即可 RAGFLOW_IMAGEinfiniflow/ragflow:v0.17.1 更新一下docker docker compose -…...

              dns劫持是什么?常见的劫持类型有哪些?如何预防?

              DNS劫持的定义 DNS劫持&#xff08;Domain Name System Hijacking&#xff09;是一种网络攻击手段&#xff0c;攻击者通过篡改域名解析的过程&#xff0c;将用户对某个域名的访问请求重定向到错误或恶意的IP地址。这种攻击可能导致用户访问到钓鱼网站、恶意广告页面&#xff0…...

              Python精进系列: isinstance 函数

              Python isinstance函数&#xff1a;类型检查的得力助手 目录 Python isinstance函数&#xff1a;类型检查的得力助手引言一、isinstance函数基础语法结构简单示例 二、isinstance函数的应用场景函数参数类型检查数据处理与类型转换面向对象编程中的类型判断 三、isinstance函数…...

              【基础知识】回头看Maven基础

              版本日期修订人描述V1.02025/3/7nick huang创建文档 背景 项目过程中&#xff0c;对于Maven的pom.xml文件&#xff0c;很多时候&#xff0c;我通过各种参考、仿写&#xff0c;最终做出想要的效果。 但实际心里有些迷糊&#xff0c;不清楚具体哪个基础的配置所实现的效果。 今…...

              练习题:81

              目录 Python题目 题目 题目分析 需求理解 关键知识点 实现思路分析 代码实现 代码解释 运行思路 结束语 Python题目 题目 使用字典推导式创建一个字典&#xff0c;键为 1 到 10 的整数&#xff0c;值为键的平方。 题目分析 需求理解 本题要求使用 Python 的字典…...