网络技术--交换机原理/ ARP协议
1.交互机原理及用途
终端的发包原理:IP ,子网掩码,网关
二层设备的发包原理(二层交换机)
三层设备的发包原理(路由,三层交换机,FW)(路由表和网关地址)
在同一网络内只通过终端设备自己的网卡,和路由器的三层接口来构造同一网络,网络内放不了几个设备。
交换机的本质是做同一网络的端口扩展,比如说下面的24口交换机

这样网络内就可以放至少20台设备了,而且都在同一网络内。(当然这样会有太多报文,需要使用 vlan做广播隔离,这个就不赘述了)(类似于USB hub 扩展坞)
① 交换机功能:同一网络内的端口数量扩展
② 交换机的工作原理
交换机的处理内容:数据帧(检查数据的二层头部 ---检查数据的源mac地址和目的mac地址)
判断数据从 哪里来 到哪里去。
我们用一个普通组网去模拟

注意,我们在使用192.168.1.1 ping 1.2 之前交换机里面的mac地址表是没有内容的。
这里需要补充有关交换机mac地址表的一些相关知识。
mac地址表是缓存表,默认保存5分钟,之后就会被系统删除。
两设备之间ping通过一次后,mac地址表才会将它们的消息写入表中

我们用PC1 ping PC3,然后在查询结果,就可以看到mac地址表中的mac地址了
mac地址 558a连接的是G0/0/1口,7f2c连接的是G0/0/2口和拓扑图是一致的
mac表的转发
关于这个mac地址表,它就可以指导交换机的数据转发方向,比如说如果报文显示目的mac地址是5489-9834-7f2c ,那么数据肯定就会向G0/0/2口转发出去。
这个时候就要考虑另一种情况了,就是表中没有对应mac地址的情况,如果地址中没有,就会将数据包泛洪到相同vlan号的端口(就是发送到所有相同vlan号的端口)。
交换机处理的是报文的数据帧,会根据报文数据帧里面的mac地址进行转发,但是不涉及到IP地址(二层数据,不涉及到三层)
因此,我们可以说大部分交换机转发的问题都是硬件问题,因为理论上所有数据都可以转发出去,配置问题导致的可能性不大
我们在考虑一个场景,增加了一台PC后,这个时候查询mac地址表

这个时候再查询,就会发现不仅没有PC4的mac地址,也没有PC1和PC3的。
PC1和PC3的mac地址因为时间过了5分钟后,缓存被清除了。PC4是因为还没有进行过ping操作,没有走过数据

mac表的记录
那交换机的mac地址表是怎么记录的,这个就和交换机接受的数据有关,以PC1 PING PC3举例,交换机接受到PC1发过来的数据包,它就会记录G0/0/1口收到了来再源MAC地址558a的数据包,那么它就会将其记录到mac表中,其他的类似。
接下来我们讲一下ARP协议
ARP协议 ----地址解析协议
通过目的地址的IP解析出目标的MAC地址
为什么要通过IP解析出目标的MAC地址,以下面的操作举例。
我们执行ping的时候,只知道要去目的IP地址是192.168.1.2,但是肯定不知道这个IP地址对应mac地址的。

一个数据包要发送出去,需要知道四个参数
源mac :54-89-98-D5-55-8A
目的mac : ?
源IP : 192.168.1.1
目的IP :192.168.1.2
当我们执行ping 操作的时候,我们是知道三个数据的,这个时候我们还需要知道目的mac,这种情况下数据包是没法发送出去的。
那怎么搞到目的IP,这个时候就需要使用ARP协议了
ARP协议的使用
ARP协议是通过广播数据帧来获取到目标IP的mac地址,它也是通过发送报文来获取的,它发送的报文对应四个参数。MAC地址的广播帧就是 FF-FF-FF-FF-FF-FF
这个发送的报文就是ARP请求报文 arp --- request(请求)
源mac :54-89-98-D5-55-8A
目的mac : FF-FF-FF-FF-FF-FF
源IP : 192.168.1.1
目的IP :192.168.1.2
交换机mac地址表中没有全F的mac地址表项,那么它就会泛洪。

所有接受到这个报文的PC首先检查二层数据,发现是FF,然后就解析三层数据,和IP地址做对比,192.168.1.2会接收,其他PC都会抛弃。
PC3接受之后就会返回应答包
这个发送的报文就是ARP请求报文 arp --- reply(应答)
因为请求包里面有源mac地址,所以应答包是知道目的mac地址的
源mac :54-89-98-34-7F-2C
目的mac : 54-89-98-D5-55-8A
源IP : 192.168.1.2
目的IP :192.168.1.1
等到PC1接受到PC3返回的arp应答报文之后,PC1就知道了PC3的mac地址了。

和ARP协议报文是一致的
之后我们就可以执行ping操作了,也就是ICMP协议

我们通过arp协议获取到对端的mac地址之后,我们会再电脑生成一个ARP表。注意 这个表和二层交换机上的mac地址表不是一个表,它们有个共同点,就都是缓存表,保存一段时间就会清除掉
这个表的作用是,你做了一次ARP解析后,可以保存目标IP的mac地址,减少重复的arp解析操作。长期不使用这个地址,就会把它清除掉

交互机不作为一个通信的接受或者发送方,那么交换机就不会也没有必要存在arp表,(但是交换机也可以产生arp表,如果我们把交换机作为三层设备去使用,比如说设置vlanif地址之后去ping 其他的电脑,那么在三层,注意是三层交换机上就会产生arp表)

浙公网安备 33010602011771号