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

ip网络基础

交换机工作原理:

  • 自主学习mac地址并成mac地址表

  • 根据mac地址表再进行单播、广播转发

主机通信原理(局域网):

需要了解arp协议

拓扑图:

image-20250701151001986

首先,我们观察icmp数据包,发现缺少目标mac地址,需要发送arp包获得pc3的mac地址,并且让交换机学习保存pc3的mac地址:

image-20250701150758924

pc0发包给pc3,交换机mac地址为空,交换机先学习mac地址

image-20250701144736332

pc0发包到达交换机,pc0的mac地址被交换机学习保存:

image-20250701145003439

交换机查询mac地址表,发现没有pc3的mac地址,进行广播转发,pc1和pc2拆包发现目标mac地址不他们,直接丢包

image-20250701145159748

pc3收到包之后对pc0进行回复,包到达交换机,pc3的mac地址被交换机学习:

image-20250701145449840

包到达pc0,pc0封装icmp数据包准备发送:

image-20250701145618411

我们来对比一下两个icmp数据包:

一:

image-20250701145812526

二:

image-20250701145837226

第二个,也就是arp包返回后重新封装的icmp已经完整。

pc0向pc3发送icmp数据包,到达交换机时,交换机进行查表,发现已经存在pc3的mac地址,直接进行单播转发给pc3:

image-20250701150104386

image-20250701150128878

随后,pc3对pc0的通信进行回复,通信结束:

image-20250701150505339

主机通信原理(局域网之间)

拓扑图:

image-20250701155508471

pc4与pc7进行通信:

观察第一个icmp包,计算对比IP,发现网络号不一样,因此需要经过网关与pc7通信,即arp包的目的ip为网关地址

image-20250701155916361

观察arp包,目的mac地址为广播包,目的IP为网关地址。

image-20250701155813190

交换机收到arp包后进行广播转发,很明显,pc5不是,丢包

image-20250701160345971

路由器收到包后进行回复,目的IP和mac地址为pc4

image-20250701160608808

途经交换机,到达pc4,准备发送icmp包:

image-20250701160827633

此时的icmp包被重新封装,目的mac地址为路由器左侧网关:

image-20250701161002993

icmp包直接到达路由器,此时路由器重新封装icmp包,目的mac地址变为pc7的,源mac地址变为路由器右侧网关的:

image-20250701161426673

image-20250701161443305

数据包到达pc7,pc7准备回复pc4,此时的arp包的目的mac地址为广播,目的ip为路由器右侧网关:

icmp:

arp:

image-20250701162255471

通过交换机,交换机进行广播,pc6丢包,路由器收包,准备回复pc7:

image-20250701162429445

路由器回复pc7:

image-20250701162721110

pc7收包后重新封装icmp包准备回复pc4:

image-20250701162827649

接下来就是一路畅通:

http://www.xdnf.cn/news/1076149.html

相关文章:

  • FastGPT与MCP:解锁AI新时代的技术密码
  • 百度轮岗:任命新CFO,崔珊珊退居业务二线
  • 使用Electron开发跨平台RSS阅读器:从零到一的完整指南
  • Linux查看空间大小相关命令内容
  • 数据结构复习4
  • 前端计算机视觉:使用 OpenCV.js 在浏览器中实现图像处理
  • Oracle 常用函数
  • 38.docker启动python解释器,pycharm通过SSH服务直连
  • 【软考高项论文】论信息系统项目的进度管理
  • Zookeeper安装使用教程
  • SQL规范
  • IDEA相关配置记录
  • 【中文核心期刊推荐】《计算机应用与软件》
  • Windows CMD命令分类大全
  • 前端开发面试题总结-原生小程序部分
  • 衡石科技使用手册-企业即时通讯工具数据问答机器人用户手册
  • STM32要学到什么程度才算合格?
  • 华为云Flexus+DeepSeek征文|基于 Dify-LLM 构建网站智能客服助手的实践探索
  • Go语言安装使用教程
  • C++ 快速回顾(五)
  • Python 数据分析与机器学习入门 (二):NumPy 核心教程,玩转多维数组
  • 湖北理元理律师事务所债务解法:从法律技术到生活重建
  • 长短期记忆网络(LSTM):让神经网络拥有 “持久记忆力” 的神奇魔法
  • 安装bcolz包报错Cython.Compiler.Errors.CompileError: bcolz/carray_ext.pyx的解决方法
  • JavaScript异步编程的五种方式
  • 反射,枚举和lambda表达式
  • 七天学会SpringCloud分布式微服务——06——Sentinel
  • springboot中多个定时任务(@Scheduled)如何互不影响
  • 如何用废弃电脑变成服务器搭建web网站(公网访问零成本)
  • OpenCV CUDA模块设备层----- 正切(tangent)运算函数tan()