VLAN:组内互通,组件隔离
PC发一个广播帧,网络中所有能接收到该广播帧的区域就是一个广播域,对于交换机,该交换机下面所有端口默认就是同一个广播域。一个广播域内一个太设备泛洪广播包, 全网所有设备都可接收到。广播风暴风险
路由器不同的端口,属于不同的广播域。路由器不同接口属于不同子网
不同的VLAN属于不同的广播域
为了控制报文的转发,交换机内部都要求带标签转发,所有交换机的端口都根据标签决定是否放行。
TAG字段包括4字节,包括2字节的TPID,2字节的TCI。3bit PRI; VLAN ID范围0~4095,头尾省略,实际使用的VLAN ID是1~4094。但是在运行商网络中,4094个VLAN一定是不够用的,所以又提出了QinQ,就是双TAG,外层用于标识业务,也叫S-VLAN,内层用于标识用户,叫做C-VLAN,通过双层VLAN,就把VLAN数扩展为4096*4096,可以满足用户的需求。
基于端口的VLAN划分,线网中最常用
配置工作量大,实际应用较少
根据协议划分VLAN
不同的网段用户划分到不同的VLAN
VLAN用户彼此间可以互通。VLAN可以跨越多交换机
接入链路用于连接主机。对于主机而言,它是不能发送接收带TAG的报文,所以通常在接入链路上的数据帧都是不带TAG的以太网帧。而干道链路可以承载多个TAG数据帧,通常用于交换机与交换机之间,以及交换机和路由器之间
Access端口用于连接PC,Access端口属于一个VLAN。Trunk用于交换机间或交换机与路由器之间,Trunk可以运行多个VLAN通过,可以发送接收多个VLAN的报文;Hybrid端口是一个混合型端口,可以与Trunk一样都可以属于多个VLAN,可以发送和接收多个VLAN报文。对于Trunk来说,虽说可以运行多个VLAN通过,但只允许一个VLAN不带TAG通过;而Hybrid可以设置多个,甚至所有的数据都不带TAG通过
每个端口都会又一个PVID,就是端口的缺省ID,每个端口有且只有一个,对于Access端口,它只属于一个VLAN,所以PVID等于VLAN ID。而对于Trunk和Hybrid来说,它的端口属于多个VLAN,所以PVID是需要去设置的,但是缺省PVID=1
对于Access端口,它属于一个VLAN,它的VLAN ID = PVID; 接收方向:交换机内部必须带标签转发,当接收到一个不带TAG标签的数据帧,会给它打上端口的PVID,而如果该数据帧包含tag,则需要看tag所属的vlan与端口的pvid是否相同,如果相同则接收,不同则丢弃。而在发送方向,对access端口来说,它只能发送vlan id与端口的pvid一致的数据,并且发出去的时候需要剥离掉tag标签,发出普通的以太网帧。图中示例:有一个access端口,并且端口pvid=10,当该端口收到一个不带tag的数据帧(浅蓝色方块),交换机会给它打上端口的pvid,所以进来之后就变成了一个带tag的数据帧,并且tag=10(橙色);而发送方向,当access端口向外分发的时候,它只发送vlan id与端口的pvid一致的报文,并且外发时,会剥离掉vlan 10的标签,发出普通的以太网帧。
trunk:如果收到不带tag的帧,会给它打上端口的pvid,但是如果该帧已经有了tag,则需要查看是否允许该vlan通过。如果允许则直接透传,如果不准则丢弃。而在发送方向,trunk端口会将vlan id和pvid对比,如果相同则剥离掉vlan标签进行转发。如果不同,则需要看一下是否允许该vlan通过,如果允许则透传,不准则丢弃。 案例:接收方向,收到不带tag数据帧则直接加pvid接收;如果收到的tag为20的帧,由于允许20,于是透传。发送:如果数据帧vlan id=10,与端口pvid相同,于是剥离掉tag发送。如果vlan id=20,允许透传,于是透传
Hybrid在接收方向与trunk一致,都是不带tag给你打上端口的pvid。如果带了tag则查看是否允许该vlan通过,允许则透传,不准则丢弃。发送方式,hybrid有2个列表,一个是tag列表,一个是untagged列表;如果是tag列表,则往外发的时候是带标签转发;而如果该vlan属于untagged列表,则往外发的时候就不带标签转发。 案例:Hybrid端口,允许vlan 10 20通过,并且是untag通过;端口2的pvid=10,且允许vlan 10和20,带标签通过。此时来一个数据帧,vlan id=10,往外发送时仍然是带标签转发;同样来了一个vlan id=20的数据帧,由于我们是设置的时候是带标签转发,所以发出去的时候仍然带的是标签vlan 20。 对于端口1,我们设置的是vlan10和20都在untagged列表中,所以过来vlan10、vlan20的标签的报文,往外发的时候都是要剥离掉vlan标签,还原出不带标签的数据帧
涉及路由,通常一个vlan划分一个子网。vlan 100:192.168.1.0/24. vlan 200:192.168.2.0/24.
vlan 300:192.168.3.0/24, 方案一:每个vlan使用一条独占的物理连接,连接到路由器接口,我们会为每一个VLAN分配一个单独的路由器接口。端口1配置vlan100的网关,并把端口1配置为access端口, 并允许vlan100通过
。
端口2配置vlan200的网关,并把端口2配置为access端口,并允许vlan200通过。
端口3配置为vlan300的网关,并把端口3配置为access端口,
并允许vlan300通过
。这种方式比较耗费端口,不经济
交换机与路由器之间通过一条物理链路连接,并配为trunk。将物理的接口划分为三个逻辑接口,并在子接口下分别配置桑格vlan的网关,这样vlan 100的用户想要实现vlan间的互通就可以直接把报文发给子接口,由子接口通过查路由表实现三层转发功能。假如vlan100的用户想要跟vlan200的用户进行通信,数据到达网关之后,带的是vlan100,此时网关要先识别vlan100的标签,然后进行剥离,最后再发给vlan200上的用户,再发出去的时候就需要将vlan100切换成vlan200,这样才可以实现vlan间互通。这种组网方式通常称位单臂路由。安全性不高
目前大部分交换机都是三层交换机
直接基于vlan创建一个三层接口,然后在三层接口下去配置网关。一个vlan创建一个三层接口,创建一个网关地址。 这里由三个vlan,就创建三个逻辑接口,然后在vlan接口下去配置网关地址,这样页可以实现vlan间的互通。
交换机通过端口0/1,连接vlan100的用户。通过端口0/2连接vlan200的用户,通过0/24连接上层的路由器,整个配置分为2块,交换机配置与路由器的配置。对于交换机的配置包括用户接口与上层连接路由器的即可。对于用户侧的接口直接配置成access,并按照规划设置该端口所属的vlan。 路由器侧,首先把路由器物理接口配置为子接口,在子接口上配置相应的网关。对于路由器而言,还需要接收用户时终结vlan标签,同时发给用户时再添加vlan标签。主要通过vlan dot1q vid 100这条命令实现。
数据处理过程:首先用户发送untag报文,从access接收进来,打上端口的pvid 100,然后从trunk口转发出去(trunk口pvid=1),向外发是对比pvid与vlanid不一样,透传。到达网关口,网关终结vlanid100,变成了untagged报文。然后路由器会查目的网络,看路由表,结果发现原来200的用户是在子接口2下面,所以往外发的时候再添加vlan 200的标签,最终发到trunk口,然后转发到交换机vlan200的端口,access端口剥离标签,转给用户的还是untagged的报文
三层交换机,直接创建vlan,vlan下面直接创建网关即可实现vlan间通信
OLT与交换机一样可以支持4096个VLAN,其中VLAN1是缺省VLAN,默认OLT下所有端口都允许VLAN1通过;4094与4095是系统固定预留的VLAN;我们可以操作的范围是2~4093,而这里又包含了系统保留的VLAN,它的范围是4079~4093. 在PON网络中,VLAN又有类型和属性的说法,VLAN类型包括四种,Standard,Smart,MUX,super。其中super vlan是三层vlan,它的主要作用是节约ip地址,而本章重点介绍前三种二层vlan的类型。 而vlan按照属性又分为Common,QinQ,Stacking。在创建vlan的时候,我们需要同时配置vlan类型和vlan属性,
standard vlan与交换机的vlan相同,相同vlan类型可以互通,不同类vlan端口相互隔离。这种端口的特点是只包括以太网物理端口,不能包括GPON或者EPON的业务虚端口。什么是业务虚端口?在PON网络中,OLT会通过分光器连接到多个ONU,ONU和OLT之间可以承载多条业务流,它们之间承载二层业务的通道我们通常就把它叫做业务虚端口,这时一个逻辑的概念。而Standard VLAN它只包含物理端口,是不能包含这种业务虚端口的。Standard VLAN主要用于以太网级联以及P2P连接。什么是级联?比如BRAS端口不够用,此时就可以通过OLT再下挂一台OLT这就是级联的场景。
第二个场景是smart VLAN,是我们最常用的类型。它可以包含多个上行端口以及业务虚端口,这种vlan的特点就是二层隔离,即使两个用户都属于同一个vlan也是无法实现互通的,比如现在PON口下有两个用户,分别都是属于VLAN3,那么它们要在互通的时候,是直接由ONU传到OLT,再由OLT转到ONU,这个时候它们在互通的时候数据是不会转到上层网络,直接通过ONU和OLT内部转发,但是由于是smart vlan,默认情况下它是隔离的。所以此时如果两个用户都是vlan3,它们彼此间无法进行通信,所以当vlan数量受到限制的时候,我们就可以使用这种vlan来节约vlan资源。另外在smart vlan中端口的地位是不对等的,刚才说的隔离只是对下行的业务虚端口的隔离。而上行端口是没有这个限制的。图中桑格上行口,都属于vlan3,如果这桑格端口下面由用户要实现通信,那么是可以实现的。 另外,最终业务虚端口是需要把流量通过PON口传到OLT,OLT再传到上行口的,所以业务虚端口与上行口之间也是可以互通的。
一个vlan对应一个用户,通过vlan我们就可以实现区分用户。一般在olt上面不会配置mux vlan,因为一个mux vlan只能创建一个业务虚端口,给一个用户使用。olt最多4096vlan,一个vlan只能对应一个业务虚端口,如果配置mux vlan,olt上面最多也就配置4000多条业务流,不够用。 而ONU内部就可以配置MUX VLAN,因为ONU最多24个端口,够用
Standard VLAN只能用在以太网物理端口; Smart VLAN 二层隔离,即使属于同一个VLAN也不可相互通信;MUX VLAN 一个VLAN只能配置一条业务流,只能给一个用户使用
S-VLAN用于标识业务,C-VLAN用于标识用户。 管理VLAN一般都配置为Common属性,因为只有单层才能创建三层虚接口,才能配置管理IP,所以管理IP都是Common属性。 而QinQ和Stacking'都是双层tag,它们可以用于数据专线场景。C-VLAN由用户任意分配,而S-VLAN由运营商统一分配,用于穿越运营商网络,这样就可以实现私网间业务的透明传输。在PON网络中,Stacking与QinQ区别不大,但Stacking应用更广一点。比如QinQ不能配置组播业务,而Stacking可以。所以如果组播业务需要配置成双层tag,只能配置成Stacking属性
上图,企业A总部与企业A分布位于不同地理区域,它们的私网用户都是配置的VLAN10,我们希望通过QinQ VLAN实现VLAN 10用户的互通、
首先用户发出untagged报文,到达交换机,交换机给它大一层VLAN 10,然后送到ONU。对于ONU来说,如果带了标签是可以透传回来的,如果没带也没关系,我可以给你打上一层C-VLAN。本例中交换机已经打了VLAN了,所以我们可以直接透传C-VLAN到达OLT。
OLT受到亿欧,会统一打上S-VLAN,S-VLAN主要就是用于穿越运营商网络标识企业A的数据。所以打上S-VLAN后就会被送到城域网。城域网就根据外层VLAN进行转发,转发到对端的OLT
对端OLT收到以后就会识别S-VLAN,然后进行剥离,剥离之后找到对应的PON口发给ONU
ONU收到之后,识别C-VLAN,从对应的ONU端口上转发出去,头传到交换机
交换机此时就识别C-VLAN,然后再进行VLAN剥离发给最终的用户,这样就可以实现总部与分支互联。
网友评论