流量镜像概述
流量镜像
VPC流量镜像功能可以镜像弹性网卡符合筛选条件的报文。您需要设置入方向和出方向的筛选条件,经过弹性网卡的流量符合筛选条件时,将被镜像到指定的云服务器网卡或者弹性负载均衡ELB实例,适用于网络流量检查、审计分析以及问题定位等场景。
流量镜像功能当前暂不收费。待后续启动收费时,将会提前通知您。
目前部分区域支持流量镜像功能,具体请打开功能总览,并选择“流量镜像”查看。
流量镜像概念
- 筛选条件:筛选条件包含入方向规则和出方向规则,规则由优先级、流量采集策略以及匹配条件组成。
- 入方向规则:用来匹配镜像源接收到的流量。
- 出方向规则:用来匹配镜像源发送出去的流量。
- 镜像源:镜像源为弹性网卡,表示需要镜像该弹性网卡的流量。
- 镜像目的:镜像目的为云服务器网卡或者弹性负载均衡实例,用来接受镜像的流量。
- 镜像会话:使用流量镜像功能,您需要创建镜像会话,通过在镜像会话中关联筛选条件、镜像源和镜像目的,将镜像源符合筛选条件的流量镜像到镜像目的实例。
流量镜像工作原理
- 镜像源01是弹性网卡-B,弹性网卡-B属于ECS-B。本示例中,ECS-B访问ECS-A,需要镜像弹性网卡-B的出方向和入方向流量。
- 镜像源02是弹性网卡-C,弹性网卡-C属于ECS-C。本示例中,公网客户端访问ECS-C,需要镜像弹性网卡-C的入方向和出方向流量。
- 筛选条件包含流量的入方向规则和出方向规则。
- 镜像目的使用弹性负载均衡ELB实例,用来接受镜像的流量。
在表1中,以镜像源弹性网卡-B和弹性网卡-C为例,为您介绍网络流量的镜像原理。
镜像源 |
访问路径 |
报文 |
方向 |
说明 |
---|---|---|---|---|
弹性网卡-B |
ECS-B访问ECS-A |
请求报文:报文01 |
出方向 |
从ECS-B发出的请求报文01,对弹性网卡-B来说,属于出方向。当报文01匹配上筛选条件的出方向规则时,则将报文01镜像到ELB实例。 |
响应报文:报文02 |
入方向 |
从ECS-A返回的响应报文02,对弹性网卡-B来说,属于入方向。当该报文匹配上筛选条件的入方向规则时,则将报文02镜像到ELB实例。 |
||
弹性网卡-C |
公网访问ECS-C |
请求报文:报文03 |
入方向 |
从公网发出的请求报文03,对弹性网卡-C来说,属于入方向。当报文03匹配上筛选条件的入方向规则时,则将报文03镜像到ELB实例。 |
响应报文:报文04 |
出方向 |
从ECS-C返回的响应报文04,对弹性网卡-C来说,属于出方向。当报文04匹配上筛选条件的出方向规则时,则将报文04镜像到ELB实例。 |
方向 |
优先级 |
协议 |
策略 |
类型 |
源地址 |
源端口范围 |
目的地址 |
目的端口范围 |
筛选示例说明 |
---|---|---|---|---|---|---|---|---|---|
入方向 |
1 |
TCP |
采集 |
IPv4 |
172.16.0.0/24 |
10000-10001 |
10.0.0.3/32 |
80-80 |
当网络流量进入镜像源的弹性网卡时,镜像会话将会镜像符合以下条件的报文: 使用TCP (IPv4)协议,源地址网段为172.16.0.0/24、源端口为10000或者10001,目的地址为10.0.0.3/32、目的端口为80。 |
出方向 |
1 |
全部 |
不采集 |
IPv4 |
192.168.0.0/24 |
全部 |
10.2.0.0/24 |
全部 |
当网络流量从镜像源的弹性网卡出去时,镜像会话将不会镜像符合以下条件的报文: 使用全部 (IPv4)协议,源地址网段为192.168.0.0/24、源端口为全部,目的地址网段为10.2.0.0/24、目的端口为全部。 |
流量镜像应用场景
流量镜像匹配规则
根据流量镜像的匹配规则,当同一个镜像源的同一个报文同时符合多个筛选条件规则时,该报文也仅会被匹配一次,匹配原则详细说明如下:
匹配原则 |
说明 |
---|---|
顺序匹配 |
|
唯一匹配 |
报文只要与一个筛选条件规则匹配,就不会再去尝试匹配其他规则。 |
- 镜像会话的匹配规则如图2所示。当一个镜像源同时被多个镜像会话关联时,以入方向的报文为例,报文根据镜像会话的优先级,按照从高到低的顺序匹配。
- 当报文匹配上某个镜像会话中的筛选条件入方向规则,则执行以下操作:
- 如果该规则的策略是采集,则镜像该报文。
- 如果该规则的策略是不采集,则不会镜像该报文。
- 当遍历了所有镜像会话中的筛选条件入方向规则,报文均没有匹配上,则不会镜像该报文,结束。
- 当报文匹配上某个镜像会话中的筛选条件入方向规则,则执行以下操作:
- 筛选条件的匹配规则如图3所示。当一个镜像源只被一个镜像会话关联时,以入方向的报文为例,报文根据入方向规则的优先级,按照从高到低的顺序匹配:
- 当报文匹配上筛选条件的某个入方向规则,则执行以下操作:
- 如果该规则的策略是采集,则镜像该报文。
- 如果该规则的策略是不采集,则不会镜像该报文。
- 当遍历了筛选条件中的所有入方向规则,报文均没有匹配上,则不会镜像该报文,结束。
- 当报文匹配上筛选条件的某个入方向规则,则执行以下操作:
流量镜像的配额限制
配额项目 |
默认配额 |
申请扩大配额 |
---|---|---|
单个镜像会话可关联的镜像源数量 |
10个 |
申请更多配额,请参见管理VPC配额 |
单个镜像源可被关联的镜像会话数量 |
3个 |
不支持修改 |
单个镜像会话可关联的镜像目的数量 |
1个 |
不支持修改 |
单个镜像目的可被关联的镜像会话数量 |
|
不支持修改 |
单个镜像会话可关联的筛选条件数量 |
1个 |
不支持修改 |
单个筛选条件可被关联的镜像会话数量 |
1000个 |
不支持修改 |
单个筛选条件可添加的规则数量 |
|
不支持修改 |
一个用户在单个区域可创建的镜像会话数量 |
20000个 |
不支持修改 |
流量镜像的使用限制
- 如图4所示,流量镜像的报文采用标准的VXLAN报文格式封装,更多有关VXLAN协议的信息,请参见RFC 7348。当被镜像的报文长度加上VXLAN报文长度大于镜像源实例的MTU值时,系统会对报文进行截断。为了防止报文被截断,建议您在IPv4场景下,设置弹性网卡的MTU值比链路支持的MTU值至少小64字节。
- 当镜像源为弹性网卡时,仅支持部分规格ECS的弹性网卡作为镜像源,包括c7t、aC7等。
查询其余ECS规格支持情况,推荐您使用查询ECS规格详情API,并通过network_interface:traffic_mirroring_supported参数的响应值来判断ECS规格是否支持流量镜像。
- 当镜像目的为弹性负载均衡ELB时,仅支持独享型ELB。
- 如果一个弹性网卡已被用作镜像源,则镜像目的不能使用该弹性网卡。
- 流量镜像会占用弹性网卡绑定实例的带宽,并且不做独立限速。
- 当一个镜像目的实例需要接收来自多个镜像源的流量镜像时,为了确保正常使用,请您根据业务实际需要合理规划云服务器的规格。
- 根据流量镜像的匹配规则,同一个镜像源的同一个报文同时符合多个筛选条件规则,也仅会被匹配一次,并且根据采集策略决定是否镜像到目的实例。
- 对于镜像源弹性网卡已被安全组或者网络ACL拦截丢弃的报文,流量镜像不会镜像该部分报文。
- 当镜像源的报文符合筛选条件被镜像时,该报文不受镜像源安全组或者网络ACL出方向规则约束,即您无需在镜像源的安全组或者网络ACL做额外配置。但是如果需要将报文镜像到镜像目的实例时,则需要为镜像目的实例所在的安全组和网络ACL配置以下规则:
- 安全组规则:允许来自镜像源的UDP协议报文访问镜像目的的4789端口。
- 网络ACL规则:允许来自镜像源的UDP协议报文访问镜像目的的4789端口。
- 不同的虚拟私有云VPC之间网络不通,如果镜像源和镜像目的实例不在同一个VPC内,则您需要使用VPC对等连接或者企业路由器连通VPC之间的网络。
- VPC对等连接的使用方法,请参见对等连接简介。
- 企业路由器的使用方法,请参见通过企业路由器实现同区域VPC互通。
流量镜像使用流程
使用流量镜像功能,您需要创建镜像会话,通过在镜像会话中关联筛选条件、镜像源和镜像目的,实现指定流量的镜像,使用流程如图5所示。
步骤 |
说明 |
操作指导 |
---|---|---|
设置镜像会话基本信息 |
设置镜像会话的名称,优先级等参数,开始创建镜像会话。 |
|
关联筛选条件 |
选择网络流量的筛选条件,关联至镜像会话。 一个镜像会话可以关联一个筛选条件,如果没有合适的筛选条件,您可以创建筛选条件,具体请参见创建筛选条件。 |
|
关联镜像源 |
选择弹性网卡作为镜像源,关联至镜像会话。 一个镜像会话可关联多个镜像源。 |
|
关联镜像目的 |
选择云服务器网卡或者弹性负载均衡ELB实例作为镜像目的,关联至镜像会话。 |
|
创建完成 |
镜像会话创建完成并开启后,对于镜像源符合筛选条件的网络流量,将被镜像到镜像目的实例。 如果您在创建镜像会话期间关闭了镜像会话,则无法监控镜像源的网络流量,开启镜像会话,具体请参见开启/关闭镜像会话。 |