VLAN技术

发布时间 2023-11-06 16:23:05作者: smileleooo

VLAN是虚拟局域网的缩写,它是一种将网络设备(如交换机、路由器等)分割成多个虚拟网络的技术。每个VLAN都是一个独立的广播域,使得可以在同一物理网络上创建多个逻辑网络,从而提高网络的安全性和灵活性。

通过VLAN技术,可以将不同的用户或设备分组到不同的VLAN中,从而实现不同的网络访问控制和安全策略。此外,VLAN还可以优化网络性能,减少洪泛流量和冲突,提高网络的可靠性和可管理性。

VLAN是针对于交换机的技术,将广播域逻辑上划分为多个虚拟的广播域。

配置思路

  1. 交换机上创建vlan

  2. 交换机上各个接口划分到对应的vlan中

  3. trunk干道

  4. vlan间路由:单臂路由(路由器子接口),三层交换机

VLAN ID在交换机和路由器中使用。VID是VLAN ID的缩写,每个VLAN都有一个唯一的VID,用于标识该VLAN。


VLAN的划分方式

一层VLAN:将交换机的接口划分不同的VLAN ,也叫物理VLAN

二层VLAN:将MAC地址和VLAN进行映射,从而实现VLAN的划分

三层VLAN:根据以太网帧中携带的类型字段划分VLAN

传统的以太网帧结构 — untag帧(不携带VLAN标签的数据帧)

802.1Q数据帧 — tag帧(携带VLAN标签的数据帧)


接口分配链路类型

  • access — 不携带标签
  • trunk — 携带标签

通常将交换机与PC相连的链路配置为access,交换机之间的链路配置为trunk。

配置

进入接口,将交换机和PC连接链路的接口配置为access

[Huawei-GigabitEthernet0/0/1]port link-type access

一旦接口配置为了access类型,则代表从该接口转发的都是不携带VLAN标签的流量。

一般将交换机与交换机之间的链路配置为trunk

[Huawei-GigabitEthernet0/0/2]port link-type trunk 
    
允许对应的VLAN流量通过,同时VLAN标签将被保留。
[Huawei-GigabitEthernet0/0/2]port trunk allow-pass vlan 2 3

接口划分到VLAN
[Huawei-GigabitEthernet0/0/1]port default vlan 10

思科的VLAN

VLAN的编号由12位二进制构成:0 - 4095(1-4094可用)

  • 1 - 1005 标准VLAN:任意条件均可使用
  • 1006 - 4094 扩展VLAN:VTP模式为透明时使用

交换机默认存在VLAN1 vlan1002-1005 (非以太网使用)

VLAN1为默认的native vlan(默认的管理vlan)且所有接口默认处于vlan1

Switch(config)#vlan 2 
Switch(config-vlan)#name classroom1
Switch(config-vlan)#exit
Switch(config)#vlan 3-10,15-20  批量创建

接口划入VLAN

Switch(config)#interface fastEthernet 0/2
Switch(config-if)#switchport mode access   必须先将接口定义access模式才能进行划分
Switch(config-if)#switchport access vlan 2
Switch(config-if)#exit
Switch(config)#interface range fastEthernet 0/3 -4  批量划分
Switch(config-if-range)#switchport mode access 
Switch(config-if-range)#switchport access vlan 3

配置trunk干道

二层交换机手工配置trunk干道:

Switch(config)#interface fastEthernet 0/24
Switch(config-if)#switchport mode trunk 

思科的二层交换机仅支持802.1Q封装

三层交换机手工配置trunk干道 — ISL和802.1Q均支持,故配置前必须先定义封装类型

Switch(config)#interface fastEthernet 0/1
Switch(config-if)#switchport trunk encapsulation dot1q 
Switch(config-if)#switchport mode trunk

trunk干道

trunk不属于任何一个vlan,承载所有vlan的流量,具有标记和识别不同vlan标签的功能。

在数据帧中封装vlanID的方法存在两种:802.1q (dot1.q) 和 ISL(Cisco私有标准)

802.1q与ISL的区别:

  1. 802.1q标记流为4个字节,ISL标记为20个字节

  2. 802.1q存在native本征vlan,默认不进行封装的一个vlan

  3. 802.1q使用12位标记4096个vlan,ISL使用10位标记1024个vlan

  4. ISL封装于数据帧的最前端,802.1q标记在前导位的后方

思科的trunk干道还存在一个DTP技术,自动协商建立trunk干道。默认思科的45以上含45系列交换机为被动模式,45及以下为主动模式。被动模式与被动模式不能自动建立trunk。(手工配置=主动模式)。

但任何模式与access模式不能建立为trunk。

Switch(config-if)#switchport mode dynamic ?
auto    Set trunking mode dynamic negotiation parameter to AUTO  被动模式
desirable  Set trunking mode dynamic negotiation parameter to DESIRABLE 主动模式

华为的VLAN

创建vlan

[SWA]vlan 10
[SWA-vlan10]quit
[SWA]vlan batch 2 to 3 5 10  批量创建vlan2-3,5,10

接口划入vlan

单个接口修改接口模式为access

[SWA]interface GigabitEthernet 0/0/5
[SWA-GigabitEthernet0/0/5]port link-type access

批量修改为access

[Huawei]port-group 1
[Huawei]group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/10
[Huawei]port link-type access

单个将接口划分到vlan

[SWA]interface GigabitEthernet0/0/5 

[SWA-GigabitEthernet0/0/5]port default vlan 3

批量将接口划分到vlan2

[Huawei]vlan 2
[Huawei-vlan2]port GigabitEthernet 0/0/1 to 0/0/2

trunk干道

进入接口后先修改接口类型为trunk模式,再定义该trunk干道可以允许通过的vlan。默认trunk干道的位PVLAN,类似cisco的native vlan为vlan1,默认对vlan1的流量不标记,且其他添加到允许列表也可正常通过。

[SWA-GigabitEthernet0/0/1]port link-type trunk
[SWA-GigabitEthernet0/0/1]port trunk allow-pass vlan 2 3
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all 允许所有vlan通过

[Huawei-GigabitEthernet0/0/1]port default vlan 3 修改trunk干道上的pvlan,一旦pvlan不是默认的vlan1了
那么需要在允许条件中添加新的pvlan,此时原有的vlan1不再是pvlan,需要手工将其添加到允许列表中

vlan间路由器

单臂路由—子接口—交换机连接路由器的那个交换机接口修改trunk模式

[RTA]interface GigabitEthernet0/0/1.1
[RTA-GigabitEthernet0/0/1.1]dot1q termination vid 2
[RTA-GigabitEthernet0/0/1.1]ip address 192.168.2.254 24 
[RTA-GigabitEthernet0/0/1.1]arp broadcast enable
[RTA]interface GigabitEthernet0/0/1.2
[RTA-GigabitEthernet0/0/1.2]dot1q termination vid 3
[RTA-GigabitEthernet0/0/1.2]ip address 192.168.3.254 24 
[RTA-GigabitEthernet0/0/1.2]arp broadcast enable

DHCP池塘配置

先全局开启dhcp服务,再在子接口开启dhcp服务,每个子接口单独开启,再定义地址池塘

[r1]dhcp enable
[r1]interface GigabitEthernet 0/0/0.1
[r1-GigabitEthernet0/0/0.1]dhcp select global

华为VLAN部分的接口模式

1、 只要流量进入华为的设备将马上打上标签,华为设备内部转发的流量均存在标签。

2、 华为的交换机上所有的接口存在转发允许列表,只有被转发允许列表允许的流量,才能从该接口进入或转出。

3、 从某个接口转出时,除查看允许列表外,还需要定义是否标记。

4、 若某个流量从交换机某个接口进入时,没有标签,将被标记上该接口pvlan id。

5、 若某个流量从交换机的某个接口进入时,存在标签,将匹配该接口的允许列表,若被允许可以进入,若未被允许将被丢弃。

6、 PC若接收到存在标记的流量,将丢弃。

无论接口为任何模式,均匹配以上6条规则。

接入模式(access):只能允许一个VLAN通过(允许列表无法直接定义)。PVLAN就是允许VLAN,且一定为不标记。

[sw1]interface GigabitEthernet 0/0/5
[sw1-GigabitEthernet0/0/5]port link-type access 
[sw1-GigabitEthernet0/0/5]port default vlan 2

中继模式(trunk):所有VLAN均可手动添加到允许列表中,默认仅pvlan在允许列表,且pvlan的出规则为不标记,其他VLAN出规则为标记。

[sw1]interface GigabitEthernet 0/0/6
[sw1-GigabitEthernet0/0/6]port link-type trunk 
[sw1-GigabitEthernet0/0/6]port trunk pvid vlan 2
[sw1-GigabitEthernet0/0/6]port trunk allow-pass vlan all

混杂模式(hybrid):所有VLAN均可手动添加到允许列表中,且可以在允许通过时,定义是否标记。默认PVLAN为VLAN1,出向规则为不标记,一旦PVLAN被修改,那么需要手工添加该VLAN到允许列表,同时可以定义是否标记。

[sw1]interface GigabitEthernet 0/0/7
[sw1-GigabitEthernet0/0/7]port hybrid tagged vlan 2 to 3
[sw1-GigabitEthernet0/0/7]port hybrid untagged vlan 4 to 5

查看接口的VLAN转发规则:

[sw1]display port vlan active  

总接口:数据帧从一个交换机接口进入时,先关注是否携带vlan id

  • 携带:关注list,若允许,便携带封装进入

  • 未携带:封装PVID的VLAN号进入

数据帧从一个交换机接口出去时,那么必须在vlan list中存在

再关注是否携带封装出U—剥离,T—携带


跨网段传输

不同的vlan通常属于不同的网段,当需要在不同VLAN传递信息,需要借助路由器。

多臂路由

多臂路由是一种网络路由技术,它使用多个物理路径来转发数据包,多臂路由中,数据包可以通过多个路径到达目的地。这些路径可以是不同的物理链路。

单臂路由

单臂路由是一种将所有数据包都路由到同一个物理接口的技术。在单臂路由中,路由器只有一个物理接口连接到网络。

虚拟接口(子接口)是一种将一个物理接口划分成多个逻辑接口的技术。在虚拟接口中,每个逻辑接口都有自己的IP地址和路由表,可以独立地转发数据包。

单臂路由将所有数据包路由到同一个物理接口,而虚拟接口将一个物理接口划分成多个逻辑接口。

创建子接口

进入子接口g0/0/0.1
interface GigabitEthernet0/0/0.1

封装dot1q协议,并将接口加入VLAN 10
dot1q termination vid 10

设置子接口IP地址和子网掩码
ip address 192.168.1.1 255.255.255.0 

开启子接口的ARP广播
arp broadcast enable

实例

目标:主机PC1和PC4同属于VLAN 10,PC2和PC5同属于VLAN 20,R1单臂路由实现全网可达。

分析:四台主机与交换机的链路配置为access,交换机之间和交换机与路由器之间的链路配置为trunk。R1创建两个子接口,分别给VLAN 10和VLAN 20使用。

配置:

  1. 四台PC配置IP地址、子网掩码及网关。

  2. 配置交换机SW1

    创建vlan 10和20
    [sw1]vlan batch 10 20
    
    设置0/0/2类型为access,将接口添加到VLAN 10
    [sw1]interface GigabitEthernet 0/0/2
    [sw1-GigabitEthernet0/0/2]port link-type access 
    [sw1-GigabitEthernet0/0/2]port default vlan 10
    [sw1-GigabitEthernet0/0/2]quit
    
    设置0/0/3类型为access,将接口添加到VLAN 20
    [sw1]interface GigabitEthernet 0/0/3
    [sw1-GigabitEthernet0/0/3]port link-type access 
    [sw1-GigabitEthernet0/0/3]port default vlan 20
    [sw1-GigabitEthernet0/0/3]quit
    
    设置0/0/1类型为trunk,配置为VLAN全通模式
    [sw1]interface GigabitEthernet 0/0/1
    [sw1-GigabitEthernet0/0/1]port link-type trunk
    [sw1-GigabitEthernet0/0/1]port trunk allow-pass vlan all 
    [sw1-GigabitEthernet0/0/1]quit
    
    设置0/0/4类型为trunk,配置为VLAN全通模式
    [sw1]interface GigabitEthernet 0/0/4
    [sw1-GigabitEthernet0/0/4]port link-type trunk
    [sw1-GigabitEthernet0/0/4]port trunk allow-pass vlan all
    [sw1-GigabitEthernet0/0/4]quit
    

    配置交换机SW2与SW1类似:创建vlan 10和20,设置0/0/2类型为access,将接口添加到VLAN 10,设置0/0/3类型为access,将接口添加到VLAN 20,设置0/0/1类型为trunk,配置为VLAN全通模式。

  3. 配置路由器R1

    创建子接口g0/0/0.1
    [r1]interface GigabitEthernet0/0/0.1
    [r1-GigabitEthernet0/0/0.1]dot1q termination vid 10
    [r1-GigabitEthernet0/0/0.1]ip address 192.168.1.1 255.255.255.0
    [r1-GigabitEthernet0/0/0.1]arp broadcast enable 
        
    创建子接口g0/0/0.2
    [r1]interface GigabitEthernet0/0/0.2
    [r1-GigabitEthernet0/0/0.1]dot1q termination vid 20
    [r1-GigabitEthernet0/0/0.1]ip address 192.168.2.1 255.255.255.0
    [r1-GigabitEthernet0/0/0.1]arp broadcast enable 
        
    
  4. 测试

    PC1 ping PC5,可以ping通,实验完成。


若有错误,欢迎指正!o( ̄▽ ̄)ブ