88440559_p0 1080.jpg

1. VLAN Aggregation(VLAN 聚合)特征


  • 在一个网络内,用多个 VLAN 隔离广播域
  • 将多个 VLAN 关联(聚合)到一个 VLAN 内,就是 VLAN 聚合(Super VLAN)
  • 一个 Super-VLAN 包含一个或多个 Sub-VLAN,Sub-VLAN 使用同一个 IP 子网和缺省网关,达到节约 IP 地址资源的目的

    2. Role Type 和工作原理


image.png

  • Super-VLAN:
    • 只建立三层 VLANIF 接口,不包含物理接口,与子网网关对应
    • Super VLAN的 VLANIF 接口的 Up 不依赖于自身物理接口,只要它所含 Sub-VLAN 中存在 Up 的物理接口就 Up
  • Sub-VLAN:
    • 只包含物理接口,不能建立三层 VLANIF 接口,用于隔离广播域
    • 每个 Sub-VLAN 内的主机与外部的三层通信是靠 Super-VLAN 的三层 VLANIF 接口来实现的

      3. Super VLAN 的通信和工作原理


1)Sub-VLAN 之间的通信

使用 ARP-Proxy 的 inter-sub-vlan-proxy 解决 Super VLAN 在实现不同 VLAN 共用同一子网网段地址的同时,Sub-VLAN 间的三层转发

image.png
工作原理:

  1. Host_1 将 Host_2 的 IP 地址和自己所在网段 10.1.1.0/24 进行比较,发现 Host_2 和自己在同一个子网,但是 Host_1 的 ARP 表中无 Host_2 的对应表项
  2. Host_1 发送 ARP 广播报文,请求 Host_2 的 MAC 地址,目的 IP 为 10.1.1.12
  3. 网关 L3 Switch 收到 Host_1 的 ARP 请求,由于网关上使能 Sub-VLAN 间的 Proxy ARP,开始使用报文中的目的 IP 地址在路由表中查找,发现匹配了一条路由,下一跳为直连网段(VLANIF10 的 10.1.1.0/24),VLANIF10 对应 Super-VLAN10,则向 Super-VLAN10 的所有 Sub-VLAN 接口发送一个 ARP 广播,请求 Host_2 的 MAC 地址
  4. Host_2 收到网关发送的 ARP 广播后,对此请求进行 ARP 应答
  5. 网关收到 Host_2 的应答后,就把自己的 MAC 地址回应给 Host_1
  6. Host_1 之后要发给 Host_2 的报文都先发送给网关,由网关做三层转发

    2)Super-VLAN 与其他设备的二层通信

    image.png
    工作原理:

  7. 从Host_1 进入 Switch_1 的报文会被打上 VLAN2 的 Tag。在 Switch_1 中这个 Tag 不会因为 VLAN2 是 VLAN4 的 Sub-VLAN 而变为 VLAN4 的 Tag。该报文从 Switch_1 的 Trunk 接口 IF_3 出去时,依然是携带 VLAN2 的 Tag

  8. 也就是说,Switch_1 本身不会发出 VLAN4 的报文。就算其他设备有 VLAN4 的报文发送到该设备上,这些报文也会因为 Switch_1 上没有 VLAN4 对应的物理接口而被丢弃。因为 Switch_1 的 IF_3 接口上根本就不允许 Super-VLAN4 通过。对于其他设备而言,有效的 VLAN 只有 Sub-VLAN2 和 Sub-VLAN3,所有的报文都是在这些 VLAN 中交互的
  9. 这样,Switch_1 上虽然配置了 VLAN 聚合,但与其他设备的二层通信,不会涉及到 Super-VLAN,与正常的二层通信流程一样

    3)Super-VLAN 与其他网络的三层通信

    image.png

  10. Host_1 将 Server 的 IP 地址和自己所在网段10.1.1.0/24进行比较,发现和自己不在同一个子网,发送 ARP 请求给自己的网关,请求网关的 MAC 地址,目的 MAC 为全 F,目的 IP 为 10.1.1.1

  11. Switch_1 收到该请求报文后,查找 Sub-VLAN 和 Super-VLAN 的对应关系,知道应该回应 Super-VLAN4 对应的 VLANIF4 的 MAC 地址,并从 Sub-VLAN2 的接口回应给 Host_1
  12. Host_1 学习到网关的 MAC 地址后,开始发送目的 MAC 为 Super-VLAN4 对应的 VLANIF 的 MAC 地址、目的IP为10.1.2.2 的报文
  13. Switch_1 收到该报文后,根据 Sub-VLAN 和 Super-VLAN 的对应关系以及目的 MAC 判断进行三层转发,查三层转发表项没有找到匹配项,上送 CPU 查找路由表,得到下一跳地址为 10.1.10.2,出接口为 VLANIF10,并通过 ARP 表项和 MAC 表项确定出接口,把报文发送给 Switch_2
  14. Switch_2 根据正常的三层转发流程把报文发送给 Server
  15. Server 收到 Host_1 的报文后给 Host_1 回应,回应报文的目的 IP 为 10.1.1.2,目的 MAC 为 Switch_2 上 VLANIF20 接口的 MAC 地址
  16. 报文到达 Switch_1 时,报文的目的 MAC 地址为 Switch_1 上 VLANIF10 接口的MAC地址。Switch_1 收到该报文后根据目的 MAC 地址判断进行三层转发,查三层转发表项没有找到匹配项,上送 CPU,CPU 查路由表,发现目的 IP 为 10.1.1.2 对应的出接口为 VLANIF4,查找 Sub-VLAN 和 Super-VLAN 的对应关系,并通过 ARP 表项和 MAC 表项,从 Sub-VLAN2 的接口发送给 Host_1
  17. 回应报文到达 Host_1