本文为您介绍如何通过云企业网转发路由器实现流量安全互访。

背景信息

本文以下图场景为例。某企业在阿里云中国(香港)地域已经部署有三个专有网络VPC(Virtual Private Cloud),其中VPC A部署有安全管控服务。出于营造安全的企业网络环境考虑,企业希望VPC B与VPC C之间的访问流量,先通过VPC A中的安全管控服务过滤后,再进行互通。东西向流量架构图
注意 在您应用本场景时,请确保您的安全管控服务所属的VPC实例的地域为中国(香港)或美国(硅谷)。

前提条件

在您执行本文操作前,请确保您已经满足以下条件:
  • 您已经在中国(香港)地域创建了三个VPC,且三个VPC中均部署有云服务ECS实例。其中:
    • VPC A需拥有三个交换机实例,其中交换机1和交换机2分布在不同可用区用于连接转发路由器,交换机3中部署有安全管控服务。
    • VPC B和VPC C实例需在至少两个不同的可用区内均创建有交换机实例,用于后续连接转发路由器。具体操作,请参见使用专有网络
  • 您已经创建了云企业网实例。具体操作,请参见创建云企业网实例
  • 您已经将三个VPC实例连接到同一个云企业网实例中。具体操作,请参见创建VPC连接

    在您连接VPC实例时,请注意每一个VPC实例的三种高级配置都均不启用。

  • 您已经了解您VPC A、VPC B、VPC C中的ECS实例所应用的安全组规则,并确保安全组规则允许三个VPC中的ECS实例之间可以互通。具体操作,请参见查询安全组规则

步骤一:网络规划

为实现上述需求,企业的路由规划如下:
  • 在VPC控制台
    • 分别在VPC B、VPC C的系统路由表中添加目标网段为0.0.0.0/0,下一跳为转发路由器的路由条目。
    • 在VPC A实例中,交换机1和交换机2各自关联一张自定义路由表,并在各自的自定义路由表中,添加目标网段为0.0.0.0/0,下一跳为交换机3内的安全管控ECS实例的路由条目。交换机3也单独关联一张自定义路由表,并在自定义路由表中添加目标网段为0.0.0.0/0,下一跳为转发路由器的路由条目。
  • 在转发路由器实例中
    • VPC B和VPC C关联到转发路由器的同一张自定义路由表,且在自定义路由表中,添加目标网段为0.0.0.0/0,下一跳为VPC A的自定义路由条目。

      完成后,VPC B和VPC C通过该路由表将流量转发到VPC A。

    • VPC A关联到转发路由器的另一张自定义路由表,该路由表学习VPC B和VPC C的路由。

      完成后,VPC A可通过查询该路由表将流量转发至VPC B和VPC C。

  • 本文示例中,三个VPC实例中的网段规划,如下表所示。您可以自行规划网段,请确保VPC之间的网段没有重叠。
    VPC 交换机 交换机可用区 网段规划 ECS地址
    VPC A

    主网段:10.1.0.0/16

    交换机1

    可用区B

    10.1.0.0/24 10.1.2.13

    交换机2

    可用区C

    10.1.1.0/24

    交换机3

    可用区B

    10.1.2.0/24
    VPC B

    主网段:10.2.0.0/16

    交换机1

    可用区B

    10.2.0.0/24 10.2.2.48

    交换机2

    可用区C

    10.2.1.0/24

    交换机3

    可用区C

    10.2.2.0/24
    VPC C

    主网段:10.3.0.0/16

    交换机1

    可用区B

    10.3.0.0/24 10.3.2.27

    交换机2

    可用区C

    10.3.1.0/24

    交换机3

    可用区C

    10.3.2.0/24

步骤二:为VPC实例添加路由条目

  1. 登录专有网络管理控制台
  2. 在顶部菜单栏,选择路由表所属的地域。
  3. 为VPC B和VPC C添加自定义路由条目。
    1. 在左侧导航栏,单击路由表
    2. 路由表页面,找到目标路由表,单击路由表实例ID。
      本操作找到VPC B的系统路由表。
    3. 路由表基本信息区域,单击路由条目列表下的自定义
    4. 自定义页签下,单击添加路由条目
    5. 添加路由条目面板,配置以下信息,然后单击确定
      • 目标网段:本示例输入0.0.0.0/0。
      • 下一跳类型:本示例选择转发路由器
      • 转发路由器:本示例选择VPC B关联的转发路由器实例。
    6. 请重复上述步骤和配置,在VPC C的系统路由表中添加相同的路由条目。
      • 目标网段:本示例输入0.0.0.0/0。
      • 下一跳类型:本示例选择转发路由器
      • 转发路由器:本示例选择VPC C关联的转发路由器实例。
  4. 为VPC A创建三张自定义路由表。具体操作,请参见创建自定义路由表
  5. 绑定交换机和自定义路由表。具体操作,请参见绑定交换机和路由表
    在本操作中,请将VPC A中的交换机1、交换机2、交换机3分别关联一张自定义路由表。
  6. 在VPC A的自定义路由表中添加路由条目。
    1. 路由表页面,选择已创建的一张路由表,单击路由表实例ID。
      本操作选择与交换机1绑定的自定义路由表。
    2. 路由表基本信息区域,单击路由条目列表下的自定义
    3. 自定义页签下,单击添加路由条目
    4. 添加路由条目面板,配置以下信息,然后单击确定
      • 目标网段:本示例输入0.0.0.0/0。
      • 下一跳类型:本示例选择ECS实例
      • 资源组:本示例选择全部
      • ECS实例:本示例选择VPC A中交换机3的安全管控ECS实例。
    5. 请重复上述步骤和配置,在交换机2的自定义路由表中添加相同的路由条目。
    6. 请重复上述步骤,在交换机3的自定义路由表中添加路由条目,其中交换机3的路由条目信息如下:
      • 目标网段:本示例输入0.0.0.0/0。
      • 下一跳类型:本示例选择转发路由器
      • 转发路由器:本示例选择VPC A关联的转发路由器实例。

步骤三:在转发路由器中配置路由

  1. 登录云企业网管理控制台
  2. 云企业网实例页面,单击目标实例ID。
  3. 在云企业网实例详情页面,找到已创建的转发路由器,单击其实例ID。
  4. 转发路由器路由表页签下,为转发路由器创建两张自定义路由表。具体操作,请参见创建自定义路由表
  5. 为VPC B和VPC C关联自定义路由表并配置路由条目。
    1. 转发路由器路由表页签下,选择已创建的一张自定义路由表,单击关联转发页签,然后单击创建关联转发
    2. 添加关联转发对话框,选择要关联至该自定义路由表的网络实例连接,然后单击确定
      本操作中,请将VPC B和VPC C关联至该自定义路由表。
    3. 保持在该路由表详情页面,单击路由条目页签,然后单击创建路由条目
    4. 添加路由条目对话框,根据以下信息进行配置,然后单击确定
      • 目的地址CIDR:本示例输入0.0.0.0/0。
      • 是否为黑洞路由:如果选择路由为黑洞路由后,所有去往该路由的流量均会被丢弃。本示例选择
      • 下一跳连接:本示例选择VPC A连接。

      更多信息,请参见为转发路由器添加路由条目

    完成上述操作后,VPC B和VPC C的所有请求流量将被转发到VPC A。
  6. 为VPC A关联自定义路由表并配置路由条目。
    1. 转发路由器路由表页签下,选择已创建的另一张自定义路由表,单击关联转发页签,然后单击创建关联转发
    2. 添加关联转发对话框,选择要关联至该自定义路由表的网络实例连接,然后单击确定
      本操作中,请将VPC A关联至该自定义路由表。
    3. 保持在该路由表详情页面,单击路由学习页签,然后单击创建路由学习
    4. 添加路由学习对话框,选择该路由表要学习其路由的网络实例连接,然后单击确定

      本操作中,请将VPC B和VPC C关联至该路由表。关联后,该路由表将能学习到VPC B和VPC C的路由。VPC A通过查询该路由表和VPC B及VPC C互通。

步骤四:测试网络连通性

  1. 登录VPC A的ECS实例,执行以下命令启用允许转发。关于如何登录ECS实例,请参见连接方式概述ECS远程连接操作指南
    说明 在不设置允许转发的情况下,VPC B和VPC A之间、VPC C和VPC A之间可以互相访问,但VPC B和VPC C之间无法互访。
    echo 1 > /proc/sys/net/ipv4/ip_forward   #启用允许转发。当前命令临时生效,重启后会丢失。
    东西向流量步骤1
  2. 登录VPC B的ECS实例,通过ping命令,分别ping VPC A和VPC C下的ECS实例的IP地址,测试VPC B与VPC A、VPC C之间的连通性。
    经验证,VPC B与VPC A、VPC C之间可以正常通信。东西向流量-验证VPC B的连通性
  3. 登录VPC C的ECS实例,通过ping命令,测试VPC C与VPC A、VPC B之间的连通性。
    经验证,VPC C与VPC A、VPC B之间可以正常通信。东西向流量-验证VPC C的连通性