三层交换机
三层交换=二层交换+三层路由转发
三层交换机功能
实现VLAN间通信; 三层数据包路由转发; 二层数据帧硬件转发
三层交换机工作原理
一次路由, 多次交换
- 一次路由: 数据流的第一个数据包通过三层引擎重新封装MAC头部(最后的帧校验CRC也会变化)根据路由表转发,使用软件方式
- 在第一次转发完成后,在硬件中创建一个MLS条目,用于后续数据包由硬件执行重新封装和快速转发。2层数据帧会被重新封装为需要转发的下一个网段的帧格式。
- 多次交换: 从数据流的第二个开始, 根据三层交接机的MLS记录(转发信息表FIB+邻接关系表)实现硬件交换转发
完整过程:三层交换机先通过ARP请求获得主机B的MAC地址,然后使用三层引擎对第一个数据包的MAC头部进行重新封装,路由转发给对方主机。并且生成邻接关系表。后续包根据MLS条目(FIB+邻接表)进行重新封装数据帧并进行二层硬件转发。
基于CEF(一种基于拓扑转发的模型)的MLS
基于CEF的MSL转发过程,即发送单播数据包,通过查找FIB和邻接关系表,重新封装数据帧,从相应端口转发。
MLS表组成
转发信息库(FIB): 相当于路由器的路由表,与路由表一一对应,是路由表的一个镜像。路由表更新,FIB随之变化,FIB包含邻接主机的IP地址与VLANID的对应关系。
邻接关系表
三层交换机配置注意
三层交换机具有路由功能,所以两个VLAN可以相互访问,每一个VLAN虚接口充当该网段的网关,VLAN虚接口的IP地址就是相关VLAN主机的默认网关地址
三层交换机与二层交换机一样, 不能在物理接口上配置IP地址,需要在VLAN虚接口上配置IP
不同VLAN虚接口的IP地址与路由器的不同接口一样, 不能在同一个网段里
#配置三层交换机代码示例
interface vlanif 10 #进入虚端口
ip address 192.168.1.1 24 #设置ip
display ip interface brief #查看接口激活情况(设置完一般自动激活,前提是vlan正在被使用)
实验
vlanif 连通 交换机-交换机
SW1配置
sys
vlan batch 10 100 #先创建vlan,便于下面加入
int g0/0/1
port link-type access #修改主机口access,加入vlan
port default vlan 10
int g0/0/2 #修改交换机口trunk,放行vlan
port link-type trunk
port trunk allow-pass vlan all #放行可以为需要的vlan10 20 100,也可以all
interface vlanif 10 #设置vlan虚拟口 (当做vlan中网关,可理解为路由器地址)
ip address 192.168.10.1 24 #设置主机侧vlan虚拟口 ip地址
interface vlanif 100
ip address 100.100.100.1 24 #设置交换机侧vlan虚拟口 ip地址
ip route-static 192.168.20.0 24 100.100.100.2 #设置静态路由(为了非直连网段通信)
display ip interface brief #显示vlan虚拟口状态
SW2配置
sys
vlan batch 20 100
int g0/0/1
port link-type access
port default vlan 20
int g0/0/2
port link-type trunk
port trunk allow-pass vlan all
interface vlanif 20
ip address 192.168.20.1 24
interface vlanif 100
ip address 100.100.100.2 24
ip route-static 192.168.10.0 24 100.100.100.1
display ip interface brief
PC1 PC2配置
千万不要忘了设置网关!!!!!!之前实验不需要设置
这里疏忽了所以没有设置,导致排故大半天才连上
成功连通
vlanif 连通 交换机-路由器-交换机
SW1配置
sys
vlan batch 10 100
int g0/0/1
port link-type access
port default vlan 10
int g0/0/2
port link-type access
port default vlan 100
int vlanif 10
ip address 192.168.10.1 24
int vlanif 100
ip address 100.100.100.1 24
ip route-static 192.168.20.0 24 100.100.100.2
display ip interface brief
AR1配置
sys
int g0/0/0
ip address 100.100.100.2 24
int g0/0/1
ip address 200.200.200.2 24
ip route-static 192.168.20.0 24 200.200.200.1
ip route-static 192.168.10.0 24 100.100.100.1
SW2配置
sys
vlan batch 20 200
int g0/0/1
port link-type access
port default vlan 20
int g0/0/2
port link-type access
port default vlan 200
int vlanif 20
ip address 192.168.20.1 24
int vlanif 200
ip address 200.200.200.1 24
ip route-static 192.168.10.0 24 200.200.200.2
display ip interface brief
PC1 PC2配置
成功连通