VLAN的缺点
对于VLAN而言,最大的好处就是隔离了二层广播域, 减少了广播域的范围,但是它也带来了新的问题,不同VLAN下的用户再也无法实现通信,图中V LAN100的主机无法跟VLAN200的主机实现互通。那么如何解决VLAN间的互通问题,此时就需要使用路由,二层广播无法实现VLAN的互通,就通过三层路由解决该问题,通过查路由表实现报文转发,既然要实现路由功能,势必会涉及跨网段通信,所以引入路由概念后,通常一个VLAN下的用户对应一个子网。如图VLAN100划分一个子网192.168.1.0/24,而VLAN200就要划分到另外一个子网,可以给它分配一个192.168.2.0/24.划分了不同子网后,然后给终端用户配置网关地址,主它们将数据转发到网关设备后,实现三层寻址。具体的方案有三种。
VLAN互通的实现--每个VLAN一个物理连接
为每一个VLAN使用一条独占的物理连接,连接到路由器的接口,我们会为每一个VLAN分配一个单独的路由器接口。如图,路由器上配置了三个端口,互联到交换机,端口0配置VLAN100的网关,同时与交换机互联的端口配置成Access,并允许VLAN100通过。而端口1配置VLAN200的网关,同时与交换机互联的端口也配置成Access,并允许VLAN200通过。而端口配置成VLAN300的网关,同时与交换机互联的端口也配置成Access,并允许VLAN300通过。这样的话,底层的用户就能够顺利实现VLAN间互通的问题。但是这种成本比较高,如果该交换机下面有100个VLAN,我就需要100个端口跟路由器对接。
VLAN互通的实现-使用VLAN Trunking
方案二仍然通过路由器进行组网, 交换机和路由器之间只提供一根线来实现互联,交换机上的端口配置成Trunk,并允许交换机下的VLAN通过,在路由器上面,我可以通过配置子接口,将物理的接口划分成三个逻辑接口,并在子接口下分别配置三个VLAN的网关。那么这样VLAN100的用户想要实现VLAN间的通信,就可以直接把报文发给子接口,由子接口通过查路由表实现三层转发功能。假如VLAN100的用户想要跟VLAN200的用户进行通信,数据到达网关之后,带的是VLAN100,到达网关之后,网关需要先识别VLAN100的标签,然后进行剥离,最后再发给VLAN200上的用户,再发出去的时候,就需要把VLAN100切换成VLAN200,这样的话可以实现VLAN间的互通。图中的组网方式我们通常叫做单臂路由。安全性不是特别高。
VLAN互能的实现-交换和路由的集成
第三咱方案是直接由交换机集成路由功能实现跨网段的通信,那么现在大多数的交换机基本上都是三层交换机,都具备了路由功能。
三层交换机功能模型
三层交换机是直接基于VLAN创建一个三接口, 然后在三层接口下配置网关,一个VLAN创建一个三层接口,创建一个网关地址,有三个VLAN,就创建三个逻辑接口,然后在VLAN接口下去配置网关地址,那么这样的话也可以实现VLAN间的互通。