IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 有了IP地址为什么还要有MAC地址?这篇文章为你解惑 -> 正文阅读

[网络协议]有了IP地址为什么还要有MAC地址?这篇文章为你解惑

我们前面讲过IP地址,说IP地址能够让我们在网络世界里找到我们的目标主机,但是有了IP地址为什么还要MAC地址呢?IP地址和MAC地址又有什么差别呢?

我认为IP地址和MAC地址可以类比生活中寄快递的过程。

我们知道数据存在封装和解封装的过程,当一个应用层数据经过传输层、网络层、数据链路层、物理层的封装就到达了我们的主机,主机经过解封装又成为了我们可以识别的数据,就像我们生活中寄快递时将物品放进包裹中,包裹经过快递小哥一次次的转接到达我们的手中,而数据在路由器之间的跳转也可以看作是不同地区快递小哥对物流的交接。

1、什么是IP地址?

?在互联网中,一台主机只有一个IP地址,IP地址用于在TCP/IP通信协议中标记每台计算机的地址,而IP地址其实等价于快递包裹上的收件地址,快递员通过收件人地址将包裹在出发地到目的地之间通过不同地区之间的物流中转最后将包裹送到收件人的手中。

IP地址也是类似的,我们通过IP地址的网络位可以确定某个主机所在网络的位置,从而明确一条数据转发的路径。通过路由器不断寻址找到目的网段。

那么,都找到它在哪了为什么还要MAC地址呢?

MAC地址

MAC地址等价于快递包裹上的收件人,是用来确认对方信息的,就如同快递跨越几个城市来到你面前,快递员需要和你确认以下收件人是否正确,才会把包裹交给你一样。

这个过程可对应网络中同一个交换机或集线器连接的局域网通信,在局域网中通信需要通过MAC地址表记录主机和接口的映射关系来进行通信。

在通信过程中,我们会将数据封装成帧,这时就会插入源mac地址和目的mac地址(如果不知到对方mac地址会发送arp广播报文获取对方mac地址)。以太网帧结构:

什么时候用到IP寻址?什么时候用到MAC寻址?

虽然同一网段也会用到ip地址,但是它在局域网中不起作用,因为arp是用于网络中寻址的,而在局域网中我们不需要用到网关进行通信,只需要找到目的MAC即可。

(在arp广播时,作为收到包的主机解包时判定的依据,判定自己是否为目的主机,从而选择是否回应arp应答)。

IP地址的使用条件,是在跨网络的时候,两个网络之间想要进行通信需要通过一个媒介,因为在网络内部的主机定位不到网络外的某个主机,即使他们只隔了一个网段。

而跨网段的媒介就是路由器,只要把ip地址告诉它,他就能找到对方所在的网络。

如上图,192.168.1.1和192.168.1.2(掩码均为24位)是同一个网段,也就是说我们在同一个屋子里我只要叫你的名字就可以把东西传递给你,而192.168.2.1 和192.168.1.1(掩码均为24位)并不在同一个网段,它在一个很遥远的地方,我要把我的东西给他必须给他寄快递,而且快递上肯定得指名道姓他是谁!

那么一说,大家理解了吗?为什么有了IP地址还需要MAC地址?那肯定是因为不同场景传递的方式不同,参数也就不同了。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-05-01 16:06:29  更:2022-05-01 16:07:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:55:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码