使用数据包镜像

数据包镜像可用于镜像进出特定虚拟机 (VM) 实例的流量。您可以利用所收集到的流量,检测安全威胁并监控应用性能。如需详细了解数据包镜像,请参阅数据包镜像

镜像的流量将发送到已安装相应软件的虚拟机。如需查看提供软件的供应商列表,请参阅数据包镜像合作伙伴提供商

以下各部分介绍了如何创建和管理数据包镜像政策。

限制

  • 数据包镜像无法镜像 Private Service Connect 发布的服务流量的数据包。

  • 出于安全考虑,数据包镜像不会镜像发送往链路本地 IP 地址范围 169.254.0.0/16 的数据包。此范围包括从虚拟机到其元数据服务器的元数据请求

  • 不支持使用 Google Kubernetes Engine (GKE) LoadBalancer Service 作为数据包镜像收集器。

  • 如果数据包镜像政策可能适用于收集器实例,则数据包镜像会忽略这些实例,不会镜像其流量。

准备工作

在创建数据包镜像政策之前,您必须具备适当的权限。您还必须创建内部直通网络负载均衡器,以充当收集器目标。此内部直通网络负载均衡器需要实例组,以便其后端服务可以将虚拟机用作收集器目的地。

权限

Google Cloud 提供了两种与数据包镜像相关的角色,用于创建和管理数据包镜像政策:

  • compute.packetMirroringUser 授予用户创建、更新和删除数据包镜像政策的权限。如需使用数据包镜像,用户必须在创建数据包镜像政策的项目中具有此角色。

  • compute.packetMirroringAdmin 授予用户对特定资源进行镜像的权限。即使用户有权创建数据包镜像政策,他们仍然需要具备对相关来源进行镜像的权限。如果项目中的政策所有者可能没有任何其他权限(例如在共享 VPC 场景中),那么需要使用此角色。

如需详细了解如何使用 IAM 角色,请参阅 IAM 文档中的管理对项目、文件夹和组织的访问权限

创建收集器实例

数据包镜像需要收集器实例组。如需详细了解实例组,请参阅以下文档:创建新的实例模板在单个可用区中创建 MIG

为数据包镜像创建内部负载均衡器

如需启用数据包镜像,您必须有一个可以作为数据包镜像收集器的内部直通网络负载均衡器。内部直通式网络负载均衡器必须满足以下要求:

  • 创建规则时,内部直通网络负载均衡器的转发规则必须启用数据包镜像。此状态在创建规则后无法更改。您可以使用此转发规则收集 IPv4 和 IPv6 流量。
  • 内部直通式网络负载均衡器与您要镜像的实例位于同一区域。
  • 内部直通式网络负载均衡器的后端服务必须使用 NONE(5 元组哈希)会话亲和性
  • 内部直通式网络负载均衡器的后端服务必须停用后端子集化

如果您的收集器实例未设置为响应您使用后端服务配置的健康检查,则健康检查可能会失败。 在这种情况下,数据包仍然可以镜像。

如需详细了解如何为数据包镜像创建内部直通网络负载均衡器,请参阅为数据包镜像创建负载均衡器

配置防火墙规则

如需为数据包镜像流量准备 VPC 网络,请执行以下操作:

  • 确保负载均衡器实例组中的收集器实例可以接收来自镜像实例或镜像实例的 IPv4 和 IPv6 地址范围的流量。例如,如需让收集器实例接收来自任何虚拟机的 IPv4 流量,请创建来源 IPv4 地址范围为 0.0.0.0/0 的防火墙规则。如需让收集器实例接收来自任何虚拟机的 IPv6 流量,请创建来源 IPv6 地址范围为 ::/0 的防火墙规则。为阻止互联网流量到达收集器实例,请仅为这些实例分配内部 IPv4 和 IPv6 地址。

  • 确保没有其他防火墙规则替换隐式出站流量规则,以便镜像的流量可以从源实例流向内部直通网络负载均衡器中的目标实例。

  • 确保收集器实例可以接收来自 Google Cloud 健康检查系统的流量。例如,对于 IPv4 流量,请创建一条防火墙规则,以允许从 IPv4 地址范围 130.211.0.0/2235.191.0.0/16 到收集器实例的流量。对于 IPv6 流量,请创建一条防火墙规则,以允许从 IPv6 地址范围 2600:2d00:1:b029::/64 到收集器实例的流量。

  • 如果您想通过手动从一个或多个镜像实例发送出站流量来测试数据包镜像,请创建一条允许 SSH 流量流向这些实例的防火墙规则。例如,如需允许从所有 IPv4 和 IPv6 地址到镜像的实例的 SSH 连接,请允许从任何来源 IPv4 和 IPv6 地址到端口 22 的入站流量 TCP 流量。如果您只想允许从特定 IPv4 或 IPv6 地址范围发起的 SSH 连接,请指定该 IPv4 或 IPv6 地址范围作为防火墙规则的来源范围。如需详细了解如何测试内部直通式网络负载均衡器,请参阅测试负载均衡

如果您还没有允许这种流量的规则,请参阅使用 VPC 防火墙规则来创建此规则。如需详细了解如何为内部直通网络负载均衡器创建防火墙规则,请参阅 Cloud Load Balancing 文档中的配置防火墙规则

创建数据包镜像政策

如需开始对进出特定实例的流量进行镜像,请创建数据包镜像政策。Google Cloud 会镜像与您的至少一个指定来源匹配的所有实例。

控制台

  1. 在 Google Cloud 控制台中,转到数据包镜像页面。

    转到“数据包镜像”页面

  2. 点击创建政策

  3. 输入有关政策的以下信息,然后点击继续

    1. 输入政策的名称。
    2. 选择镜像的来源和收集器目的地所在的区域。数据包镜像政策必须与来源和目的地位于同一区域。
    3. 忽略优先级字段。目前无法对其进行调整。
    4. 在创建政策时,选择已启用以激活该政策。
  4. 选择镜像的来源和收集器目的地所在的 VPC 网络,然后点击继续

    来源和目的地可以位于相同或不同的 VPC 网络中。

    • 如果它们位于同一个 VPC 网络中,请选择镜像的来源和目的地在同一 VPC 网络中 (Mirrored sources and destination are in the same VPC network),然后选择网络。
    • 如果它们位于不同的网络中,请选择镜像的来源和收集器目的地在对等互连的不同 VPC 网络中 (Mirrored source and collector destination are in separete, peered VPC networks),然后选择镜像的来源网络,再选择收集器目的地网络。
  5. 选择镜像的来源,然后点击继续。您可以选择一个或多个来源。 Google Cloud 会镜像与您的至少一个选定来源匹配的所有实例。

    • 子网:选择一个或多个子网。Google Cloud 会对选定子网中现有的实例和将来出现的实例进行镜像。
    • 网络标记:指定一个或多个网络标记。 Google Cloud 会镜像至少具有一个指定标记的实例。
    • 实例名称:选择要镜像的特定实例。
  6. 选择已针对数据包镜像进行了配置的内部直通网络负载均衡器,然后点击继续。Google Cloud 会将镜像的流量发送到内部直通网络负载均衡器后面的实例。

    对于共享 VPC,如果收集器目的地和镜像的来源在同一共享 VPC 网络中,则必须选择收集器目的地所在的项目,然后选择负载均衡器。

  7. 如需选择要镜像的流量,请执行以下操作:

    • 如需镜像所有 IPv4 流量,请选择镜像所有 IPv4 流量(默认)
    • 如需镜像所有 IPv4 和 IPv6 流量,请选择镜像已过滤的流量,然后执行以下操作:
      • 选择允许所有协议
      • 选择允许所有 IPv4 范围 (0.0.0.0/0)
      • 选择允许所有 IPv6 范围 (::/0)
      • 选择允许入站流量和出站流量
    • 如需限制镜像的流量,请选择镜像已过滤的流量,然后执行以下操作:

      • 如需按协议限制镜像流量,请选择允许特定协议,然后选择协议。如果您没有看到要为其镜像流量的协议,请选择其他协议,然后在其他协议字段中输入协议。有效值为 tcpudpespahipipsctpIANA 协议编号。如需为 IPv6 指定 ICMP,请输入 58

      • 对于 IPv4 范围过滤条件,请执行以下操作:

        • 如需镜像所有 IPv4 流量,请选择允许所有 IPv4 范围 (0.0.0.0/0)
        • 如需镜像特定 IPv4 地址范围的流量,请选择允许特定 IPv4 范围。在 IPv4 范围字段中,输入单个 IPv4 地址范围,然后按 Enter 键。您可以在您输入的每个范围后按 Enter 键添加多个 IPv4 范围。
      • 对于 IPv6 范围过滤条件,请执行以下操作:

        • 如需过滤掉所有 IPv6 流量,请选择
        • 如需镜像所有 IPv6 流量,请选择允许所有 IPv6 范围 (::/0)
        • 如需镜像特定 IPv6 地址范围的流量,请选择允许特定 IPv6 范围。在 IPv6 范围字段中,输入单个 IPv6 地址范围,然后按 Enter 键。您可以在您输入的每个范围后按 Enter 键添加多个 IPv6 范围。
  8. 选择要镜像的流量的流量方向

  9. 如需创建数据包镜像政策,请点击提交

gcloud

如需创建数据包镜像政策,请使用 packet-mirrorings create 命令

gcloud compute packet-mirrorings create POLICY_NAME \
    --region=REGION \
    --network=NETWORK_NAME \
    --collector-ilb=FORWARDING_RULE_NAME \
    [--mirrored-subnets=SUBNET,[SUBNET,...]] \
    [--mirrored-tags=TAG,[TAG,...]] \
    [--mirrored-instances=INSTANCE,[INSTANCE,...]] \
    [--filter-cidr-ranges=CIDR_RANGE,[CIDR_RANGE,...]] \
    [--filter-protocols=PROTOCOL,[PROTOCOL,...]] \
    [--filter-direction=DIRECTION]

请替换以下内容:

  • POLICY_NAME:数据包镜像政策的名称。
  • REGION:镜像的来源和收集器目的地所在的区域。
  • NETWORK_NAME:镜像的来源所在的网络。
  • FORWARDING_RULE_NAME:配置为镜像收集器的转发规则的名称。Google Cloud 会将所有镜像的流量发送到关联的内部直通网络负载均衡器。
  • SUBNET:要镜像的一个或多个子网的名称。您可以使用逗号分隔列表提供多个子网。Google Cloud 会对该子网中现有的实例和将来出现的实例进行镜像。
  • TAG:一个或多个网络标记。 Google Cloud 会对具有该网络标记的实例进行镜像。您可使用逗号分隔列表提供多个标记。
  • INSTANCE:要镜像的一个或多个实例的完全限定 ID。您可以使用逗号分隔列表提供多个实例。
  • CIDR_RANGE:要镜像的一个或多个 IPv4 或 IPv6 CIDR 范围。 如果未指定 CIDR 范围,则与指定协议匹配的所有 IPv4 流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。 如需镜像所有 IPv4 和 IPv6 流量,请使用 0.0.0.0/0,::/0。您可以同时包含 IPv4 和 IPv6 CIDR 范围。您可以使用逗号分隔列表提供多个范围。
  • PROTOCOL:要镜像的一个或多个协议。 有效值为 tcpudpicmpespahipipsctpIANA 协议编号。如果未指定协议,则与指定 CIDR 范围匹配的所有流量会被镜像。如果协议和 CIDR 范围均未指定,则所有 IPv4 流量都会被镜像。如需为 IPv6 指定 ICMP,请使用 58。您可以使用逗号分隔列表提供多个协议。
  • DIRECTION:要镜像的流量的方向(相对于虚拟机)。默认情况下,此值设置为 both,这意味着同时镜像入站流量和出站流量。您可以限制捕获的流量:指定 ingress 以仅捕获入站数据包,或指定 egress 以仅捕获出站数据包。

Terraform

您可以使用 Terraform 资源创建数据包镜像政策。

resource "google_compute_packet_mirroring" "default" {
  region      = "europe-west1"
  name        = "my-mirroring"
  description = "My packet mirror"
  network {
    url = google_compute_network.ilb_network.id
  }
  collector_ilb {
    url = google_compute_forwarding_rule.default.id
  }
  mirrored_resources {
    tags = ["foo"]
    instances {
      url = google_compute_instance.vm_test.id
    }
  }
  filter {
    ip_protocols = ["tcp"]
    cidr_ranges  = ["0.0.0.0/0"]
    direction    = "BOTH"
  }
}

如需了解如何应用或移除 Terraform 配置,请参阅基本 Terraform 命令

API

如需创建数据包镜像政策,请向 packetMirrorings.insert 方法发出 POST 请求。

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings
{
  "name": "POLICY_NAME",
  "enable": "ENABLED",
  "network": {
    "url": "NETWORK_URL"
  },
  "priority": PRIORITY,
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "tags": [
      "TAG"
    ],
    "instances": [
      {
        "url": "INSTANCE"
      }
    ]
  },
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "filter": {
    "IPProtocols": [
      "PROTOCOL"
    ],
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "direction": "DIRECTION"
  }
}

请替换以下内容:

  • PROJECT_ID:要在其中创建政策的项目的 ID。
  • REGION:镜像的来源和收集器目的地所在的区域。
  • POLICY_NAME:数据包镜像政策的名称。
  • ENABLED:此政策是否生效。选项为 TRUEFALSE。 默认为 TRUE
  • NETWORK_URL:镜像的来源所在网络的网址。
  • PRIORITY:转发规则的优先级,用于在有多条匹配规则时决定顺序。有效范围为 0 到 65,535,默认值为 1,000。
  • SUBNET_URL:要镜像的子网的网址。Google Cloud 会对该子网中现有的实例和将来出现的实例进行镜像。 您可以使用逗号分隔列表提供多个子网。
  • TAG:网络标记。Google Cloud 会对具有该网络标记的实例进行镜像。您可以使用逗号分隔列表提供多个标记。
  • INSTANCE:要镜像的实例的完全限定 ID。您可以使用逗号分隔列表提供多个实例。
  • FORWARDING_RULE_URL:配置为镜像收集器的转发规则的网址。Google Cloud 会将所有镜像的流量发送到关联的内部直通网络负载均衡器。
  • PROTOCOL:一个或多个协议。选项为 tcpudpicmpespahipipsctpIANA 协议编号。如果未指定协议,则与指定 CIDR 范围匹配的所有流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。如需为 IPv6 指定 ICMP,请输入 58。您可以使用以下格式提供多个协议:"icmp", "udp"
  • CIDR_RANGE:要镜像的一个或多个 IPv4 或 IPv6 CIDR 范围。如果未指定 CIDR 范围,则与指定协议匹配的所有 IPv4 流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。 如需镜像所有 IPv4 和 IPv6 流量,请使用 "0.0.0.0/0", "::/0"。您可以同时包含 IPv4 和 IPv6 CIDR 范围。您可以使用以下格式提供多个 CIDR 范围:"192.0.2.0/24", "2001:0DB8::/32"
  • PROTOCOL:要镜像的一个或多个协议。
  • DIRECTION:要镜像的流量的方向。选项为 INGRESSEGRESSBOTH。默认值为 BOTH

验证数据包镜像

如需验证收集器实例正确接收镜像流量,您可以使用 tcpdump

  1. 连接到收集器实例

  2. 如果 tcpdump 命令不可用,请安装它。

  3. 确定您的网络接口:

    ip address
    

    在网络接口列表中,找到与收集器实例的主要内部 IPv4 地址关联的名称,例如 ens4

  4. 开始分析数据包:

    sudo tcpdump -i INTERFACE_NAME -f "host IP_ADDRESS"
    

    请替换以下内容:

    • INTERFACE_NAME:您在第 3 步中确定的接口名称。
    • IP_ADDRESS:镜像的来源虚拟机的 IPv4 地址。
  5. 如需运行测试,请从镜像的来源虚拟机发送流量,例如通过发送 ICMP ping。在 tcpdump 的输出中,验证您可以看到预期的流量。

修改数据包镜像政策

您可以更新现有政策以更改镜像来源或收集器目标等详细信息。

控制台

  1. 在 Google Cloud 控制台中,转到数据包镜像页面。

    转到“数据包镜像”页面

  2. 在数据包镜像政策列表中,点击您要修改的政策。

  3. 在“政策详情”页面上,点击修改

  4. 修改您要更新的字段。控制台遵循与您创建政策时相同的流程。如需了解各字段,请参阅创建数据包镜像政策

gcloud

如需更新现有数据包镜像政策,请使用 packet-mirrorings update 命令

gcloud compute packet-mirrorings update POLICY_NAME [--async] \
  [--collector-ilb=FORWARDING_RULE_NAME] [--description=DESCRIPTION] [--enable] \
  [--filter-direction=DIRECTION] [--region=REGION] \
  [--add-filter-cidr-ranges=[CIDR_RANGE,...] | --clear-filter-cidr-ranges \
    | --remove-filter-cidr-ranges=[CIDR_RANGE,...] \
    | --set-filter-cidr-ranges=[CIDR_RANGE,...]] \
  [--add-filter-protocols=[PROTOCOL,...] | --clear-filter-protocols \
    | --remove-filter-protocols=[PROTOCOL,...] \
    | --set-filter-protocols=[PROTOCOL,...]] \
  [--add-mirrored-instances=[INSTANCE,...] | --clear-mirrored-instances \
    | --remove-mirrored-instances=[INSTANCE,...] \
    | --set-mirrored-instances=[INSTANCE,...]] \
  [--add-mirrored-subnets=[SUBNET,...] | --clear-mirrored-subnets \
    | --remove-mirrored-subnets=[SUBNET,...] \
    | --set-mirrored-subnets=[SUBNET,...]] \
  [--add-mirrored-tags=[TAG,...] | --clear-mirrored-tags \
    | --remove-mirrored-tags=[TAG,...] | --set-mirrored-tags=[TAG,...]]

请替换以下内容:

  • POLICY_NAME:要修改的数据包镜像政策的名称。
  • FORWARDING_RULE_NAME:配置为收集器的转发规则的名称。Google Cloud 会将所有镜像的流量发送到关联的内部直通网络负载均衡器。
  • DESCRIPTION:数据包镜像政策的说明。
  • DIRECTION:要将数据包镜像政策应用到的流量的方向。选项为 egressingressboth
  • REGION:政策所在的区域。
  • CIDR_RANGE:要镜像的一个或多个 IPv4 或 IPv6 CIDR 范围。 如果未指定 CIDR 范围,则与指定协议匹配的所有 IPv4 流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。 如需镜像所有 IPv4 和 IPv6 流量,请使用 0.0.0.0/0,::/0。您可以同时包含 IPv4 和 IPv6 CIDR 范围。您可以使用逗号分隔列表提供多个范围。
  • PROTOCOL:要镜像的一个或多个协议。 有效值为 tcpudpicmpespahipipsctpIANA 协议编号。如果未指定协议,则与指定 CIDR 范围匹配的流量会被镜像。如果协议和 CIDR 范围均未指定,则所有 IPv4 流量都会被镜像。如需为 IPv6 指定 ICMP,请使用 58。您可以使用逗号分隔列表提供多个协议。
  • INSTANCE:要镜像的一个或多个虚拟机实例的完全限定 ID。您可以使用逗号分隔列表提供多个实例。
  • SUBNET:一个或多个子网。您可以使用逗号分隔列表提供多个子网。Google Cloud 会对该子网中现有的实例和将来出现的实例进行镜像。
  • TAG:一个或多个网络标记。 您可使用逗号分隔列表提供多个标记。

API

如需更新数据包镜像政策,请向 packetMirrorings.patch 方法发出 POST 请求。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "name": "POLICY_NAME",
  "description": "DESCRIPTION",
  "priority": "PRIORITY",
  "collectorIlb": {
    "url": "FORWARDING_RULE_URL"
  },
  "mirroredResources": {
    "subnetworks": [
      {
        "url": "SUBNET_URL"
      }
    ],
    "instances": [
      {
        "url": "INSTANCE_URL"
      }
    ],
    "tags": [
      "NETWORK_TAGS"
    ]
  },
  "filter": {
    "cidrRanges": [
      "CIDR_RANGE"
    ],
    "IPProtocols": [
      "PROTOCOL"
    ],
    "direction": "DIRECTION"
  },
  "enable": "ENABLED"
}

请替换以下内容:

  • PROJECT_ID:政策所在项目的 ID。
  • REGION:数据包镜像政策的区域。
  • POLICY_NAME:要修改的数据包镜像政策的名称。
  • DESCRIPTION:政策的可选说明。
  • PRIORITY:政策的优先级,用于在有多项匹配政策时确定顺序。默认值为 1,000。有效范围为 0 到 65,535。
  • FORWARDING_RULE_URL:启用了数据包镜像的转发规则的网址。Google Cloud 会将所有镜像的流量发送到关联的内部直通网络负载均衡器。
  • SUBNET_URL:子网的网址。Google Cloud 会对该子网中现有的实例和将来出现的实例进行镜像。您可以使用逗号分隔列表提供多个子网。
  • INSTANCE_URL:要镜像的虚拟机实例的网址。您可以使用逗号分隔列表提供多个实例。
  • NETWORK_TAGS:网络标记。Google Cloud 会对具有一个或多个网络标记的实例进行镜像。 您可以使用逗号分隔列表提供多个标记。
  • CIDR_RANGE:要镜像的一个或多个 IPv4 或 IPv6 CIDR 范围。 如果未指定 CIDR 范围,则与指定协议匹配的所有 IPv4 流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。 如需镜像所有 IPv4 和 IPv6 流量,请使用 "0.0.0.0/0", "::/0"。您可以同时包含 IPv4 和 IPv6 CIDR 范围。您可以使用以下格式提供多个 CIDR 范围:"192.0.2.0/24", "2001:DB8::/32"
  • IP_PROTOCOL:一个或多个协议。选项为 tcpudpicmpespahipipsctpIANA 协议编号。如果未指定协议,则与指定 CIDR 范围匹配的所有流量会被镜像。如果 CIDR 范围和协议均未指定,则所有 IPv4 流量都会被镜像。如需为 IPv6 指定 ICMP,请使用 58。您可以使用以下格式提供多个协议:"icmp", "udp"
  • DIRECTION:要镜像的流量的方向。 选项为 INGRESSEGRESSBOTH。默认值为 BOTH
  • ENABLED:指示是否启用政策。选项为 TRUEFALSE

列出数据包镜像政策

您可以列出数据包镜像政策以查看现有政策。

控制台

gcloud

如需列出项目中或某个特定区域的数据包镜像政策,请使用 packet-mirrorings list 命令

gcloud compute packet-mirrorings list \
  [--filter="region:(REGION...)"]

REGION 替换为包含所要列出政策的区域的名称。

API

如需列出项目中的现有数据包镜像政策,请向 packetMirrorings.list 方法发出 GET 请求。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/packetMirrorings

PROJECT_ID 替换为您的项目 ID。

如需列出特定区域的现有数据包镜像政策,请向 packetMirrorings.list 方法发出 GET 请求。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings

请替换以下内容:

  • PROJECT_ID:包含要列出的政策的项目 ID。
  • REGION:包含所要列出政策的区域。

描述数据包镜像政策

您可以描述数据包镜像政策以查看政策过滤条件等详细信息。

控制台

  1. 在 Google Cloud 控制台中,转到数据包镜像页面。

    转到“数据包镜像”页面

  2. 在数据包镜像政策列表中,选择您要查看的政策。Google Cloud 控制台会显示所选政策的详细信息。

gcloud

如需描述数据包镜像政策,请使用 packet-mirrorings describe 命令

gcloud compute packet-mirrorings describe POLICY_NAME \
  --region=REGION \

请替换以下内容:

  • POLICY_NAME:要描述的数据包镜像政策的名称。
  • REGION:政策所在的区域。

API

如需描述数据包镜像政策,请向 packetMirrorings.get 方法发出 GET 请求。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

请替换以下内容:

  • PROJECT_ID:政策所在项目的 ID。
  • REGION:政策所在的区域。
  • POLICY_NAME:要描述的数据包镜像政策的名称。

停用或启用数据包镜像政策

您可以停用或启用数据包镜像政策,以停止或开始收集镜像的流量。

控制台

  1. 在 Google Cloud 控制台中,转到数据包镜像页面。

    转到“数据包镜像”页面

  2. 在数据包镜像政策列表中,选择要停用或启用的政策。

  3. 点击停用启用

  4. 点击停用启用以确认。

gcloud

如需停用数据包镜像政策,请使用 packet-mirrorings update 命令

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --no-enable

请替换以下内容:

  • POLICY_NAME:要停用或启用的数据包镜像政策的名称。
  • REGION:政策所在的区域。

如需启用数据包镜像政策,请使用 packet-mirrorings update 命令

gcloud compute packet-mirrorings update POLICY_NAME \
  --region=REGION \
  --enable

请替换以下内容:

  • POLICY_NAME:要停用或启用的数据包镜像政策的名称。
  • REGION:政策所在的区域。

API

如需停用或启用现有数据包镜像政策,请向 packetMirrorings.patch 方法发出 PATCH 请求。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME
{
  "enable": "FALSE|TRUE"
}

请替换以下内容:

  • PROJECT_ID:政策所在项目的 ID。
  • REGION:政策所在的区域。
  • POLICY_NAME:要停用的数据包镜像政策的名称。

删除数据包镜像政策

您可以删除数据包镜像政策,以将其从项目中移除。删除政策后,Google Cloud 会停止镜像与该政策相关的所有流量。

控制台

  1. 在 Google Cloud 控制台中,转到数据包镜像页面。

    转到“数据包镜像”页面

  2. 在数据包镜像政策列表中,选择您要删除的政策。

  3. 点击删除

  4. 点击删除以确认。

gcloud

如需删除数据包镜像政策,请使用 packet-mirrorings delete 命令

gcloud compute packet-mirrorings delete POLICY_NAME \
  --region=REGION \

请替换以下内容:

  • POLICY_NAME:要删除的数据包镜像政策的名称。
  • REGION:政策所在的区域。

API

如需删除数据包镜像政策,请向 packetMirrorings.delete 方法发出 DELETE 请求。

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/packetMirrorings/POLICY_NAME

请替换以下内容:

  • PROJECT_ID:政策所在项目的 ID。
  • POLICY_NAME:要删除的数据包镜像政策的名称。
  • REGION:政策所在的区域。

问题排查

如果您的数据包镜像政策未能收集预期的镜像的流量,请检查以下配置:

  • 检查您是否设有允许流量从镜像的实例流向收集器实例的防火墙规则。

  • 检查镜像的来源是否包含或排除了要镜像的实例。 例如,如果您将某个子网指定为镜像的来源,则该子网中的所有现有实例及将来出现的实例都会被镜像。如果您指定了标记,则系统只会镜像具有匹配的标记的实例。

  • 检查数据包镜像过滤条件是否过于宽泛或过于狭隘。您可能无意中配置了过滤条件来包含或排除某些流量。

  • 如果您已配置数据包镜像政策来收集 IPv6 流量,请确保镜像流量的来源是连接到双栈子网双栈虚拟机