zoukankan      html  css  js  c++  java
  • 二层VLAN隔离技术详解三VLAN通信原理

    为了提高处理效率,交换机内部的数据帧一律都带有VLAN Tag,以统一方式处理。

    当一个数据帧进入交换机接口时,如果没有带VLAN Tag,且该接口上配置了 PVID(PortDefault VLAN ID),那么,该数据帧就会被标记上接口的 PVID。如果数据帧已经带有VLAN Tag,那么,即使接口已经配置了 PVID,交换机不会再给数据帧标记VLAN Tag。

    由于接口类型不同,交换机对帧的处理过程也不同。下面根据不同的接口类型分别介绍

     VLAN内跨越交换机通信原理

    有时属于同一个 VLAN 的用户主机被连接在不同的交换机上。当VLAN 跨越交换机时,就需要交换机间的接口能够同时识别和发送跨越交换机的VLAN 报文。这时,需要用到 TrunkLink 技术。


    Trunk Link 
    有两个作用:

    • 中继作用: VLAN 报文透传到互联的交换机

    • 干线作用:一条 Trunk Link 上可以传输多个VLAN 的报文。

     如图所示的网络中,为了让 DeviceA DeviceB 之间的链路既支持VLAN2 内的用户通讯又支持 VLAN3内的用户通讯,需要配置连接接口同时加入两个 VLAN。即应配置DeviceA 的以太网接口 Port2 DeviceB 的以太网接口Port1 同时加入 VLAN2 VLAN3

     

    当用户主机 Host A 发送数据给用户主机Host B 时,数据帧的发送过程如下:
    1. 
    数据帧首先到达DeviceA 的接口 Port4

    2. 接口 Port4给数据帧加上 TagTag  VID字段填入该接口所属的 VLAN 的编号2
    3. DeviceA
    查询自己的MAC地址表中是否存在目的地址为DeviceBMAC地址的转发表项。·如果存在, DeviceA 将数据帧转发给接口Port2·如果不存在, DeviceA 会将数据帧发送到本设备上除port4 接口外的所有属于 VLAN2的接口。
    4. 
    接口Port2 将帧转发到 DeviceB上。
    5. DeviceB 
    收到数据帧后,会查询自己的MAC 地址表中是否存在目的地址为 HostB  MAC地址的转发表项。

    ·如果存在, DeviceB 会将数据帧发送给出接口Port3

    ·如果不存在, DeviceB 会将数据帧发送到本设备上除port1 接口外的所有属于 VLAN2的接口。
    6. 
    接口Port3 将数据帧发送给主机 HostB

     

     

    VLAN间通信原理

     

    划分 VLAN 后,不同VLAN 之间不能直接通信。如果要实现 VLAN间通信,可以采取以下方案:

     

    方式一:子接口

     

    如图所示,DeviceA 为支持配置子接口的三层设备, DeviceB为二层交换设备。LAN 通过DeviceB的以太网接口(交换式以太网接口)与 DeviceA 的以太网接口(路由式以太网接口)相连。用户主机被划分到两个VLANVLAN2VLAN3。可通过如下配置实现VLAN 间互通。

     

    •  DeviceA 的以太网接口(与DeviceB 相连的以太网接口)上创建 2个子接口 Port1.1Port2.1,并配置802.1Q封装与 VLAN2 VLAN3 分别对应。

    • 配置子接口的 IP 地址,保证两个子接口对应的IP 地址路由可通。

    •  DeviceB DeviceA 相连的以太网接口类型配置为 Trunk Hybrid 类型,允许VLAN2 VLAN3的帧通过。

    • 将用户设备的缺省网关设置为所属 VLAN 对应子接口的IP 地址

     1.主机A  C的通信过程如下:1. 主机 A将主机 C IP 地址和自己所在网段进行比较,发现主机 C和自己不在同一个子网。

    2. 主机A 发送 ARP请求给自己的网关 DeviceA,请求网关的MAC 地址。
    3. DeviceA 
    收到该ARP 请求后,返回 ARP应答报文,报文中源 MAC 地址为VLAN2 对应子接口的 MAC地址。
    4. 
    主机A 学习到网关的 MAC地址。
    5. 
    主机A向网关发送目的 MAC为子接口MAC地址、目的 IP为主机 CIP 地址的报文。
    6. DeviceA 
    收到该报文后进行三层转发,发现主机C  IP地址为直连路由,报文将通过VLAN3 关联的子接口进行转发。
    7. DeviceA 
    作为VLAN3 内主机的网关,向 VLAN3内发送一个 ARP 广播,请求主机C MAC地址。
    8. 
    主机C 收到网关发送的 ARP广播后,对此请求进行 ARP 应答。
    9. 
    网关收到主机C 的应答后,就把主机 A的报文发送给主机 C。主机A 之后要发给 C的报文都先发送给网关,由网关做三层转发。

     

    方式二:VLANIF接口

     

    三层交换技术是将路由技术与交换技术合二为一的技术,在交换机内部实现了路由,提高了网络的整体性能。三层交换机通过路由表传输第一个数据流后,会产生一个MAC 地址与 IP地址的映射表。当同样的数据流再次通过时,将根据此表直接从二层通过而不是通过三层,从而消除了路由器进行路由选择而造成的网络延迟,提高了数据包转发效率。

     

    为了保证第一次数据流通过路由表正常转发,路由表中必须有正确的路由表项。因此必须在三层交换机上部署三层接口并部署路由协议,实现三层路由可达。VLANIF 接口由此而产生。VLANIF接口是三层逻辑接口,可以部署在三层交换机上,也可以部署在路由器上。在图 所示的网络中,交换机上划分了 2 VLANVLAN2  VLAN3。可通过如下配置实现VLAN 间互通。

     

    Device 上创建 2 VLANIF 接口并配置VLANIF 接口的 IP地址,保证两个 VLANIF接口对应的IP 地址路由可通。

     

    将用户设备的缺省网关设置为所属VLAN 对应 VLANIF接口的 IP 地址。

     1.主机A  C的通信过程如下:1. 主机 A将主机 C IP 地址和自己所在网段进行比较,发现主机 C和自己不在同一个子网。

    2. 主机A 发送 ARP请求给自己的网关 Device,请求网关的MAC 地址。
    3 Device 
    收到该ARP 请求后,返回 ARP应答报文,报文中源 MAC 地址为VLANIF2 MAC地址。
    4. 
    主机A 学习到网关的 MAC地址。
    5. 
    主机A 向网关发送目的 MAC VLANIF 接口MAC 地址、目的 IP为主机 C IP 址的报文。
    6. Device 
    收到该报文后进行三层转发,发现主机C  IP地址为直连路由,报文将通过
    VLANIF3 
    接口进行转发。
    7. Device 
    作为VLAN3 内主机的网关,向 VLAN3内发送一个 ARP 广播,请求主机C 
    MAC 
    地址。
    8. 
    主机C 收到网关发送的 ARP广播后,对此请求进行 ARP 应答。
    9. 
    网关收到主机C 的应答后,就把主机 A的报文发送给主机 C。主机A 之后要发给 C报文都先发送给网关,由网关做三层转发。

  • 相关阅读:
    scrapy 断点续爬
    Tornado
    python 列表去重的几种方法
    安装Mysql-python报错EnvironmentError: mysql_config not found
    安装setuptools 报错缺少zlib
    微信小程序-if条件渲染
    微信小程序-遍历列表
    微信小程序-数据绑定
    超强过滤器
    如何在tomcat安装部署php项目
  • 原文地址:https://www.cnblogs.com/liujunjun/p/12912865.html
Copyright © 2011-2022 走看看