为什么有mac地址还需要有IP地址呢
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
历史原因:早期的以太网只有集线器 ,没有交换机,所以发出去的包能被以太网内的所有机器监听到,因此要附带上MAC地址,每个机器只需要接受与自己MAC地址相匹配的包。
个人感觉上面的说法并不是太准确。找明白人问了一下说:早期的以太网的厂商竞争十分激烈,所生产的网卡的类型也不相同。为了能使不同网卡之间的不同设备进行通信,所以产生了IP地址。
答案一:
1. 有了MAC地址为什么还需要IP地址?
由于全世界存在着各式各样的网络,它们使用不同的硬件地址。要是这些异构网络能够互相通信就必须进行非常复杂的硬件地址转换工作,因此由用户或用户主机来完成这项工作几乎是不可能的事。但统一的IP地址把这个复杂问题解决了。连接到因特网的主机只需拥有统一的IP地址,它们之间的通信就像连接在同一个网络(虚拟互连网络或者简称IP网)上那么简单方便,因为调用ARP的复杂过程都是由计算机软件自动进行的,对用户来说是看不见这种调用过程的。
2. 有了IP地址为什么还需要MAC地址?
a.信息传递时候,需要知道的其实是两个地址:终点地址、下一跳的地址。IP地址本质上是终点地址,它在跳过路由器的时候不会改变,而MAC地址则是下一跳的地址,每跳过一次路由器都会改变。这就是为什么还要用MAC地址的原因之一,它起到了记录下一跳的信息的作用。
b.网络体系结构的分层模型:用MAC地址和IP地址两个地址,用于分别表示物理地址和逻辑地址是有好处的。这样分层可以使网络层与数据链路层的协议更灵活地替换。
c.历史原因:早期的以太网只有集线器,没有交换机,所以发出去的包能被以太网内的所有机器监听到,因此要附带上MAC地址,每个机器只需要接受与自己MAC地址相匹配的包。
答案二:
首先明确一点,并不是所有的网络之间传输数据都需要mac地址和ip地址,比如说点对点线路之间的通信就没有MAC地址,网络层使用ipx协议时就没有ip地址,但是在当前的主流网络中,我们都使用ip地址和mac地址
既然mac地址唯一,为什么还要有IP地址?
之前我们提到,mac地址是唯一的,那理论上,在任何两个设备之间,我应该都可以通过mac地址发送数据,为什么还需要ip地址?
mac地址就好像个人的身份证号,人的身份证号和人户口所在的城市,出生的日期有关,但是和人所在的位置没有关系,人是会移动的,知道一个人的身份证号,并不能找到它这个人,mac地址类似,它是和设备的生产者,批次,日期之类的关联起来,知道一个设备的mac,并不能在网络中将数据发送给它,除非它和发送方的在同一个网络内。
所以要实现机器之间的通信,我们还需要有ip地址的概念,ip地址表达的是当前机器在网络中的位置,类似于城市名+道路号+门牌号的概念。通过ip层的寻址,我们能知道按何种路径在全世界任意两台Internet上的的机器间传输数据。
mac地址通常是不变的,ip地址是可变的,尤其是移动设备,ip地址会经常变更。
mac地址的设计不携带设备在网络中的位置信息,想要通过mac地址通信,我们得在所有的设备上维护一张很大的表,记录所有mac地址路由在当前位置的的下一跳,这显然是不合理的。
既然能通过ip地址发送数据,为什么要有mac地址
既然ip地址有位置信息,而且在一个网络中也是唯一的,那么我们为什么不完全通过ip地址通信,抛弃mac地址呢?或者说,合并ip层和mac层的功能。
1、历史原因
最初的链路层协议是和ip地址无关的,没有网络层方面的设定,只有物理层和链路层,最初也只有集线器,没有交换机路由器,服务器之间传输数据全靠mac地址。在没有ip地址之前,mac地址已经在使用了。现在到处都在用的二层交换机,就是根据mac地址转发数据。
2、设计的原因
现在这样设计是好的设计,链路层的实现不需要考虑数据之间的转发,网络层的实现不需要考虑物层的影响。
也就是说,理论上可行,目前无太大意义,反而有坏处。
为什么有了IP地址还需要MAC地址
作者:不求东西
长话短说,理由有三点。
一. 整体与局部信息传递时候,需要知道的其实是两个地址:终点地址(Final destination address)下一跳的地址(Next hop address)IP地址本质上是终点地址,它在跳过路由器(hop)的时候不会改变,而MAC地址则是下一跳的地址,每跳过一次路由器都会改变。这就是为什么还要用MAC地址的原因之一,它起到了记录下一跳的信息的作用。注:一般来说IP地址经过路由器是不变的,不过NAT(Network address translation)例外,这也是有些人反对NAT而支持IPV6的原因之一。
二. 分层实现如果在IP包头(header)中增加了”下一跳IP地址“这个字段,在逻辑上来说,如果IP地址够用,交换机也支持根据IP地址转发(现在的二层交换机不支持这样做),其实MAC地址并不是必要的。但用MAC地址和IP地址两个地址,用于分别表示物理地址和逻辑地址是有好处的。这样分层可以使网络层与链路层的协议更灵活地替换,网络层不一定非要用『IP』协议,链路层也不一定非用『以太网』协议。这就像OSI七层模型,TCP/IP五层模型其实也不是必要的,用双层模型甚至单层模型实现网络也不是不可以的,只是那样做很蛋疼罢了。
三. 早期的『以太网』实现早期的以太网只有集线器(hub),没有交换机(switch),所以发出去的包能被以太网内的所有机器监听到,因此要附带上MAC地址,每个机器只需要接受与自己MAC地址相匹配的包。
到此这篇关于为什么有mac地址还需要有IP地址呢的文章就介绍到这了,更多相关mac地址与ip地址内容请搜索程序员之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持程序员之家!
相关文章
宽带300兆和500兆你们选? 宽带300兆和500兆区别介绍
宽带300兆和500兆你们选?很多朋友搞不清楚什么是宽带带宽,也不知道300M和500M宽带的区别,本期文章结合网络运营商设定的规则,来说说两者的区别2023-03-29TP-LINK 发布两款 Wi-Fi 7 无线网卡: 第三季度开始上市
TP-LINK 发布两款 Wi-Fi 7 无线网卡,该系列 Wi-Fi 7 无线网卡可选 PCIe 和 USB 两款接口型号,均支持 2.4G +5G 或 5G + 5G MLO 技术,详细请看下文介绍2023-03-27- 路由器之间的路由信息在不同路由协议中交换的过程和原则是不同的。交换路由信息的最终目的在于通过路由表找到一条转发IP报文的最佳路径,详细请看下文介绍2023-03-15
小米wifi放大器pro怎么重新设置密码? 小米wifi放大器pro重置技巧
小米wifi放大器pro怎么重新设置密码?小米wifi放大器pro是可以重置密码的,该怎么重置呢?下面我们就来看看小米wifi放大器pro重置技巧2022-12-20- 这篇文章主要介绍了专线宽带和普通宽带哪个好 专线宽带和普通宽带区别对比的相关资料,需要的朋友可以参考下,希望对大家有所帮助2022-11-30
无线网卡和随身WiFi哪个好用 无线网卡和随身WiFi区别对比
无线网卡和随身WiFi哪个好用?无线网卡和随身WiFi有什么区别?今天小编给大家带来无线网卡和随身WiFi对比详解,希望对大家有所帮助2022-05-22小米wifi放大器pro如何连接使用 小米wifi放大器pro连接使用技巧
当我们发现路由器的信号较弱的时候我们就可以使用wifi放大器了,今天小编就来教大家小米wifi放大器pro如何连接使用,一起来看看2022-02-17hype-v 虚拟机Kali 双网卡配置方法 hype-v 虚拟机Kali 配置
这篇文章主要介绍了hype-v 虚拟机Kali 双网卡配置方法,hype-v 虚拟机Kali 配置步骤,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友可以参考下2021-12-22- 这篇文章主要介绍了为什么有mac地址还需要有IP地址呢,需要的朋友可以参考下2021-03-25
- 网卡驱动有以太网卡和无线网卡两种,但是有很多小伙伴不知道以太网卡和无线网卡有什么区别,经常会将两种混为一谈。这里小编就为大家带来关于以太网卡和无线网卡区别介绍2021-03-01
最新评论