交换机中的fdb表是做什么用的?

交换机中的fdb表是做什么用的?,第1张

IP、MAC、端口绑定功能可以简化网管人员的工作,因为限制了客户机的接入,既增加了网络的安全性、又减少了IP冲突的可能。这三元素的绑定是用了两个原理,一个是静态FDB,另一个是IP ACL。

一、交换机中保存着一份FDB(转发表,其原理见"1.3.2.逐跳寻径方式"),这个表是此交换机上的端口与MAC地址的对应表,默认情况FDB是动态的,当某条FDB表项存在超过80秒后就会老化,从FDB表中删除,以防FDB过于庞大。当连接在此交换机上的客户机发送数据或开机时,FDB就会自动记录下MAC与端口的对应项。如果FDB是静态的,不允许交换机随意的、自动的更改FDB,就实现了某些端口与某些MAC地址的固定对应,而不在此对应范围内的客户机则无法收到从交换机来的数据包。使用静态FDB就实现了MAC、端口的绑定。

二、使用IP ACL(访问控制列表)可以拒绝或允许某个IP或某范围内的IP通信,如果将ACL指定到某个端口上,就可以指定通过某个端口的IP是否被拒绝。因此,在端口上做deny类型的IP ACL,就做到了IP、端口的绑定。

这两个原理结合起来,就实现了IP、MAC、端口绑定功能。此种方式,也限于一个端口上绑定一个IP和MAC,当IP和MAC多了之后,会出现对应问题。

每一个终端(主机)都有一个IP地址,这个地址不是由自己随意设置的,而是由管理员分配的。也就是说管理员要将所有他管理下的IP地址都分段记录在路由器中,就是建立所谓的路由表,路由器就是根据路由表来分发数据包。数据包中包含了IP地址和mac地址,在网络中,IP地址是给路由器用的,而mac地址则是给交换机用的,准确说是给链路层用的。

从二层的意义上看,集线器和交换机差别不大,集线器可以看成是独享设备,就是当两个端口之间通讯时,其他端口等待,所以整个集线器处于一个“冲突域”。而交换机则可以看成是共享设备,就是两个端口通讯时不妨碍其它端口之间的通讯,当然,一个端口也不能和另外两个端口同时通讯,所以交换机的每个端口是一个“冲突域”。

交换机每个端口都保存了对应终端设备的mac地址(fdb表),当有数据包进入交换机时,交换机提取数据包中的目标mac地址到fdb表中找,找到则将数据包发到对应端口。如果找不到,则将该数据包发布到所有端口,即发布广播(集线器模式),每个终端(计算机)都会收到该数据包,对于终端而言,发现不是自己的IP,则会丢弃该数据包;是,则会由相应的进程回送响应数据包。当回送数据包进入交换机后,交换会将这个未知的mac地址学习到fdb表中,以备下次使用。

当数据包到达路由器时,路由器会拆掉其中的源mac地址,并将自己的mac地址填入(拆包重装,同时目标mac被替换成下一跳的mac地址),并根据路由表中的IP指向进行转发。所以mac地址是不会穿越路由器的,因而路由器也就终止了交换机或集线器中的广播。所以一个交换机也称为一个广播域,同理,路由器的一个端口也是一个广播域。

1.上行端口是指一些端口的标识。

2.从测试工具向网络上所有已知的桥接器和交换机发送ICMPping,所述网络通过用相邻桥接器的MAC地址填充转发数据库(FDB)表来作出响应。然后,向选定桥接器的FDB表发送一个SNMP查询,用于不仅检索MAC地址,而且还检索与下游桥接器的端口相关联的接口索引。把这些端口标识为上行链路端口。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11559550.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存