NAT 网关(NAT Gateway)提供会话日志功能,当您为NAT 网关创建SNAT条目,有流量经过NAT 网关时,SNAT会话将以日志的形式进行记录,便于您进行溯源和监控。
功能介绍
会话日志捕获的SNAT会话以日志的形式写入日志服务(Log Service,简称SLS)中。每条会话日志记录会捕获特定捕获窗口中的特定五元组网络流,捕获周期大约为10分钟,该段时间内会话日志服务会先聚合数据,再投递至已创建的SLS中,此间数据投递延迟在5分钟之内。但是,会话日志服务依据最大能力交付原则,因此您的会话日志记录可能会超出交付时间,并可能因为网络传输延迟或SLS投递处理延时,无法确保100%交付所有会话。
会话日志目前处于公测中,如需使用,请联系商务经理。
会话日志数据的收集在您网络流量路径之外,因此不会影响NAT 网关的网络吞吐量或延迟。
会话日志的格式如下表所示。
字段 | 说明 |
intstance | NAT 网关实例ID。 |
vpc_id | NAT 网关实例所属的专有网络ID。 |
protocol | 流量的IANA协议编号。 更多信息,请参见Internet 协议编号。 |
pri_ip | 源地址。 |
pri_port | 源端口。 说明 当为ICMP报文时,pri_port对应ICMP ID字段。 |
pub_ip | 目的地址。 |
pub_port | 目的端口。 |
nat_ip |
|
nat_port |
|
bytes_from_pub |
|
pkts_from_pub |
|
bytes_from_vpc | 来自VPC的数据包大小。 |
pkts_from_vpc | 来自VPC的数据包数量。 |
start_time | 会话日志建立时间。 |
end_time | 会话日志停止时间。 |
功能计费
会话日志不收取日志生成费,但会话日志将捕获的SNAT会话存储在阿里云日志服务中,日志服务收取相应的存储和检索费用。更多信息,请参见日志服务计费。
使用限制
按固定规格计费(停止新购)的NAT 网关实例不支持开启会话日志服务。
NAT 网关实例需要与创建的日志服务在同一地域。
会话日志不支持DNAT条目。
支持的地域
会话日志支持的地域请参考下述表格。
区域 | 会话日志支持的地域 |
中国 | 华北1(青岛)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华东1(杭州)、华东2(上海)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都) |
亚太 | 新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、日本(东京)、韩国(首尔) |
欧洲与美洲 | 德国(法兰克福) |
配置流程
创建Project
您需要为日志服务创建一个Project。具体操作,请参见创建项目Project。
创建Logstore
Logstore是Project的资源集合,Logstore中的所有数据都来自于同一个数据源。创建Project后,您需要创建Logstore。具体操作,请参见创建Logstore。
启动会话日志
启动会话日志功能,捕获SNAT会话,并将SNAT会话投递至目标日志服务。具体操作,请参见启动会话日志。
启动会话日志
登录NAT网关管理控制台。
在顶部菜单栏处,选择NAT 网关所属的地域。
在左侧导航栏选择公网NAT网关或VPC NAT网关。
在公网NAT网关或VPC NAT网关页面,找到目标NAT 网关实例,然后单击NAT 网关实例ID。
在NAT 网关实详情页面,选择
页签,然后单击启动会话日志。在启用会话日志对话框中,根据以下内容配置信息,然后单击确定。
配置
说明
NAT实例ID|名称
显示当前NAT 网关实例的ID和名称。
NAT实例所属地域
显示当前NAT 网关实例所属的地域。
日志服务Project
选择管理捕获流量的项目(Project)的类型:
选择现有 Project:从已有的项目中选择存储捕获流量的项目。
新建 Project:新建一个用于存储捕获流量的项目。
日志服务Logstore
选择存储捕获流量的日志库(Logstore)的类型:
选择现有 Logstore:从已有的项目中选择存储捕获流量的日志库。
新建 Logstore:新建一个用于存储捕获流量的日志库。
查看会话日志
登录NAT网关管理控制台。
在顶部菜单栏处,选择NAT 网关所属的地域。
在左侧导航栏选择公网NAT网关或VPC NAT网关。
在公网NAT网关或VPC NAT网关页面,找到目标NAT 网关实例,然后单击NAT 网关实例ID。
在NAT 网关实例详情页面,选择
页签, 找到目标会话日志,查看会话日志相关信息。列表项
说明
会话日志状态
会话日志的启动状态,启动会话日志后显示为已启动。
当您启动会话日志后,系统会自动为您创建
AliyunServiceRolePolicyForNatgwLogDelivery
服务关联角色,向您创建的LogStore进行授权,从而完成数据的投递。更多信息,请参见AliyunServiceRolePolicyForNatgwLogDelivery。投递状态
会话日志的投递状态。取值:
成功:会话日志成功投递至日志服务。
修改中:中间状态,表示会话日志正在修改或启动中。
失败:会话日志无法投递至日志服务。相关错误信息,请参见投递错误码。
投递类型
会话日志投递的目标类型,取值:sls。
目标信息
在目标信息列单击日志库链接,跳转至日志服务控制台,在查看和分析日志之前,您需要为会话日志投递的Logstore中手动创建索引。更多操作,请参见创建索引和查询和分析日志。
停止会话日志
登录NAT网关管理控制台。
在顶部菜单栏处,选择NAT 网关所属的地域。
在左侧导航栏选择公网NAT网关或VPC NAT网关。
在公网NAT网关或VPC NAT网关页面,找到目标NAT 网关实例,然后单击NAT 网关实例ID。
在NAT 网关实例详情页面,选择
页签,找到目标会话日志,然后在操作列,单击停止。然后在弹出的对话框中单击确定。
说明停止会话日志后不会删除已完成投递的会话日志数据。
投递错误码
错误码 | 说明 |
ProjectNotExist | 会话日志投递的目标Project不存在。 |
LogStoreNotExist | 会话日志投递的目标LogStore不存在。 |
ProjectForbidden | 您创建的Project被禁用,可能由于欠费导致。 |
InvalidAccessKeyId | 启动会话日志时,未创建服务关联角色向LogStore授权。 |
Unauthorized | 启动会话日志时,未创建服务关联角色向LogStore授权。 |
UnavaliableTarget | 遇到Unauthorized、ProjectNotExist、LogStoreNotExist、ProjectForbidden错误时,分发会禁止投递至目标5分钟。在5分钟禁用到期后,如果有新的数据需要投递,会投递一次至LogStore做探测,如果投递不成功继续禁用下一个5分钟,如果投递成功则恢复对LogStore的正常投递。 |
WriteQuotaExceed | 您的Project写入流量配额超过限制,默认一个Project下所有LogStore的写入限制为30 GB/min。 |
ShardWriteQuotaExceed | 分发的日志流量较大,而您LogStore的Shard不足,建议您分裂更多Shard支撑更大写入流量。具体操作,请参见管理Shard。 |