首页 > 为什么以太网使用MAC地址来进行寻址?

为什么以太网使用MAC地址来进行寻址?

既然网络和网络之间是根据IP地址来进行寻址的,为什么以太网内部不是使用IP地址进行寻址,而使用MAC地址呢?
为什么如果交换机连接的两台电脑的IP地址不同,这两台计算机就无法通信,交换机不是工作在数据链路层吗,只根据MAC地址转发消息。为什么这两台计算机会无法通信呢?


MAC是物理地址,层次比TCP/IP协议所在的网络层要低,而且是网络的最底层。简单的来说,TCP/IP协议是可以进行寻址的,但是这基于TCP/IP协议之下,在网络层中还可以存在其他的协议(只是它们不火而已)。另外,即使使用TCP/IP协议做寻址,其最终也是被封装在MAC地址的包内的。


楼上说的很正确。TCP、IP和以太网是在三个个不同的层级,他们的作用不同。

如果要走TCP/IP,主机A和B都要遵守TCP/IP的规则。如果要走MAC地址,却用TCP/IP规则,怎么能通信成功呢?当然可以只用MAC地址来通信了,以太网就是利用MAC地址来区分主机的。题主不知道是如何用MAC地址来通信的?使用socket还是什么的?如果用socket话,在创建socket的时候,不是要指明协议吗?


从上图来看,即使在局域网中两台主机A和B,如果A和B之间需要用TCP/IP协议簇来通信,A发送的数据需要加上TCP报文头、IP报文头、以太网报文头,然后数据就被发送出去了。你要使用MAC地址来通信,是可以的。但是你使用的是TCP/IP协议簇,A发送的是数据是走的TCP/IP,B要获取数据也要走TCP/IP。

假设A在北京,B在武汉,A要给B寄一份信,地址上写了武汉市XX区XX路XX小区XX楼,那么信是可以送到武汉市XX区XX路XX小区的。但是XX小区还是有楼号、单元号和楼层号的。B还是收不到信。这里XX市XX区XX路XX小区可以看做是IP地址,因为它是全国唯一的,同时这个地址是整个小区统一使用的,邮局可以看做TCP/IP协议簇。邮局可以很轻易的把信送到这个小区来。此时如果小区有传达室,看门大爷看到信上B的名字就知道这封信是哪个楼、哪个单元和哪个楼层了。只就相当于以太网了。
如果A和B在同一个小区,不用写XX市XX区XX路XX小区,把信给小区的传达室,看门大爷只要知道信上的名字就可以把信送到B的手中了,因为没有走邮局,只是在本小区。

【热门文章】
【热门文章】