在通常的networking中,由于每个主机在networking中的站点之间都有唯一的IP地址,为什么MAC地址仍然是必需的?
假设A站想发送到B站,A站知道B站的IP地址。 但是在发送之前,站点A仍然会发送一个ARP来请求B的MAC地址。 然后在有了B的MAC地址之后,A会发送带有B的MAC地址作为目的地址的数据。
为什么B不能像接受A发送的ARP那样接受数据包呢? 这样,站点A不需要发送ARP来请求MAC地址,这也将消除具有MAC地址的需要。 而且,IP地址在networking中是唯一的,为什么需要另一个MAC地址来识别这些站点?
因为在没有IP地址的情况下,您需要在网卡上添加一个唯一的标识符以便进行站点标识。 或者,如果系统没有确定要获取IP的地址,系统如何使用DHCP获取有效的IP地址?
由于IP不是唯一可以通过以太网发送的协议,以太网本身必须提供一个唯一的标识符来允许不同的协议。
首先,我可以赞同丹的回答; 对这个问题进行适当的研究要比提出问题的问题要好得多,而每个问题只有一个单独的光照到黑暗中。 我推荐Steven的TCP / IP Illustrated ,这是networking圣经; 我的卷。 1在过度使用的脊椎上几乎被打破了。 但是,既然你问了这个问题,当Dan来了的时候,我打了一半的答案,让我按下“Post”,然后用我的Old Admins帽子。
部分是历史的。 MAC地址是第2层的东西,而IP地址是第3层(例如,参见这个维基百科页面以获得更多的图层细节)。
为什么这个分离? 那么,当以太网被发明出来的时候,IP并不是唯一可以在以太网上运行的networking技术。 我自己在80年代中期广泛使用了通过以太网运行的DECnet,并没有IP地址。 而且,通过没有MAC地址的非以太网networking技术运行IP是完全可能的。 象SLIP一样,让人想起令牌环networking)。
如果以太网和IP已经按照你的build议被焊接在一起,那么上述两件事情都不可能实现。 是的,回想起来很清楚知识产权是互联网中的大赢家,但是在1981年并不是那么清楚,把这两个层面分离开来当然是正确的事情。
xENOn,这是我过去多次问过自己的问题。 事实上,这是一种武断的行为,因为正如MadHatter所说的那样,IPnetworkingtypes运行良好,不需要物理地址。 也就是说,理论上不需要额外的地址types。 但是,当IP地址自动分配时(例如通过DHCP),MAC地址就会派上用场,因为DHCP服务器需要明确地知道哪个主机感知了哪个IP或没有单个主机被授予主动提供的附加IP地址。 如果没有MAC地址,您需要手动为每台主机设置IP地址,例如,当您拥有大量主机时不太实际,这对于ITpipe理员来说是一场噩梦。 当谈到以太网本地链路时,没有多lessselect,因为以太网子系统只能识别以太网帧,即每个以太网接口电路都过滤掉所有不带有自己的广播/多播MAC地址的以太网帧作为目的地址。 只有那些在前端过滤中幸存下来的帧实际上将IP有效载荷传送到IP层。 希望这有助于你清除这个谜团。