GCP Network Egress费用指数级增长,无法定位高流量出站来源求排查方向
GCP异常高出站流量排查思路
- VPC流日志与抓包补全验证
首先确认VPC流日志采样率是否为100%,低采样率会漏掉大量分散的短会话,导致流量统计偏差。提取流日志中443端口会话的src_ip、src_port、dest_ip字段,确认流量是本机对外的响应还是主动发起的请求。执行tcpdump -i any dst port 443 -w egress_443.pcap持续抓包10分钟以上,导出pcap文件后分析负载特征,判断是HTTPS响应流量、API调用流量还是其他加密流量。 - 进程流量关联排查补漏
nethogs默认采样频率低,无法捕捉短生命周期会话对应的进程,可执行以下命令循环采集会话与进程的映射关系,持续运行5分钟后汇总匹配VPC日志中的目标IP即可定位对应进程:
若主机部署了Docker、K8s等容器服务,需单独进入容器网络命名空间排查流量,容器内进程的出站流量默认不会被宿主机的进程监控工具直接识别。while true; do ss -tunp | grep ':443' >> ss_443_mapping.log; sleep 1; done - Apache日志与配置核查
检查Apache访问日志的采样规则,确认是否关闭了2xx静态资源请求、Range请求、WebSocket长连接的日志记录,大量分散IP拉取静态资源的场景不会出现异常请求特征,很容易被遗漏。若配置了反向代理,需额外开启代理日志核查上游服务的响应流量,这类流量不会记录到普通访问日志中。 - GCP云服务关联流量排查
确认实例是否承担Cloud NAT网关、负载均衡后端、CDN回源源站等角色,这类场景的转发流量会计入实例出站费用但不会在本机进程层面生成对应的流量记录。另外核查是否有未配置的跨区域存储同步、快照导出、云服务监控指标上报等GCP官方服务流量,这类流量默认走443端口,目标IP分散在GCP官方服务网段内。 - 恶意程序排查
使用rkhunter、chkrootkit扫描主机是否存在rootkit、隐藏挖矿程序,这类恶意程序通常会篡改系统调用隐藏自身进程和流量特征,常规监控工具无法捕获。同时核查crontab定时任务、systemd服务列表中是否存在未知的自启动项。
内容的提问来源于stack exchange,提问作者dgarg
相关产品推荐
相关产品推荐

