文档首页/ 虚拟私有云 VPC/ 用户指南/ VPC流日志/ VPC流日志配置示例/ 查看ECS通过NAT网关访问公网的流量
更新时间:2026-07-16 GMT+08:00
分享

查看ECS通过NAT网关访问公网的流量

方案架构

本示例中,在同一VPC的同一子网中有多台ECS,这些ECS通过公网NAT网关的SNAT功能访问公网,当NAT访问公网的流量突增,运维工程师需要查看流量占比高的ECS,则需要创建流日志,并采集子网的流日志进行分析定位。

图1 查看ECS通过NAT网关访问公网的流量

约束与限制

关于流日志的使用限制,具体请查看VPC流日志的使用限制

资源规划说明

本示例中,虚拟私有云VPC和子网、弹性云服务器ECS、弹性公网IP、NAT网关和VPC流日志等资源只要位于同一个区域内即可,可用区可以任意选择,无需保持一致。

以下资源规划详情仅为示例,您可以根据需要自行修改。

表1 资源规划总体说明

资源类型

资源数量

说明

虚拟私有云VPC和子网

VPC:1

子网:1

  • VPC名称:请根据实际情况设置,本示例为VPC-A。
  • IPv4网段:请根据实际情况设置,本示例VPC-A为192.168.0.0/16。
  • 子网名称:请根据实际情况设置,本示例为Subnet-A01。
  • 子网IPv4网段:请根据实际情况设置,本示例为192.168.0.0/24。

弹性云服务器ECS

3

本示例中,共需要3个ECS,配置说明如下:
  • 名称:根据实际情况设置,本示例分别为ECS-01、ECS-02、ECS-03。
  • 实例规格类型:本示例中采集3个ECS所在子网的流日志,当前仅支持部分规格ECS,具体请参见VPC流日志的使用限制,请确保3个ECS满足要求。
  • 镜像:请根据实际情况设置,本示例为公共镜像Huawei Cloud EulerOS 2.0 标准版 64位。
  • 系统盘:通用型SSD盘,40GB。
  • 数据盘:本示例未选购数据盘,请您根据实际业务需求选购数据盘。
  • 网络:
    • 虚拟私有云:选择您的虚拟私有云,本示例为VPC-A。
    • 子网:选择子网,本示例子网为Subnet-A01。
  • 安全组:本示例中,3个ECS属于同一个安全组Sg-X,需要确保表2中的规则均已正确添加即可。
  • 弹性公网IP:选择“暂不购买”。
  • 私有IP地址:ECS-01为192.168.0.102,ECS-02为192.168.0.60,ECS-03为192.168.0.42。

弹性公网IP EIP

1

本示例中,共需要1个弹性公网IP,按需选择线路和公网带宽等参数,本示例为121.XX.XX.73。

公网NAT网关

1

  • 公网NAT网关的配置说明如下:
    • 名称:本示例为NAT-A。
    • 规格:本示例选择小型。
    • 虚拟私有云:本示例选择VPC-A。
    • 子网:本示例选择Subnet-A01。
  • 在公网NAT网关中添加SNAT规则,配置说明如下:
    • 使用场景:选择虚拟私有云。
    • 网段:选择“使用已有”,并选择子网Subnet-A01。
    • 公网IP类型:选择本示例创建的弹性公网IP。

VPC流日志

1

  • 名称:请根据实际情况设置,本示例为flowlog-A。
  • 流日志版本:本示例选择v1。
  • 资源类型:本示例为子网。
  • 选择资源:请根据实际情况选择,本示例选择Subnet-A01。
  • 采集类型:本示例为全部。
  • 日志组:请选择已有或者新创建日志组,以下为本示例详细设置。
    • 日志组名称:请根据实际情况设置,本示例为lts-group-A。
    • 日志存储时间(天):请根据实际情况设置,本示例为30。
  • 日志流:请选择已有或者新创建日志流,以下为本示例详细设置。
    • 日志组名称:选择当前的日志组,本示例为lts-group-A。
    • 日志流名称:请根据实际情况设置,本示例为lts-topic-A。
    • 日志存储:建议开启,以便用于日志搜索分析。
    • 日志存储时间(天):请根据实际情况设置,本示例为30。
表2 安全组Sg-X规则说明

方向

策略

类型

协议端口

源地址/目的地址

描述

入方向

允许

IPv4

TCP: 22

源地址:0.0.0.0/0

放通安全组内ECS的SSH(22)端口,用于远程登录Linux ECS。

入方向

允许

IPv4

TCP: 3389

源地址:0.0.0.0/0

放通安全组内ECS的RDP(3389)端口,用于远程登录Windows ECS。

入方向

允许

IPv4

全部

源地址:当前安全组Sg-X

针对IPv4,用于安全组内ECS之间网络互通。

入方向

允许

IPv6

全部

源地址:当前安全组Sg-X

针对IPv6,用于安全组内ECS之间网络互通。

出方向

允许

IPv4

全部

目的地址:0.0.0.0/0

针对IPv4,用于安全组内ECS访问外部,允许流量从安全组内ECS流出。

出方向

允许

IPv6

全部

目的地址:::/0

针对IPv6,用于安全组内ECS访问外部,允许流量从安全组内ECS流出。

本示例中,入方向源地址设置为0.0.0.0/0表示允许所有外部IP远程登录云服务器,如果将22或3389端口暴露到公网,可能存在网络安全风险,建议您将源IP设置为已知的IP地址,比如设置为您的本地PC地址。

操作流程

查看ECS通过NAT网关访问公网的流量,流程如图2所示。

图2 查看ECS通过NAT网关访问公网的流量

步骤一:创建云服务资源

  1. 创建VPC和子网。

    具体方法请参见创建虚拟私有云和子网

  2. 创建ECS。

    具体方法请参见自定义购买ECS

  3. 创建EIP。

    创建EIP,具体方法请参见申请弹性公网IP

  4. 创建公网NAT网关。

    创建公网NAT网关,具体方法请参见购买公网NAT网关

  5. 公网NAT网关中,配置SNAT规则。

    配置SNAT规则,具体方法请参见添加SNAT规则

步骤二:创建VPC流日志

  1. 在云日志服务控制台中,创建日志组和日志流。

    创建日志组,请参见创建日志组

    创建日志流,请参见创建日志流

  2. 创建1个VPC流日志。

    具体方法请参见创建VPC流日志

步骤三:查看VPC流日志信息

本示例采集子网Subnet-A01的流日志,通过ECS-03 ping公网构造模拟流量。流日志以子网为采集粒度,子网内任一ECS产生流量均会上报,您可通过流日志信息分析哪台ECS流量异常。

  1. 远程登录ECS-03。

    ECS有多种登录方法,具体请参见登录弹性云服务器

  2. 执行以下命令,采用ECS-03 ping 任意公网IP地址的方法来产生流量,从而采集流日志。

    ping 公网IP地址

    命令示例:

    ping 117.XX.XX.122

    回显类似如下信息,您需要等待大约10分钟,才能查看流日志记录详情。采集流日志期间请勿中断ping命令。
    [root@ecs-03 ~]# ping 117.XX.XX.122
    PING 117.XX.XX.122 (117.XX.XX.122) 56(84) bytes of data.
    64 bytes from 117.XX.XX.122: icmp_seq=1 ttl=49 time=26.5 ms
    64 bytes from 117.XX.XX.122: icmp_seq=2 ttl=49 time=26.3 ms
    64 bytes from 117.XX.XX.122: icmp_seq=3 ttl=49 time=26.2 ms
    ...
  3. 等待大约10分钟,参考查看VPC流日志,查看VPC流日志信息。

    您可以在搜索框中输入公网IP地址(117.XX.XX.122),快速过滤出子网内ECS和公网通信的流日志。

    图3 查看日志信息
    流日志格式:
    <version> <project-id> <interface-id> <srcaddr> <dstaddr> <srcport> <dstport> <protocol> <packets> <bytes> <start> <end> <action> <log-status>
    • 流日志示例:1 1XX89aca74e640d9848a37dea0315d99 ff3fcb8c-25b5-4fe4-9da6-b8857a6150e2 117.XX.XX.122 192.168.0.42 0 0 1 599 58702 1782959031 1782959631 ACCEPT OK
    • 流日志含义:VPC流日志版本为1,在2026-07-02 10:23:51~2026-07-02 10:33:51这10分钟时间内,网卡(ff3fcb8c-25b5-4fe4-9da6-b8857a6150e2)允许(ACCEPT)流过的流量信息。由源端IP地址192.168.0.42通过ICMP协议(protocol=1)向目的端IP地址117.XX.XX.122传输了599个 echo request(type=8,code=0)数据包,所有数据包的大小为58702byte。

      关于流日志数据的详细说明,请参见VPC流日志数据说明

步骤四:对VPC流日志进行结构化配置及可视化分析

云日志服务支持对采集成功的日志数据进行搜索与分析,并可视化展示日志分析结果。
  1. 执行搜索与分析前,将上报的日志进行结构化配置。

    本示例参数设置如表3所示,具体操作请参见云端结构化解析日志

    图4 设置云端结构化解析日志
    表3 结构化配置-参数说明

    操作序号

    操作指导

    结构化方式选择“分隔符”

    在文本框中,输入VPC流日志示例:

    1 f0512a6441dc47189f5e03a428f48267 ef676eb6-0a0a-4939-85c9-9f8db1d1937c 192.168.0.66 192.168.1.31 8 0 1 585 57330 1739877133 1739877733 ACCEPT OK

    分隔符选择“空格”

    单击“智能提取”

    在智能提取的字段列表中,依次将字段名字改为流日志的字段名称:

    version、project-id、interface-id、srcaddr、dstaddr、srcport、dstport、protocol、packets、bytes、start、end、action、log-status

  2. 完成云端结构化解析配置后,可以进行日志分析。
    本示例为您介绍以下两种可视化日志分析方法:
    • 使用统计图表将日志可视化:统计图表是云日志服务根据SQL查询语法渲染出的结果,包括表格、柱状图、折线图等多种图表类型。
      1. 在“日志分析”页签内,参考SQL分析语法编写所需的语句,并输入在搜索框中,获取所需的日志。

        本示例以分析ECS-01每1小时的数据流量为例。

        SELECT TIME_FORMAT(TIME_CEIL(__time, 'PT1H'), 'yyyy-MM-dd HH:mm:ss') as "time", count(1) as pv group by "time"
      2. 在页面右侧配置区域,设置图表时间和其他信息。

        本示例查看1天时间范围内,每小时的流量数据,更多统计图表信息请参见统计图表概述

        图5 流量折线图
    • 使用仪表盘将日志可视化:仪表盘是云日志服务提供的实时数据分析大盘。
      1. 将VPC服务接入LTS服务中,具体操作请参见虚拟私有云VPC接入LTS
      2. VPC接入成功后,在云日志服务控制台,选择“仪表盘 > VPC仪表盘 > VPC流日志”。

        进入VPC仪表盘详情页面,稍等几分钟,可查看流日志数据,更多仪表盘信息请参见VPC仪表盘模板

        图6 VPC流日志仪表盘

相关文档