VPC流日志

更新时间: 2025-07-17 15:10:54

VPC流日志采集并记录弹性网卡的进出流量信息,可以帮助您监控网络性能、排查网络故障或优化流量成本。

工作原理

image

流日志支持3种粒度的流量信息采集:弹性网卡、交换机或VPC。如果为VPC或交换机创建流日志,则系统会采集VPC或交换机内所有关联弹性网卡的流量,包括创建流日志后新建的弹性网卡。

系统会在每个采集窗口(默认为10分钟)内先将流量信息聚合为流日志条目,再投递到SLS。

每条流日志条目会记录特定采集窗口中的特定五元组网络流,包含源/目IP地址、源/目端口、协议等信息,示例:

eni-id

direction

srcaddr

srcport

protocol

dstaddr

dstport

...

eni-xxx

in

10.0.0.1

53870

6

10.0.0.2

80

...

eni-xxx

out

10.0.0.2

80

6

10.0.0.1

53870

...

您可参考流日志字段说明了解所有字段及其含义。

您可根据实际使用场景,仅采集所需路径的流量,从而降低流日志的使用成本。可选路径:

  • 通过IPv4网关访问公网的流量

  • 通过NAT网关的流量

  • 通过VPN网关的流量

  • 通过转发路由器(TR)的流量

  • 通过网关终端节点访问云服务的流量

  • 通过边界路由器(VBR)访问专线的流量

  • 通过专线网关(ECR)的流量

  • 通过网关型负载均衡终端节点的流量

流日志的应用场景:

  • 网络监控:了解VPC吞吐量和性能、VPC内资源的流量信息及变化趋势、排查网络故障、检查安全组或网络ACL生效情况。

  • 优化网络流量成本:通过流日志分析网络传输情况,来优化网络流量费用。例如获取VPC发往其他地域的流量、发往特定公网地址的流量、流向本地IDC和其他云网络的流量,以及定位VPC中高流量的ECS实例。

  • 网络安全分析:在出现突发事件时,通过出入流量信息分析异常IP或者调查入侵IP访问记录。

使用限制

  • 首次使用流日志功能时,您需要:

    • 流日志页面单击立即开通。如果您曾在公测期间创建过流日志实例,也需单击立即开通后才能重新查看和管理这些实例。

    • 流日志页面单击立即授权,然后单击同意授权。该操作会自动创建1个RAM角色AliyunVPCLogArchiveRole和1个RAM策略AliyunVPCLogArchiveRolePolicy,VPC默认通过此角色和策略来访问日志服务,来保证将流日志写入日志服务中。

    • 已在日志服务产品页开通了日志服务。

  • 开启流日志后,新建弹性网卡的首次采集可能存在时间延迟(通常<10分钟)。

  • 流日志不支持采集组播流量。

管理流日志

控制台

创建流日志

前往专有网络控制台流日志页面,单击创建流日志。在创建流日志面板中进行配置:

  1. 采集配置

    1. 地域:选择目标采集对象所在的地域。

    2. 资源类型资源实例:可选采集粒度为弹性网卡交换机专有网络。选择专有网络或交换机时,系统会监控其内所有弹性网卡的流量。

    3. 流量类型:可选被访问控制允许或拒绝的流量,此处的访问控制包括安全组和网络ACL。

    4. 流量采集版本:可选仅采集IPv4或采集IPv4+IPv6双栈。当前支持IPv6的地域包括:华北1(青岛)华北5(呼和浩特)美国(硅谷)美国(弗吉尼亚)

    5. 采样间隔(分钟):聚合流量信息的采集窗口时间,可选1分钟、5分钟或10分钟。窗口越小,流日志生成越频繁和及时,有助于更快发现和定位问题。窗口越大时效性越低,但日志条目数也会下降从而节省费用成本。

      例如1个保持长连接的TCP会话,窗口为1分钟时每小时产生60条日志;为10分钟时仅产生6条。

      当VPC内存在多个流日志实例同时采集同一网卡流量时,将会以所有流日志实例中最小的采样间隔作为实际采集周期。
    6. 采样路径:您可选择特定的采集场景来降低使用成本。选择前需要先取消默认的采集全部场景

      支持选择通过如下网元的流量:IPv4网关、NAT网关、VPN网关、转发路由器(TR)、网关终端节点、边界路由器(VBR)、专线网关(ECR)、网关型负载均衡节点(GWLB)。

  2. 分析和投递配置:选择至少一个目标。

    • 投递至日志服务

      • 选择Project和Logstore:首次创建流日志时,为和其他数据隔离,建议您新建Project新建Logstore。当需要将多个流日志汇总到一处集中分析时,请选择同一个Logstore。

      • 开启流日志分析报表功能:建议勾选。该功能会自动在流日志对应的LogStore上创建索引创建仪表盘,以支持对流日志执行SQL与可视化分析。开启后SLS产品会产生计费

    • 开启NIS流量分析(暂未开放)。

  3. 成功创建流日志后,系统会自动启动流量信息采集,下一步您可以分析流日志

启动或停止流日志

前往专有网络控制台流日志页面,在目标流日志的操作列单击启动停止

停止后,VPC不再收取流日志生成费,但SLS会针对已保存的流日志持续计费

删除流日志

前往专有网络控制台流日志页面,在目标流日志的操作列单击删除

删除后,VPC不再收取流日志生成费,但SLS会针对已保存的流日志持续计费,需至日志服务控制台删除对应的Logstore才能停止全部费用。

API

创建流日志前,请确保您已开通流日志功能,且已在日志服务产品中创建了Project和Logstore:

确保满足上述条件后,您可以:

Terraform

Resources: alicloud_log_project, alicloud_log_store, alicloud_vpc_flow_log
# 指定创建流日志的地域
provider "alicloud" {
  region = "cn-hangzhou"
}

# 指定Project的描述、Logstore和流日志的名称
variable "name" {
  default = "vpc-flowlog-example"
}

# 生成随机数,用于生成project名称
resource "random_uuid" "example" {
}

# 创建日志服务Project
resource "alicloud_log_project" "example" {
  project_name = substr("tf-example-${replace(random_uuid.example.result, "-", "")}", 0, 16)
  description  = var.name
}

# 创建日志服务Logstore
resource "alicloud_log_store" "example" {
  project_name          = alicloud_log_project.example.project_name
  logstore_name         = var.name
  shard_count           = 3
  auto_split            = true
  max_split_shard_count = 60
  append_meta           = true
}

# 创建VPC流日志
resource "alicloud_vpc_flow_log" "example" {
  flow_log_name        = var.name
  log_store_name       = alicloud_log_store.example.logstore_name
  description          = var.name
  traffic_path         = ["all"] # 采集所有场景
  project_name         = alicloud_log_project.example.project_name
  resource_type        = "VPC" # 资源类型为VPC
  resource_id          = "vpc-bp1ekmgzch0bo3hxXXXXXX" # VPC的ID
  aggregation_interval = "1" # 采集时间窗口为1分钟
  traffic_type         = "All" # 采集全部流量,无论访问控制允许还是拒绝
}

分析流日志

通过分析流日志,您可以监控网络性能、排查网络故障、优化网络流量成本以及进行网络安全分析等。

控制台

自定义分析:通过Logstore日志库

前往专有网络控制台流日志页面,在目标流日志的日志服务列单击Logstore的实例名称,进入Logstore的详情页面。在此页面,您可以:

image

通过预设模板分析:Flowlog日志中心

Flowlog日志中心预设了一组可视化模板,支持VPC的策略统计、弹性网卡流量统计以及网段间流量统计,帮助您快速分析VPC流日志。

  1. 前往Flowlog日志中心页面,在右上方单击添加

  2. 创建实例面板中,填入实例名称、已有流日志对应的ProjectLogstore,单击确定

  3. 实例创建成功后,单击Flowlog日志中心列表的实例ID。Flowlog详情页面,您可以查看并分析流日志的信息。

    image

    监控中心提供以下仪表盘和自定义查询功能:

    • 概览:展示流日志的Accept和Reject趋势、进出流量趋势、每个VPC的总数据包数和总字节数、每个ENI的总数据包数和总字节数、来源IP和目标IP的地理分布。

    • 策略统计:展示Accept趋势、Reject趋势、Accept次数统计(由五元组构成)、Reject次数统计(由五元组构成)等信息。五元组是由源IP、源端口、协议类型、目标IP和目标端口组成的集合。

      • Accept:安全组和网络ACL允许记录的流量。

      • Reject:安全组和网络ACL拒绝记录的流量。

    • ENI流量:展示弹性网卡入方向和出方向的流量信息。

    • ECS间流量:展示ECS实例之间的流量情况。

    • 自定义查询:您可以自行查询与分析快速指引

  4. 开启域间分析(可选):Flowlog详情页面,单击网段设置,在网段设置页签,打开开启“域间分析”开关。

    开启域间分析功能后,系统将自动创建数据加工任务,生成具有网段信息的VPC流日志,用于分析不同网段之间的流量情况。数据加工功能会收取一定的费用

    日志服务已预设多个网段,如下图所示。当您需要分析不同网段之间的流量情况时,只需一键开启域间分析功能即可。您也可以根据自身需求自定义添加网段。

    image

    域间分析提供以下仪表盘和自定义查询功能:

    • 域间流量:展示不同网段之间的流量情况。

    • ECS到区间流量:展示ECS实例到目标网段的流量情况。

    • 威胁情报:展示源IP地址与目标IP地址的威胁情报信息。

    • 自定义查询:您可以自行查询和分析具有网段信息的VPC流日志

API

调用GetLogsV2查询分析流日志。

使用示例

下面列举4个典型的使用示例,供参考。

分析公网访问ECS的来源IP

image

如图,假设您已经创建了1台向公网开放的、监听80端口的Web服务器,并通过安全组限制了源IP访问。

那么您可以通过创建流日志,来查询访问80端口的来源IP,并统计访问被安全组允许或拒绝的情况。

  1. 创建流日志

    • 资源实例选择Web服务器的弹性网卡

    • 流量类型选择全部流量

    • 投递配置选择投递至日志服务开启流日志分析报表功能

    • 其他选项保持默认。

  2. 分析流日志

    1. 查询分析语句

      过滤访问10.0.0.1:80端口的源IP,并显示每个IP被安全组允许和拒绝的次数:

      dstaddr:10.0.0.1 AND dstport:80 | SELECT -- 过滤目的IP是10.0.0.1,目的地端口是80的日志
      srcaddr,
      SUM(CASE WHEN action = 'ACCEPT' THEN 1 ELSE 0 END) AS accept_count, -- 每当ACCEPT(即被允许)时计1
      SUM(CASE WHEN action = 'REJECT' THEN 1 ELSE 0 END) AS reject_count -- 每当REJECT(即被拒绝)时计1
      FROM log
      GROUP BY srcaddr -- 按源IP地址分组
      ORDER BY accept_count + reject_count DESC -- 按照“安全组允许+拒绝”的总次数倒序排列
    2. 效果预览

      image如图,srcaddr列显示访问80端口的源IP,accept_countreject_count列分别统计每个源IP被安全组允许和拒绝的流日志条目数,即在查询时间内:

      • 访问80端口来源IP有6个,分别为XX.XX.77.149、XX.XX.138.199、XX.XX.87.21。

      • 前两个公网IP(XX.XX.77.149和XX.XX.138.199 )的请求全部被允许,其他公网IP的请求全部被拒绝。

分析ECS互访流量

配置项

分析VPC内部的ECS互访流量

分析VPC之间的ECS互访流量

示意图

imageimage

示例说明

如图所示,假设您在1个VPC中部署了3台ECS,且ECS之间有互访流量。

此时,您可以使用流日志功能分析ECS之间互访的流量速率和变化趋势。

如图所示,假设您拥有两个位于不同地域的VPC,每个VPC内均部署有多台ECS实例。两个VPC已通过对等连接实现内网互通,对等连接使用CDT按量计费。

最近发现,跨地域流量费用较以往突增,此时您可以使用流日志定位高流量ECS实例,从而优化流量成本。

创建流日志配置

  • 资源实例选择ECS1弹性网卡

  • 投递配置选择投递至日志服务,并开启流日志分析报表功能

  • 其他选项保持默认

  • 资源实例选择专有网络VPC1

  • 投递配置选择投递至日志服务,并开启流日志分析报表功能

  • 其他选项保持默认

查询分析语句

统计ECS1和其他ECS之间的流量速率趋势:

(srcaddr:10.0.0.1 AND dstaddr:10.0.0.*) OR (srcaddr:10.0.0.* AND dstaddr:10.0.0.1 )  | select --过滤ECS1和其他ECS之间的流量趋势
date_format(from_unixtime(__time__ - __time__% 60), '%H:%i:%S') as time, -- 将Unix时间戳转换为可读的时间格式
concat(srcaddr,'->', dstaddr) as src_to_dst, -- 拼接IP会话对,格式为“源ip->目的ip” 
sum(bytes*8/60) as bandwidth -- 将字节转换为比特,并除以采集窗口时间1分钟 
group by time,srcaddr,dstaddr -- 根据时间、源ip、目的ip分组
order by time asc  -- 按时间升序
limit 100 -- 显示前100条结果

统计2个VPC之间的会话流量速率趋势:

(srcaddr:10.0.* AND dstaddr:172.16.*) OR (srcaddr:172.16.* AND dstaddr:10.0.*)  | select --过滤2个VPC之间的会话
date_format(from_unixtime(__time__ - __time__% 60), '%H:%i:%S') as time, -- 将Unix时间戳转换为可读的时间格式
concat(srcaddr,'->', dstaddr) as src_to_dst, -- 拼接IP会话对,格式为“源ip->目的ip” 
sum(bytes*8/60) as bandwidth -- 将字节转换为比特,并除以采集窗口时间1分钟 
group by time,srcaddr,dstaddr -- 根据时间、源ip、目的ip分组
order by time asc  -- 按时间升序
limit 100 -- 显示前100条结果

效果预览

image

如图,10.0.0.1发送到10.0.0.2的流量速率最大,约为180Kbps。10.0.0.1发送到10.0.0.3的流量速率次之,约为90Kbps,其他流量占比较小。

image

如图,每个IP会话之间的速率趋势较为稳定,其中172.16.0.3发送到10.0.0.1的流量最大,约为5Mbps。

分析公网NAT流量

image

如图,假设您在某地域拥有多台ECS,且都部署在同一个交换机中,这些ECS通过公网NAT网关的SNAT功能访问互联网。

近期发现NAT访问公网的流量突增,导致服务器响应变慢,此时您可以通过流日志,排查分析流量占比高的ECS。

  1. 创建流日志

    • 资源实例选择公网NAT网关所在的交换机2

    • 投递配置选择投递至日志服务开启流日志分析报表功能

    • 其他选项保持默认。

  2. 过滤特定流量路径的方法

    在本示例场景中过滤特定路径的流量信息时,需要在查询语句限定不同的条件:

    示意图

    序号

    过滤方法

    image

    过滤从ECS到NAT网关的流量:direction为in,srcaddr为ECS私网IP地址

    过滤从NAT网关到公网的流量:direction为out,srcaddr为NAT网关私网IP地址

    过滤从公网到NAT网关的流量:direction为in,dstaddr为NAT网关私网IP地址

    过滤从NAT网关到ECS的流量:direction为out,dstaddr是ECS私网IP地址

  3. 分析流日志

    1. 查询分析语句

      在ECS到NAT网关的这段路径上,分析去往特定公网IP地址的流量:

      direction: 'in' and srcaddr: 10.0.0.* and dstaddr: 120.26.XX.XX | select -- 过滤ECS访问特定公网IP地址的日志
      date_format(from_unixtime(__time__ - __time__% 60), '%H:%i:%S') as time, srcaddr,  -- 将Unix时间戳转换为可读的时间格式
      sum(bytes*8/60) as bandwidth  -- 将字节转换为比特,并除以采集窗口时间1分钟
      group by time,srcaddr -- 以时间、源ip分组
      order by time asc  -- 按时间升序
      limit 100 -- 显示前100条结果

      其他常用语句

      • 在NAT网关到ECS的这段路径上,筛选某一特定公网IP到所有ECS实例的入流量信息:

        direction: 'out' and dstaddr: 10.0.0.* and srcaddr: 120.26.XX.XX | select -- 过滤ECS访问特定公网IP地址的日志
        date_format(from_unixtime(__time__ - __time__% 60), '%H:%i:%S') as time,   -- 将Unix时间戳转换为可读的时间格式
        dstaddr,
        sum(bytes*8/60) as bandwidth  -- 将字节转换为比特,并除以采集窗口时间1分钟
        group by time,dstaddr -- 以时间、目的ip分组
        order by time asc  -- 按时间升序
        limit 100 -- 显示前100条结果
      • 在ECS到NAT网关的这段路径上,筛选ECS实例去往所有公网IP的出流量信息:

        direction: 'in' and srcaddr: 10.0.0.*  | select -- 过滤ECS访问所有公网IP的日志
        date_format(from_unixtime(__time__ - __time__% 60), '%H:%i:%S') as time,  -- 将Unix时间戳转换为可读的时间格式
        concat(srcaddr,'->', dstaddr), -- 拼接IP会话对,格式为“源ip->目的ip”
        sum(bytes*8/60) as bandwidth  -- 将字节转换为比特,并除以采集窗口时间1分钟
        group by time,srcaddr,dstaddr -- 以时间、源ip分组
        order by time asc  -- 按时间升序
        limit 100 -- 显示前100条结果
    2. 效果预览

      image

      如图可以看到,在ECS到NAT网关的这段路径上,10.0.0.1(ECS1)发送到公网IP地址120.26.XX.XX的流量速率最高,约12Kbps。

分析专线内流量占比

image

如图,某企业在阿里云某地域使用两个VPC部署不同业务,并通过高速通道物理专线+云企业网实现本地IDC接入阿里云。

现在IT部门准备使用流日志监控分析VPC中不同业务流量对物理专线资源的占用情况,为网络资源规划、改善网络性能提供指导。

  1. 创建流日志

    创建2个流日志,集中投递到同1个logstore,每个流日志的关键配置如下:

    • 资源实例分别选择专有网络VPC1和VPC2。

    • 采样路径选择通过转发路由器(TR)的流量

    • 投递配置选择投递至日志服务,2个流日志选择同1个logstore,并开启流日志分析报表功能

    • 其他选项保持默认。

  2. 分析流日志

    1. 查询分析语句

      分析不同VPC流入本地IDC流量的占比情况:

      action: ACCEPT and srcaddr: 192.168.* and dstaddr:10.1.* | 
      WITH 
          vpc1_traffic AS (
              SELECT 
                  date_trunc('minute',__time__) AS minute,
                  SUM(bytes*8/(case WHEN "end"-start=0 THEN 1 else "end"-start end)) AS total_vpc1_traffic
              FROM 
                  log
              WHERE 
                  srcaddr LIKE '192.168.20.%'
              GROUP BY 
                  date_trunc('minute',__time__)
          ),
          vpc2_traffic AS (
              SELECT 
                  date_trunc('minute',__time__) AS minute,
                  SUM(bytes*8/(case WHEN "end"-start=0 THEN 1 else "end"-start end)) AS total_vpc2_traffic
              FROM 
                  log
              WHERE 
                  srcaddr LIKE '192.168.10.%'
              GROUP BY 
                  date_trunc('minute',__time__)
          )
      SELECT 
          COALESCE(vpc1_traffic.minute, vpc2_traffic.minute) AS minute,
          (COALESCE(vpc1_traffic.total_vpc1_traffic, 0) * 100/ NULLIF((COALESCE(vpc1_traffic.total_vpc1_traffic, 0) + COALESCE(vpc2_traffic.total_vpc2_traffic, 0)), 0)) AS vpc1_percentage, 
          (COALESCE(vpc2_traffic.total_vpc2_traffic, 0) * 100/ NULLIF((COALESCE(vpc1_traffic.total_vpc1_traffic, 0) + COALESCE(vpc2_traffic.total_vpc2_traffic, 0)), 0)) AS vpc2_percentage
      FROM vpc1_traffic FULL OUTER JOIN vpc2_traffic ON vpc1_traffic.minute = vpc2_traffic.minute 
      ORDER BY minute

      单击查看SQL语句详细说明。

      • 过滤条件:

        • srcaddr:192.168.*,过滤源地址以192.168.*开头的日志。

        • dstaddr:10.1.*,过滤目的地址以10.1.*开头的日志。

        • action:ACCEPT,过滤action字段取值为ACCEPT的日志。

      • 主查询

        • 使用FULL OUTER JOIN将vpc1_trafficvpc2_traffic的结果根据minute字段连接在一起。

        • 计算每分钟内两个VPC流量的百分比:

          • vpc1_percentage表示VPC1的流量在总流量中的占比。

          • vpc2_percentage表示VPC2的流量在总流量中的占比。

        • 查询结果按minute升序排序。

      • WITH子查询:

        SQL语句中包含vpc1_trafficvpc2_traffic两个子查询,以vpc1_traffic子查询为例进行说明:

        • 使用date_trunc函数将Unix 时间戳(__time__字段)的精度降低为分钟,并命名为minute

        • 使用SUM函数得到某一分钟内总的流量速率,单位bit/s,并命名为total_vpc1_traffic

        • 过滤源地址为192.168.20.*(VPC1下的网段)的流量记录。

        • 按照分钟进行分组。

    2. 效果预览

      flowlog.png

      如图,在14:50-15:50这段时间内,VPC1流入本地IDC的流量占比较高。

更多信息

流日志字段说明

流日志条目字段信息说明如下:

如果某个字段不适用,则字段值显示为-

字段

说明

version

流日志版本,当前所有的日志条目版本为1

account-id

阿里云账号ID。

eni-id

弹性网卡ID。

vm-id

弹性网卡绑定的ECS云服务器ID。

vswitch-id

弹性网卡所在交换机ID。

vpc-id

弹性网卡所在专有网络ID。

type

流量类型,取值为IPv4或IPv6。

支持采集IPv4/IPv6双栈流量的地域有:华北1(青岛)华北5(呼和浩特)美国(硅谷)美国(弗吉尼亚)

protocol

流量的IANA协议编号。 常见协议号举例:ICMP为1,TCP为6,UDP为17。

srcaddr

源IP地址。

srcport

源端口。

dstaddr

目的IP地址。

dstport

目的端口。

direction

流量方向:

  • in:流入弹性网卡的流量。

  • out:流出弹性网卡流量。

action

安全组或网络ACL是否允许该访问:

  • ACCEPT:允许。

  • REJECT:拒绝。

packets

数据包个数。

bytes

字节数。

start

在采集窗口内,收到第1个包的时间。格式为Unix时间戳。

end

对于长连接,是采集窗口结束的时间;对于短连接,是连接关闭的时间。格式为Unix时间戳。

tcp-flags

TCP标志位,以十进制表示,反映了 TCP 协议中的 SYN、ACK、FIN 等标志的组合。

采集窗口内1个流日志条目可能会对应多个TCP数据包,该值是所有相关数据包的标志位字段进行按位或(bitwise OR)运算后的结果。

例如,1个TCP会话在某采集窗口内有两个数据包,分别带有SYN(2)和SYN-ACK(18)标志,则日志中记录的TCP标志位字段为18(2 | 18 = 18)。

部分TCP标志位对应的十进制:

  • FIN: 1

  • SYN: 2

  • RST: 4

  • PSH: 8

  • SYN-ACK: 18

  • URG: 32

关于TCP标志通用信息(例如SYN、FIN、ACK、RST等标志的含义),请参见RFC: 793

log-status

日志记录状态:

  • OK:数据记录正常。

  • NODATA:采集窗口中没有传入或传出网络接口的网络流量,常见于备用系统、非业务高峰期或配置问题导致没有流量的场景。

  • SKIPDATA:采集窗口中跳过了一些流日志记录,常见于高流量环境或突发性流量高峰,导致内部系统过载,从而无法采集流量并跳过记录的场景。

traffic_path

流量发生的场景:

  • 0 - 除下述场景外,采集到的流量。

  • 1 - 通过同一VPC中其他资源的流量。

  • 2 - 访问同VPC内ECS实例的私网流量。

  • 3 - 通过弹性网卡的流量。

  • 4 - 通过高可用虚拟IP(HaVip)的流量。

  • 5 - 访问同地域阿里云云服务的流量。

  • 6 - 通过网关终端节点访问云服务的流量。

  • 7 - 通过NAT网关的流量。

  • 8 - 通过转发路由器(TR)的流量。

  • 9 - 通过VPN网关的流量。

  • 10 - 通过边界路由器(VBR)访问专线的流量。

  • 11 - 通过CEN基础版访问同地域VPC的流量。

  • 12 - 除11、18、19、20所列出场景外通过CEN基础版的流量,如通过CEN基础版访问跨地域云服务、通过CEN基础版访问云连接网CCN等场景的流量。

  • 13 - 通过IPv4网关访问公网的流量。

  • 14 - 通过IPv6网关访问公网的流量。

  • 15 - 通过公网IP访问公网的流量。

  • 17 - 通过VPC对等连接的流量。

  • 18 - 通过CEN基础版访问跨地域VPC的流量。

  • 19 - 通过CEN基础版访问同地域VBR的流量。

  • 20 - 通过CEN基础版访问跨地域VBR的流量。

  • 21 - 通过专线网关(ECR)的流量。

  • 22 - 通过网关型负载均衡终端节点的流量。

如下是流日志条目示例:

数据记录正常且允许记录流量示例

本示例阿里云主账号ID为1210123456******,VPC流日志版本为1,在2024年7月12日17:10:20至17:11:20(1分钟内),弹性网卡eni-bp166tg9uk1ryf******允许出方向以下流量:

源地址和端口(172.31.16.139,1332)通过TCP协议(6表示TCP协议)向目的地址和端口(172.31.16.21,80)传输了10个数据包,数据包总大小为2048字节。日志记录状态为OK,无异常。

{
  "account-id": "1210123456******",
  "action": "ACCEPT",
  "bytes": "2048",
  "direction": "out",
  "dstaddr": "172.31.16.21",
  "dstport": "80",
  "end": "1720775480",
  "eni-id": "eni-bp166tg9uk1ryf******",
  "log-status": "OK",
  "packets": "10",
  "protocol": "6",
  "srcaddr": "172.31.16.139",
  "srcport": "1332",
  "start": "1720775420",
  "tcp-flags": "22",
  "traffic_path": "-",
  "version": "-",
  "vm-id": "1",
  "vpc-id": "-",
  "vswitch-id": "vpc-bp1qf0c43jb3maz******"
}

数据记录正常且拒绝记录流量示例

本示例阿里云主账号ID为1210123456******,VPC流日志版本为1,在2024年7月15日10:20:00至10:30:00(10分钟内),弹性网卡eni-bp1ftp5sm9oszt******拒绝入方向以下流量:

源地址和端口(172.31.16.139,1332)通过TCP协议(6表示TCP协议)向目的地址和端口(172.31.16.21,80)传输了20个数据包,数据包总大小为4208字节。日志记录状态为OK,无异常。

{
  "account-id": "1210123456******",
  "action": "REJECT",
  "bytes": "4208",
  "direction": "in",
  "dstaddr": "172.31.16.21",
  "dstport": "80",
  "end": "1721010600",
  "eni-id": "eni-bp1ftp5sm9oszt******",
  "log-status": "OK",
  "packets": "20",
  "protocol": "6",
  "srcaddr": "172.31.16.139",
  "srcport": "1332",
  "start": "1721010000",
  "tcp-flags": "22",
  "traffic_path": "-",
  "version": "-",
  "vm-id": "1",
  "vpc-id": "-",
  "vswitch-id": "vpc-bp1qf0c43jb3maz******"
}

无数据记录状态示例

本示例阿里云主账号ID为1210123456******,VPC流日志版本为1,在2024年7月15日10:52:20至10:55:20(3分钟内),弹性网卡eni-bp1j7mmp34jlve******在此时间段内没有流量数据记录(NODATA)。

{
  "account-id": "1210123456******",
  "action": "-",
  "bytes": "-",
  "direction": "-",
  "dstaddr": "-",
  "dstport": "-",
  "end": "1721012120",
  "eni-id": "eni-bp1j7mmp34jlve******",
  "log-status": "NODATA",
  "packets": "-",
  "protocol": "-",
  "srcaddr": "-",
  "srcport": "-",
  "start": "1721011940",
  "tcp-flags": "-",
  "traffic_path": "-",
  "version": "-",
  "vm-id": "1",
  "vpc-id": "-",
  "vswitch-id": "vpc-bp1qf0c43jb3maz******"
}

跳过的数据记录状态示例

本示例阿里云主账号ID为1210123456******,VPC流日志版本为1,在2024年7月12日16:20:30至16:23:30(3分钟内),弹性网卡eni-bp1dfm4xnlpruv******的数据记录被跳过(SKIPDATA)。

{
  "account-id": "1210123456******",
  "action": "-",
  "bytes": "-",
  "direction": "-",
  "dstaddr": "-",
  "dstport": "-",
  "end": "1720772610",
  "eni-id": "eni-bp1dfm4xnlpruv******",
  "log-status": "SKIPDATA",
  "packets": "-",
  "protocol": "-",
  "srcaddr": "-",
  "srcport": "-",
  "start": "1720772430",
  "tcp-flags": "-",
  "traffic_path": "-",
  "version": "-",
  "vm-id": "1",
  "vpc-id": "-",
  "vswitch-id": "vpc-bp1qf0c43jb3maz******"
}

计费说明

计费项

流日志费用 = 流日志生成费 + 日志服务的服务费。

  • 流日志生成费:流日志投递到SLS之前产生,由VPC产品计费。按照每月每地域采集的日志量实行阶梯累积计费,每个阿里云账号(主账号)在每个地域每月拥有5 GB免费额度。定价:

    流日志生成量阶梯(每月)

    定价(元/GB

    0 TB~10 TB(含)

    2.5

    10 TB~30 TB(含)

    1.25

    30 TB~50 TB(含)

    0.5

    大于50 TB

    0.25

    计费周期与出账周期均为1小时。账单出账时间通常在当前计费周期结束后3~4小时左右,具体以系统实际出账时间为准。

  • 日志服务的服务费:流日志投递到SLS之后产生,由SLS产品计费。收取写入和存储等费用

    SLS提供2种计费模式:“按写入数据量计费”和“按使用功能计费”。在VPC控制台创建流日志并选择新建Logstore时,默认使用“按使用功能计费”模式。

计费示例

  • 示例1

    假设您于2022年09月01日00:00:00在某地域启用流日志功能,至2022年10月01日00:00:00期间,共向日志服务投递3 GB日志。

    由于每个阿里云账号(主账号)每月有5 GB流日志生成费的免费额度,则您当月流日志的总费用=日志服务的服务费。

  • 示例2

    假设您于2022年09月01日00:00:00在华东2(上海)启用流日志功能,至2022年10月01日00:00:00期间,共向日志服务投递100 GB日志。

    当月流日志的生成费=(100-5)×2.5=237.5元,当月流日志的总费用=237.5元+日志服务的服务费

  • 示例3

    假设您于2022年09月01日00:00:00在华北2(北京)启用流日志功能,至2022年10月01日00:00:00期间,共向日志服务投递60 TB日志。

    流日志的生成费按照阶梯定价计费:

    • 0至10 TB(含):(10×1024-5)×2.5=25587.5元

    • 10 TB至30 TB(含):20×1024×1.25=25600元

    • 30 TB至50 TB(含):20×1024×0.5=10240元

    • 大于50 TB:10×1024×0.25=2560元

    当月流日志生成费合计:25587.5+25600+10240+2560=63987.5元,当月流日志的总费用=63987.5元+日志服务的服务费

欠费与充值

欠费和续费说明

欠费说明

系统根据VPC流日志服务最近24小时的账单应付金额的平均值来判断用户账号余额是否足以支付其VPC流日志服务后3个账期的费用,如果不足以支付将给予短信和邮件提醒。

如果您开启了余额预警功能,当账号余额小于设定的预警值时将给予短信或邮件提醒。

  • 欠费后如果在延停权益额度内,您的服务将不会受到停止影响,实例会继续运行。

    说明

    阿里云提供延期免停权益,即当按量付费的资源发生欠费后,提供一定额度或时长继续使用云服务的权益,延停期间正常计费。具体使用说明和规则,请参见延期免停权益

  • 欠费后如果超出了延停权益额度,服务将自动停止。实例停止后,计费也将停止。

  • 如果您在实例停止7天内未补足欠款,VPC流日志实例会被释放。在实例释放前一天会发送短信和邮件提醒,实例被释放后相关配置和数据将被删除,不可恢复。

续费说明

VPC流日志根据流日志的日志生成量大小计费,无需续费,在阿里云管理控制台上进行充值即可。

  • 在延停权益额度内进行充值,您的业务将不会受到停止的影响。

  • 在实例停止后7天内充值补足欠费后,服务会自动开启,可以继续使用。

充值方式和步骤,请参见如何充值

支持的地域

公有云支持的地域

区域

支持流日志的地域

亚太-中国

华东1(杭州)华东2(上海)华北1(青岛)华北2(北京)华北3(张家口)华北5(呼和浩特)华北6(乌兰察布)华南1(深圳)华南2(河源)华南3(广州)西南1(成都)中国香港华东6(福州-本地地域)

亚太-其他

日本(东京)韩国(首尔)新加坡马来西亚(吉隆坡)印度尼西亚(雅加达)菲律宾(马尼拉)泰国(曼谷)

欧洲与美洲

德国(法兰克福)英国(伦敦)美国(硅谷)美国(弗吉尼亚)

中东

阿联酋(迪拜)沙特(利雅得)

重要

沙特(利雅得)地域由合作伙伴运营。

金融云支持的地域

区域

支持流日志的地域

亚太

华北2 金融云(邀测)华南1 金融云华东2 金融云

政务云支持的地域

区域

支持流日志的地域

亚太

华北2 阿里政务云1

配额

配额名称

描述

默认限制

提升配额

vpc_quota_flowlog_inst_nums_per_user

用户支持创建的流日志实例的数量

10个

您可以通过以下任意方式自助提升配额:

常见问题

VPC流日志可以保存多长时间?

VPC流日志生成后会被自动投递至日志服务中,遵循日志服务产品的保存策略。

  • 创建VPC流日志时如果勾选了开启流日志分析报表功能,则用于存储VPC流日志的Logstore的数据保存时长默认为7天。未勾选时,默认为300天。

  • 您可在日志服务控制台查看现有Logstore的数据保存时间,并按需修改。

等保(信息安全等级保护)要求网络日志,如何查询?

阿里云 VPC 默认不记录网络日志。若需满足等保要求,开启VPC流日志功能即可记录并分析出入弹性网卡的流量信息,实现安全合规监控。

上一篇: 运维与监控 下一篇: 流量镜像
阿里云首页 专有网络VPC 相关技术圈