路由 (Routing)

核心思想:路径选择

  • 是什么? 路由是指数据包从源主机传输到目标主机的整个过程。这个过程就像寄快递:你需要决定包裹经过哪些中转站才能最终到达收件人手里。

  • 做什么? 网络中的设备(主要是路由器)会根据一张“地图”(路由表)来决定把数据包从哪个端口发送出去,才能让它更接近目的地。

  • 比喻: 城市交通系统中的路口和路标。每个路口(路由器)根据路标(路由表)决定车辆(数据包)该往哪条路走。

下一跳 (Next Hop)

核心思想:下一个中转站

  • 是什么? 这是路由表中最关键的一个字段。它指明了数据包在通往最终目的地的路上,下一个应该被发送到的、直接相连的路由器的IP地址

  • 为什么需要? 路由器不需要知道到达最终目的地的完整路径,它只需要知道“下一个”该把包交给谁就行了。下一跳路由器收到后,也会查自己的路由表,决定再下一个跳点,如此反复,直到到达目的地。

  • 比喻: 寄快递时,你所在城市的快递分发中心。你不需要知道包裹去上海的具体路线,你只需要把包裹交给本地的快递点(下一跳),他们负责把它运到下一个更大的中转中心(下一个下一跳)。

在上面的路由表示例中:

  • 要发送数据到 10.1.1.5,本路由器会查看路由表,匹配到 10.1.1.0/24 这条记录,然后就知道该把数据包发给 192.168.1.100 这个地址(下一跳),并从 Eth0 端口发出

网关 (Gateway)

核心思想:网络的“出口”或“大门”

  • 是什么? 一个网络通向其他网络的出口点。通常就是一个路由器的接口IP地址。和ip同一网段

  • 做什么? 当一台计算机(如你的PC)想要和其他网段(比如互联网)的机器通信时,它会把所有数据包都发送给网关(也就是你电脑上配置的“默认网关”地址),由这个网关路由器负责转发。

  • 和下一跳的关系: 网关通常就是计算机的“下一跳”。对你的电脑来说,网关就是它通往外部世界的唯一“下一跳”路由器。

  • 比喻: 你家小区的大门。你想去小区外的任何地方,都必须先走到大门口,然后才能出去。

两个不同网段的ip如何通过路由器互通

在你的电脑上,通过 ipconfig (Windows) 或 ifconfig (Linux/macOS) 命令看到的 “默认网关” 就是你电脑的网关地址。

两个不同网段的ip如何通过路由器互通

具体操作

在r1中添加 pc1的网关 

选择接口           int e 0/0/0

路由器设置ip    ip address 192.168.1.2 24  #192.168.1.2为pc1的网关 24为子网掩码为24为也可以写成255.255.255.0
显示路由表       display ip routing-table

同理添加pc2

pc1即可ping  pc2

具体的例子来一步步拆解过程:

  • 设备: 两台电脑(PC1 和 PC2),一台路由器(R1)

  • 网络:

    • PC1: 192.168.1.10/24,网关设置为 192.168.1.1

    • PC2: 192.168.2.20/24,网关设置为 192.168.2.1

    • 路由器 R1: 有两个接口,就像是两个门。

      • 门1 (Eth0): 192.168.1.1/24 (连接 192.168.1.0/24 网段)

      • 门2 (Eth1): 192.168.2.1/24 (连接 192.168.2.0/24 网段)

现在,PC1 (192.168.1.10) 想要 Ping 通 PC2 (192.168.2.20)。


互通的核心条件

在通信开始前,必须确保以下基础配置正确,这是互通的前提:

  1. 物理连接: PC1 和 R1的Eth0口在同一个局域网(比如连到同一个交换机);PC2 和 R1的Eth1口在另一个局域网。

  2. IP地址配置: 所有设备的IP地址、子网掩码配置正确。

  3. 网关设置: 最关键的一步。PC1的默认网关必须指向R1的Eth0口 (192.168.1.1),PC2的默认网关必须指向R1的Eth1口 (192.168.2.1)。这相当于告诉PC们:“如果你要出门,就把包裹交给这个地址”。


通信的详细过程(五步曲)

整个过程可以分解为以下几个步骤:

     192.168.1.10给192.168.2.20发送数据,先判断是否同一网段,不是同一网段打包数据向网关地址发送出去到达路由器(该路由器已把网关设置为ip),路由器接收后查询转发到192.168.2.20,192.168.2.20接受后回复,192.168.1.10收到回复。

第1步:PC1 判断目标在哪

PC1 想要发送数据包给 192.168.2.20

  1. PC1 用自己的子网掩码 (255.255.255.0) 计算自己和目标 (192.168.2.20) 是否在同一个网段。

  2. 计算后发现:192.168.1.0 ≠ 192.168.2.0,结论是 “目标不在我家这个小区”

  3. PC1 决定:“这个包得交给网关(路由器)来处理”

第2步:PC1 封装并发送数据包
  1. PC1 开始封装数据包(以Ping包为例):

    • 目标IP地址 (Destination IP): 192.168.2.20 (最终收件人)

    • 源IP地址 (Source IP): 192.168.1.10 (最终发件人)

    • 目标MAC地址 (Destination MAC): 这是一个关键! 因为要发给网关,所以PC1需要知道网关 192.168.1.1 的MAC地址。

  2. PC1 查看自己的 ARP 缓存表,看有没有 192.168.1.1 对应的MAC地址。

    • 如果有,直接使用。

    • 如果没有,PC1 会发送一个 ARP 广播请求:“谁是 192.168.1.1?请告诉我你的MAC地址”。路由器R1的Eth0口会回应自己的MAC地址(例如 AA:AA:AA:AA:AA:AA)。

  3. PC1 将数据包封装好,其中目标MAC地址填的是网关 192.168.1.1 的MAC地址,然后通过网卡发送出去。

此时的数据包状态:

字段内容
目标MACAA:AA:AA:AA:AA:AA (R1 Eth0 的MAC)
源MACPC1的MAC地址
目标IP192.168.2.20 (PC2)
源IP192.168.1.10 (PC1)
数据(Ping请求数据)
第3步:路由器R1 接收、查询并转发
  1. 接收: 路由器R1的Eth0口收到了这个数据包。它一看目标MAC地址是自己,于是就收下这个包,解开数据链路层的封装。

  2. 查询路由表: R1 查看数据包的目标IP地址 (192.168.2.20),然后查询自己的路由表

    • R1的路由表里通常有一条直连路由:192.168.2.0/24 直接连接在 Eth1 口上。

    • R1 决定:“这个包要从我的Eth1口发出去,而且目标就在那个网段,可以直接交付,不需要再指定下一跳。”

  3. 重新封装: R1 准备将数据包从Eth1口转发出去。它需要重新封装数据链路层的帧:

    • 目标MAC地址: R1 需要知道 192.168.2.20 (PC2) 的MAC地址。R1 会查看自己的ARP缓存表,如果没有,也会在 192.168.2.0/24 网段发起ARP请求。PC2会回应自己的MAC地址(例如 BB:BB:BB:BB:BB:BB)。

    • 源MAC地址: 替换为R1的Eth1口的MAC地址(例如 CC:CC:CC:CC:CC:CC)。

    • IP地址层完全不变! 目标IP仍是 192.168.2.20,源IP仍是 192.168.1.10

此时的数据包状态 (在R1的Eth1口发出时):

字段内容
目标MACBB:BB:BB:BB:BB:BB (PC2 的MAC)
源MACCC:CC:CC:CC:CC:CC (R1 Eth1 的MAC)
目标IP192.168.2.20 (PC2)
源IP192.168.1.10 (PC1)
数据(Ping请求数据)
第4步:PC2 接收并回复
  1. PC2 收到数据包,发现目标MAC地址是自己,目标IP地址也是自己,于是收下包。

  2. PC2 处理这个Ping请求,并准备发送一个Ping回复包给 192.168.1.10

  3. 回复过程重复上述步骤:

    • PC2 判断 192.168.1.10 不在本地网段。

    • PC2 将回复包发给自己的网关 192.168.2.1 (R1的Eth1口),目标MAC地址填R1 Eth1的MAC (CC:CC:CC:CC:CC:CC)。

    • 路由器R1收到后,查询路由表,发现去往 192.168.1.10 要走Eth0口。

    • R1 将回复包重新封装,目标MAC地址改为PC1的MAC地址,从Eth0口发回给PC1。

第5步:PC1 收到回复,互通完成

PC1 收到来自PC2的回复,一次完整的跨网段通信就完成了。

总结与关键点

  1. 路由器是核心: 路由器是连接不同网段的桥梁,其每个接口都属于一个不同的网段。

  2. 网关是关键: 主机必须正确配置网关地址,否则它无法将去往外网的数据包送达到路由器。

  3. MAC地址在变,IP地址不变:

    • MAC地址段内通行证,只在同一个局域网内有效。每经过一个网段(一跳),源和目标MAC地址都会被重写。

    • IP地址全程通行证,从源到目标始终保持不变,它决定了数据的最终目的地。

  4. 路由表是决策依据: 路由器根据内部的路由表决定数据包该从哪个接口发出去。

你可以把路由器想象成一个邮局分拣中心。PC1把收件人是PC2的包裹(数据包)寄到本地邮局(网关),分拣中心(路由器)根据地址(路由表)决定把它分到开往PC2所在区域的卡车上(从另一个接口发出),最后由当地邮递员(目标网段的ARP/MAC)送达PC2手中。

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

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

相关文章

HiDDeN论文解读与代码实现

论文:HiDDeN: Hiding Data With Deep Networks 作者:Jiren Zhu, Russell Kaplan, Justin Johnson, Li Fei-Fei一、研究背景 在图像信息隐藏领域,通常有两类典型的应用场景:隐写 (Steganography) 目标:实现秘密通信。要…

实验室服务器配置|实验室多人共享GPU|通过Docker实现Linux系统多用户隔离与安全防控

利用实验室服务器跑实验的时候,通常就是两种方案,一个是向日葵远程桌面进行操作,一个是通过ssh进行连接,用ssh的话,一般服务器都在内网(例如校园网),是无法在公网(不在校…

2019考研数学(二)真题

一、选择题 (1) (2) (3) (4) 遗漏点:由通解知特解,特解代入微分方程 (5) ★记住这个题,用的泰勒展开(6) (7) 遗忘点: ★伴随矩阵的秩与原矩阵秩的关系: (8) 错误点:粗心 二、填空题 (9) 易混淆点&#xff…

10 分钟上手 ECharts:从“能跑”到“生产级”的完整踩坑之旅

10 分钟上手 ECharts:从“能跑”到“生产级”的完整踩坑笔记 如果你也曾 复制了官方 Demo 却不知道怎么拆、窗口一拉伸图表就变形、切换标签页后内存暴涨——这篇博客就是为你写的。 我会用 6 个递进版本 的源码,带你把一张 最简柱状图 逐步进化成 可销毁…

二级缓存在实际项目中的应用

二级缓存在项目中的应用 目录 1. 二级缓存简介2. 应用场景3. 重难点分析4. 结合SpringBoot使用5. 最佳实践与案例6. 总结 1. 二级缓存简介 1.1 什么是二级缓存 二级缓存(Second-Level Cache) 是Hibernate框架中的一个重要特性,它提供了应…

深入浅出CRC校验:从数学原理到单周期硬件实现 (2)CRC数学多项式基础

数学的优雅:剖开CRC的多项式除法核心看似复杂的CRC校验,其核心建立在优雅的数学基础之上。本文将为您揭开CRC算法的数学面纱,让您真正理解多项式除法的精妙之处。模2运算:CRC世界的特殊算术 CRC计算建立在一种特殊的代数系统上——…

软考初级有没有必要考?

对正在学习相关专业的学生或者是行业新人,这篇文章从软考初级的含义、适合哪些人考、考试难度等方面解答,帮助你判断要不要报考。一、软考初级是什么? 软考初级是软考体系里面的基础级别,主要面向在校大学生或是IT行业新人&#x…

11 Prompt 工程进阶:Few-shot 与 Chain-of-Thought

11 Prompt 工程进阶:Few-shot 与 Chain-of-Thought 前10节总结 & 后10节展望 在前 10 节,我们已经完成了 AI 产品经理的入门阶段: 1–3:理解了大模型的基本概念、Token、Prompt 基础;4–5:体验了本地部…

ARM1.(ARM体系结构)

1.基本概念嵌入式:以应用为心,以计算机技术为础,软便件可被的专用计算机系统。计算机系统的软件基本组成: 系统软件、应用软件。计算机系统的硬件基本组成:运算器、控制器、存诸器、输入设备、输出设备日常生活中遇到的专业术语&#xff1a…

Django全栈班v1.01 Python简介与特点 20250910

从零开始的Python编程之旅 “人生苦短,我用Python。”这不仅仅是Python程序员的口头禅,更是对Python强大能力的最好诠释!!! 为什么全世界有超过1500万开发者选择Python? 为什么Python连续多年蝉联最受欢…

【WebApi】什么情况开启如何开启缓存

在 ASP.NET Core WebAPI 中开启缓存是优化性能、减少服务器负载和提升用户体验的非常重要的手段。但并非所有情况都适合开启缓存。 下面我将从 “什么情况下开启” 和 “如何开启” 两个方面为你详细解释。 一、什么情况下应该开启缓存? 总的来说,缓存适用于 “变化不频繁但…

Go语言类型断言全解析

类型断言的基本概念类型断言(Type Assertion)是Go语言中用于检查接口值底层具体类型的机制。它本质上是一种运行时类型检查的操作,允许程序在运行时判断接口变量是否持有特定的类型值,并提取该类型的值。这是Go语言类型系统中的一个重要特性,…

大模型在题目生成中的安全研究:攻击方法与防御机制

大模型在题目生成中的安全研究:攻击方法与防御机制 文章目录大模型在题目生成中的安全研究:攻击方法与防御机制一、引言二、大模型在题目生成中的安全漏洞与攻击方法2.1 大模型在题目生成中的安全漏洞分析2.1.1 训练数据相关漏洞2.1.2 模型架构与特性相关…

跟做springboot尚品甄选项目(二)

登录功能的书写 后端接口的书写 (1)创建配置文件 粘贴这两个文件(E:\project\AllProJect\Shangpin Selection\项目材料素材\资料\资料\03-配置文件) 在spzx-manager服务的src/resources目录下创建application.yml、application-…

前后端接口调试提效:Postman + Mock Server 的工作流

前后端接口调试提效:Postman Mock Server 的工作流 🌟 Hello,我是摘星! 🌈 在彩虹般绚烂的技术栈中,我是那个永不停歇的色彩收集者。 🦋 每一个优化都是我培育的花朵,每一个特性都是…

大带宽香港云服务器在数据传输速度上有何优势?

为方便站长快速部署网站、优化用户访问体验,当下众多实力强劲的香港数据中心,均推出了大带宽云服务器产品。不过,市面上不少数据中心虽宣称提供 “专属大带宽”,但其线路配置中,国际线路占比高、绕行链路多&#xff0c…

HT862 智能音频功率放大器:为便携音频设备打造高效稳定的音质解决方案

在蓝牙音箱、智能手机、便携式游戏机等设备的设计中,音频功率放大器是决定音质表现、续航能力与使用稳定性的关键部件。一款优质的音频功放,不仅需要输出足够的功率以满足清晰响亮的听觉需求,还需在能效、温控、适配性上达到平衡,…

HarmonyOS-ArkUI Web控件基础铺垫7-HTTP SSL认证图解 及 Charles抓包原理 及您为什么配置对了也抓不到数据

HarmonyOS-ArkUI Web控件基础铺垫6--TCP协议- 流量控制算法与拥塞控制算法 HarmonyOS-ArkUI Web控件基础铺垫5--TCP协议- 动画展示超时重传,滑动窗口,快速重传 HarmonyOS-ArkUI Web控件基础铺垫4--TCP协议- 断联-四次挥手解析 HarmonyOS-ArkUI Web控件…

【qt】通过TCP传输json,json里包含图像

主要是使用协议头 发送方connect(m_pDetectWorker, &DetectionWorker::sig_detectImg, this, [](const QJsonObject &json){// 转换为JSON数据QJsonDocument doc(json);QByteArray jsonData doc.toJson(QJsonDocument::Compact);// 构建增强协议头struct EnhancedHead…

四,基础开发工具(下)

4.5自动构建make/Makefile4.5.1基本使用1示例2进一步解释3实践4最佳实践4.6练习:进度条4.6.1倒计时4.6.2进度条version14.6.2进度条version24.7版本控制器Git4.7.1git操作1操作一次,以后不愁2经典"三件套"3常用4版本回退4.7.2小结4.5自动构建m…