有个问题非常困惑
二层数据包封装mac地址来进行两个终端通信。 三层数据包封装ip地址来进行两个终端通信。
想问,既然三层交换数据不依赖mac地址,为什么在二层环境一定要有mac地址才能传输数据呢,二层在arp的时候,首先是通过广播询问ip地址然后获取到mac地址,既然ip地址已经互通了,为什么还要依赖这个mac地址呢?为了什么?
例如vlan1内pcA 192.168.0.1
vlan2内pcB 192.168.1.1
pcA和pcB互通,没有任何mac地址的交换,A和B完全不知道对端的mac地址,完全不依赖mac地址,为什么二层就那么强调要有mac地址呢?
(0)
最佳答案
二层也不一定需要有MAC,可在对应的vlan里广播就行。但是通信的终端一定是需要知道目的主机的MAC,只有MAC才可以唯一标识对应的目的主机。也只有知道MAC才能完成单播以太报文的封装。这个单播报文在传到网络设备可广播(无MAC表)、可单播(有MAC)到对应目的主机。
三层访问只需要网关知道终端ARP信息(IP+MAC+出口+VLAN)等信息即可,其他设备路由可达。
(0)
请教一下啊,比如A和B传输数据。 A发出的第一个arp包是广播包,当找到B的mac地址以后开始进行传输,这个传输过程中的每一个包都是一个单拨包?
以太网里面,三层转发报文最终也是要封装成数据帧(包含源目MAC),而且网关在收到数据帧之后,只有当目的MAC是自己接口的MAC,才会进行三层转发。
(0)
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
请教一下啊,比如A和B传输数据。 A发出的第一个arp包是广播包,当找到B的mac地址以后开始进行传输,这个传输过程中的每一个包都是一个单拨包?