实验拓扑:
实验说明:
SW1为三层交换机,SW2和SW3为二层交换机,PC1属于VLAN 100,PC2属于VLAN 110,PC3属于VLAN 120,现通过三层交换机实现不同VLAN间的通信。
实验步骤:
1.为各PC配置IP地址和网关:
为PC1配置IP地址和网关:
为PC2配置IP地址和网关:
为PC3配置IP地址和网关:
2.在交换机上创建VLAN:
在三层交换机SW1上创建VLAN 100,110和120:
在二层交换机SW2上创建VLAN 100:
在二层交换机SW3上创建VLAN 110和120:
3.将SW2和SW3的下联接口设置为access并将其划进VLAN中:
在SW2设置access口:
在SW3设置access口:
4.在三层交换机SW1上配置SVI:
补充:SVI(switch virtual interface)交互式虚拟接口,SVI有两种类型:一种为主机管理接口,管理员可以利用该接口管理交换机。一种为网关接口,用于三层交换机跨vlan间路由。具体可以用interface vlan接口配置命令来创建svi,然后为其配置ip地址即可实现路由功能。(故本实验配置的为网关接口)
至此,本实验配置已基本完成,但还有一个问题,交换机接口模式还没有设置,没有设置接口模式是不能实现不同VLAN通信的,如下图,这是因为数据包在交换机下联接口进入是会打上VALN标签的,但在转发时是会脱离标签的,所以在交换机上联接口进入时没有标签,这是默认的标签是交换机的缺省标签,并不能实现不同VLAN通信,这时又涉及到交换的两种口:Access口和Trunk口
5.如果想要实现VLAN 100和VLAN 120之间通信,可以将交换机的上联接口设置为Access口,如下图配置:
将SW2的上联接口设置为Access口,并划进VLAN 100:
将SW3的上联接口设置为Access口,并划进VLAN 120:
将SW1的接口接口设置为Access口,并分别划进VLAN 100,120:
6.在PC上测试结果:
7.如果想实现各个VLAN 之间的通信,可以将交换机的上联接口设置为Trunk口,如下图配置:
将SW2之前的接口模式删除并配置为Trunk:
将SW3之前的接口模式删除并配置为Trunk:
将SW1之前的接口模式删除并配置为Trunk:
8.在PC1上测试结果:
总结:
Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口;
Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;
交换机接口出入数据处理过程:
Acess端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)(PVID也就是说,当端口收到一个未标记的帧时,就把该帧打上vlan id,这个id值等于pvid的值,然后转发到VID和PVID相等的VLAN 中。)
Acess端口发报文:
将报文的VLAN信息剥离,直接发送出去
trunk端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有判断该trunk端口是否允许该 VLAN的数据进入:如果可以则转发,否则丢弃
trunk端口发报文:
比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送
原文地址:http://blog.51cto.com/13871418/2160188