本文主要是介绍IP地址和物理地址的理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. 引言
最近在学习计算机网络相关知识,很长时间都有个困惑,为什么TCP/IP协议栈中会有2中地址,即:IP地址和物理地址(MAC地址)为什么同时被使用?它们各自的作用是啥?
2.我的理解
在写出我的理解之前,先抛出一些事实
- IP地址是在网络层协议中使用,MAC地址是在数据链路层中使用。
- 在计算机网络端对端通信时,源IP地址和目标IP地址是不变的,而源MAC地址和目的MAC地址是随着数据在不同网络流转的时候,不断的被修改。
再打一个极端的例子:
如果,整个世界只有一个房间那么大,世界上的所有计算机端设备只有家里的那么几台。在这个场景下,应该只需要一种地址就可以了。单独使用MAC地址也罢,单独IP地址也罢。他们之间都很容易的找到对方。
我们所在的世界虽然是有限的,但是相对于设备和人的视角,通信的对象的距离可能是很长的,没有办法让信号不衰减的达到对方。
MAC地址是小范围寻找通信对象,IP地址是大范围逻辑地寻找通信对象。IP地址使用一定的逻辑在不同的网段按照路由表流转数据,当达到某个网段后,在结合IP地址和物理地址一起判断通信对象。打个比方:IP地址有点像寄快递的收件地址,而物理地址有点像收件手机号。包裹肯定先按收件地址在各省市分发流转,到达乡镇街道时,再由快递员打电话给收件人。
这篇关于IP地址和物理地址的理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!