当公司网络规模较小、划分的VLAN比较少时,可能单臂路由就可以满足各VLAN间的通信,但是当VLAN较多、网络规模比较大时。那么使用单臂路由技术就显得有点力不从心了,这是我们就要引入三层交换机了。

现在大多数新型的catalyst交换机都支持CEF(Cisco快速转发)多层交换,CEF是一种基于拓扑的转发模型,可预先将所有的路由选择信息加入到FIB( forWord information base,转发信息库)中,这样,交换机就能够快速查找路由选择信息。

CEF——主要包括如下两个转发用的信息表:
①:FIB(使用命令show ip cef查看FIB表):CEF使用FIB来做出基于目标IP前缀的转发决策。从概念上说,FIB类似于路由表,包含路由表中转发信息的镜像。当网络的拓扑发生变化时,路由表将被更新,而FIB也将随之变化,FIB中包含下一跳地址信息,这些信息是根据路由表中的信息得到的,使用基于CEF的MLS(multilayer switching,多层交换)时,第三层引擎和硬件交换组件都维护一个FIB。

②:邻接关系表(使用命令show adjacency来查看邻接关系表):在网络中,如果两个节点之间在数据链路层只有一跳,则他们彼此相邻。除FIB外,CEF还使用邻接关系表来存储第二层编址信息,对于每个FIB条目,邻接关系表中都包含相应的第二层地址,和FIB一样,使用基于CEF的MLS时,第三层引擎和硬件交换组件都维护一个邻接关系表。

虚接口——既然三层交换机就可以实现不同VLAN间的通信,那么一定会给网络中的客户机指定默认网关,单臂路由的环境下,路由器的子接口就是VLAN的网关,依然是依托于物理接口的,那么三层交换机就显得比较有优势了,只要在交换机上开启相关VLAN的虚接口,并配置VLAN的ip地址,那么属于该VLAN的物理接口都可以动态的充当该VLAN的网关。

接下来我们来模拟一个涉及技术较多,网络环境相对实用的网络拓扑图:
Cisco 三层交换详解
首先把外网客户端,手动配置ip,接着我们配置R1路由器:

先配置F0/1端口:
Cisco 三层交换详解
F0/0端口配置:
Cisco 三层交换详解
DHCP服务配置:
Cisco 三层交换详解
以上面DHCP的配置格式,去配置我们需要的地址池(剩下三个网段的地址池就不截图了)。

因为该路由器与各VLAN下的客户机非直连网段,所以需要配置一条静态路由, 下一跳指向与SW-3L交换机直连的接口ip。
Cisco 三层交换详解
至此,路由器就配置完成了,接下来配置SW-3L:

先配置与路由器直连的接口【F0/1】:
Cisco 三层交换详解
接着配置F0/2和F0/3:
Cisco 三层交换详解
并捆绑成以太网通道,以提高链路带宽:
Cisco 三层交换详解
接下来配置VLAN和vtp:
Cisco 三层交换详解
Cisco 三层交换详解
以上述相似的步骤配置剩下的各个VLAN。(注意进入每个VLAN里都要执行ip helper-address 命令来做DHCP中继,并且需要在全局模式下执行ip routing命令,以开启路由功能。)

接下来配置sw1:
Cisco 三层交换详解
Cisco 三层交换详解
Cisco 三层交换详解
退到特权模式下查看VLAN配置信息,是否正确:
Cisco 三层交换详解
接下来执行以下命令配置F0/3和F0/4端口(配置两台二层交换机直连的以太网通道,注意以太网通道编号不能和F0/1和F0/2的以太网编号冲突):

conf t
in ra f0/3 -4
sw mo tr
channel-group 2 mo on
配置完成后,接着配置SW2:

en
conf t #进入全局模式
in ra f0/1 -2 #进入f0/1 -2接口
sw mo tr #接口改为trunk模式
channel-grou 2 mo on #捆绑以太网通道(编号与sw1的f0/3 -4端口一致)
vtp do lv #定义vtp的域名(与之前两台交换机的域名一致)
vtp mo cli #更改vtp的工作模式为客户机模式
in f0/3 #以下操作均是把连接客户机的接口添加到相应的VLAN中
sw ac vl 30
in f0/4
sw ac vl 40
这样VLAN中的客户机就可以通过DHCP获取到ip,并通过三层交换机实现了不同VLAN中的流量通信。