这是一个老掉牙的问题,并且在很多大学考试、考级、考证都都会遇到,今天我就来简单地说一下这个问题。

一、首先给出结论:

1、数据包在传递过程中源IP地址,目的IP地址一直不变
2、每次经过交换机,源目MAC不变
3、每次经过路由器,源MAC地址为本路由器接口MAC地址,目的MAC地址为该目的IP地址下一条对应IP地址的MAC地址。
4、由计算机发出的数据包,如果目的IP和本地IP处于同一网段,那么目的MAC地址是目的IP地址对应的MAC地址;如果不是一个网段,那么目的MAC地址是网关的MAC地址。
5、当然,上述结论的形成,不考虑NAT、VPN等特殊情况。

二、其次分析原因

源目IP和源目MAC变化问题其实是计算机网络中数据包转发问题TCP/IP协议中数据包封装问题。涉及到网络层数据链路层两个层面。
在网络层中,数据包寻址用到的是IP地址;在数据链路层,数据包寻址用到的是MAC地址。

注:
1、在这里我们默认局域网类型是以太网,如果网络类型不是以太网,可能在数据链路层封装的时候根本不会封装MAC地址。
2、不要问为什么链路层用MAC地址,而网络层用IP地址,这是由计算机网络的发明者们设计的,其实这样做,有方便开发和路由寻址的考虑。

基于此,在网络层层面上,由于源目IP都是一致的,因此源目IP在数据包传递过程中肯定不会发生变化。而在数据链路层面上,由于数据包在传递过程中需要有路由转发的参与,因此源目MAC地址会不断的发生变化。
形象的说,发送数据包就像是寄信,源目IP就像是写信方和收信方,因此源目MAC不会发生变化。而在信从写信方到收信方,会经过多次的中转,MAC地址就相当于在中转的过程中起作用,MAC地址表明了要传递给哪一个中转站,因此MAC地址会不断的变化。
原创不易,转载请说明出处,原文链接:
https://blog.csdn.net/weixin_40228200/article/details/118250850

计算机网络误区——源目IP和源目MAC变化问题相关推荐

  1. 【计算机网络】有了 IP 地址,为什么还要用 MAC 地址?

    [计算机网络]有了 IP 地址,为什么还要用 MAC 地址? 简单的说就是ip是个框架,定义的时候有些东西并没有考虑到,以太网只定义1~2层(物理层.数据链路层),IP和TCP分别定义了3.4层(网络 ...

  2. 计算机网络——IP地址与MAC地址

    1.1.1 认识IP地址 IP地址用于在TCP/IP通信协议中标记每台计算机的地址,通常使用十进制来表示,但在计算机内部,IP地址是一个32位的二进制数值. IP地址 网络号 表示其所属的网络段编号. ...

  3. 数据包经由路由转发时源、目的IP地址及MAC地址变化情况

    IP数据包经由路由转发的时候源ip,目的ip,源MAC,目的mac是否发生改变,如何改变? A-–(B1-B2)-–(C1-C2)---E 如上拓扑图为例,B1和B2是路由器B上的两个接口,C1和C2 ...

  4. 编程获取ip地址与mac地址的对应关系_[读书笔记]CSAPP:25[VB]网络编程1

    视频地址: [精校中英字幕]2015 CMU 15-213 CSAPP 深入理解计算机系统 课程视频_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com 课件地址: ...

  5. 计算机网络(OSI、TCP/IP、网络协议、常见网络设备工作原理)

    目录 OSI模型 TCP/IP模型 网络协议 IP协议 IP数据报格式 IP数据报分片 IPv4地址 NAT协议 ARP/RARP协议 ARP RARP DHCP协议 ICMP协议 ICMP差错报告报 ...

  6. 【IP地址和MAC地址的区别】

    一.IP地址和MAC地址的对比 先举一个例子:在现实生活中,如果我们要写一封信给别人,除信件内容以外,在信封上,我们要填写两个信息: 第一个:收信地址 第二个:收信人 映射到网络世界中,收信地址就是M ...

  7. 计算机网络——网络层路由协议、IP组播、移动 IP、路由器

    文章目录 前言 一.RIP 协议与距离向量算法 1.RIP 协议 2.距离向量算法 二.OSPF 协议与链路状态算法 1.OSPF 协议 2.链路状态算法 三.BGP 协议和三种路由协议的比较 1.B ...

  8. 计算机网络入门之TCP/IP模型

    计算机网络入门:computer internet 一.基础概念 1.计算机网络:实现资源共享.信息传递 2.www:万维网 world wide web 3.web:网页.网站 4.协议:proto ...

  9. 实验3:通过编程获取IP地址与MAC地址的对应关系的加分题

    首先,本地主机模拟一个远端主机,发送一个ARP请求报文,该请求报文请求本机网络接口上绑定的IP地址与MAC地址的对应关系:在组装报文过程中,源MAC地址字段和源IP地址字段需要使用虚假的MAC地址和虚 ...

  10. IP地址与Mac地址的关系与区别 - 学习/实践

    1.应用场景 主要用于学习IP地址与Mac地址的关系与区别,更加了解掌握计算机网络相关知识 2.学习/操作 下面是一个跨网段的网络请求根据 IP 地址和 MAC 地址最终到达目标主机的流程图 为了方便 ...

最新文章

  1. python大量数据折线图-Python数据可视化练习:各种折线图的用法
  2. SQL Server 执行计划缓存
  3. Docker mongodb Dockerfile ubuntu
  4. 赖美云的认证照_真人秀及综艺类双榜单TOP10嘉宾热度认证 赖美云双面魅力引热议...
  5. python3网络爬虫开发实战下载_【Python3网络爬虫开发实战】 1.1-Python3的安装
  6. Math对象方法总结(向上取整、向下取整、四舍五入、取随机数,取最大值、取最小值)
  7. Python机器学习:决策树003使用信息熵寻找最优划分
  8. 这届年轻人,没到35岁就开始准备退休了
  9. 换ip_换IP对云手机来说是好事吗?
  10. 南宁公交有两个应用付费通道,互不通用
  11. 为了方便远程登录写的简单expect脚本
  12. 【Pandas 基础应用 合并Excel工作簿】
  13. 无法安装冰点还原_怎样手动ghost还原系统 手动ghost还原系统方法【详解】
  14. 代码评审的价值和规范
  15. 有关Windows10中诊断和反馈隐私设置
  16. STM32F103VE基于标准库下DHT11数据串口打印输出
  17. SSM框架搭建,及遇到的问题
  18. java基础--面向对象三大特性(二)
  19. 将数据库中的表导出到word
  20. 华为设备IGMP Snooping配置命令

热门文章

  1. numpy—np.repeat、np.roll
  2. matplotlib -plt.rcparams.update
  3. mysql基础5-数据的操作
  4. 阿里云专家带你揭秘云计算数据底座——对象存储
  5. 芯故事 心感动:英特尔企业文化的力量
  6. 编写安全的驱动程序之验证驱动的调用者
  7. 学嵌入式必须掌握的经验
  8. 二十一天学通C#:.NET中文件与文件夹的操作
  9. 动态规划入门之最长公共子序列
  10. C语言中的system函数参数详解