You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查看VPC防火墙中拒绝GCP实例ICMP请求规则的运行情况?

GCP VPC防火墙拒绝ICMP请求日志与规则运行状态查看方案

默认情况下,GCP VPC防火墙的拒绝动作日志不会自动启用,这是你无法看到被拒绝ICMP请求命中记录的核心原因。以下是具体的配置与查看方案:

一、启用拒绝ICMP规则的日志记录

要捕获被拒绝的ICMP请求日志,需先为目标防火墙规则开启日志功能:

  • 控制台操作:找到对应VPC的防火墙规则,进入编辑页面,在「日志记录」模块勾选「启用日志记录」,选择「仅记录被拒绝的连接」(若仅关注拒绝流量)。
  • gcloud命令行:
    gcloud compute firewall-rules update [RULE_NAME] --enable-logging --logging-denied=ALL
    
    替换[RULE_NAME]为你的拒绝ICMP规则名称,--logging-denied=ALL会记录所有被该规则拒绝的流量,包含ICMP请求。

二、查看规则运行状态与拒绝日志

1. 通过Cloud Logging检索日志

日志启用后,被拒绝的ICMP请求会同步到Cloud Logging,可通过以下方式过滤查询:

  • 控制台查询:进入Cloud Logging页面,使用以下查询语句筛选目标日志:
    resource.type="gce_instance"
    logName="projects/[PROJECT_ID]/logs/compute.googleapis.com%2Ffirewall"
    jsonPayload.rule_details.action="deny"
    jsonPayload.protocol="icmp"
    
    替换[PROJECT_ID]为你的GCP项目ID。
  • gcloud命令查询:
    gcloud logging read 'resource.type="gce_instance" AND logName="projects/[PROJECT_ID]/logs/compute.googleapis.com%2Ffirewall" AND jsonPayload.rule_details.action="deny" AND jsonPayload.protocol="icmp"'
    

2. 通过GCP API查看规则与日志

验证规则日志配置状态

调用Compute Engine API的firewallRules.get方法,传入项目ID和规则名称,返回结果中检查logConfig字段:若enable为true且denied值为ALL,则日志配置生效。

批量检索拒绝ICMP日志

调用Cloud Logging API的entries.list方法,设置过滤条件为:

resource.type="gce_instance" AND logName="projects/[PROJECT_ID]/logs/compute.googleapis.com%2Ffirewall" AND jsonPayload.rule_details.action="deny" AND jsonPayload.protocol="icmp"

并指定按时间倒序返回结果,即可获取目标日志数据。

3. 可视化验证规则命中情况

可通过Cloud Monitoring创建自定义指标:基于防火墙日志统计被拒绝的ICMP请求次数,生成监控图表,直观查看规则的运行频率与命中状态。

内容的提问来源于stack exchange,提问作者user2314914

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 23:30:27