GKE IP 伪装配置数据分析

本页介绍了 Google Kubernetes Engine (GKE) IP 伪装配置的网络分析器数据分析。如需了解所有数据分析类型,请参阅数据分析组和类型

网络分析器会检测 ip-masq-agent 配置,并将其与集群的 Pod CIDR 范围进行比较。

ConfigMap 缺少部分 Pod CIDR 范围

在 GKE 集群上部署的 ip-masq-agent 配置的 ConfigMap 似乎缺少 pod CIDR 范围。这与以下警告消息相对应:集群的 ip-masq-agent 配置映射的 nonMasqueradeCIDRs 未完全涵盖 Pod CIDR 范围。 这意味着,Pod 之间的基础架构集群流量会使用源节点的 IP 地址进行源网络地址转换 (SNAT),这可能会导致在有防火墙或网络政策的情况下出现连接问题。

此数据分析包括以下信息:

  • ip-masq-agent ConfigMapip-masq-agent 组件的 ConfigMap
  • nonMasqueradeCIDRs:此字段用于指定已停用来源 IP 地址 SNAT 的目标 IP 地址范围列表(采用 CIDR 格式)。
  • Pod CIDR:Pod CIDR 范围是专门用于为集群中的 Pod 分配唯一 IP 地址的 IP 地址块。集群中运行的每个 Pod 都会从此范围内收到自己的 IP 地址,从而实现网络通信。

如需了解详情,请参阅 IP 伪装代理在标准集群中配置 IP 伪装代理

建议

检查分配给集群的 Pod CIDR 的值,然后修改 ip-masq-agent ConfigMap,以在 nonMasqueradeCIDRs 字段中添加所有 Pod CIDR 范围。添加 Pod CIDR 范围有助于确保集群内的流量不受 IP 伪装的影响。

ConfigMap 缺少部分 Pod CIDR 范围,并且默认 SNAT 已停用

由于 --disable-default-snat=true 标志,您的 GKE 集群中停用了默认 SNAT,并且自行部署的 ip-masq-agent 配置会代替它管理 IP 伪装规则。您为 ip-masq-agent ConfigMap 的自定义配置可能未正确包含 Pod CIDR 范围。这与以下警告消息相对应:集群的 ip-masq-agent 配置映射的 nonMasqueradeCIDRs 未完全涵盖 Pod CIDR 范围,并且 disable-default-snat 标志设为 true。 因此,Pod 流量可能无法根据您的预期政策正确伪装。

此数据分析包括以下信息:

  • ip-masq-agent ConfigMapip-masq-agent 组件的 ConfigMap
  • nonMasqueradeCIDRs:此字段用于指定已停用来源 IP 地址 SNAT 的目标 IP 地址范围列表(采用 CIDR 格式)。
  • Pod CIDR:Pod CIDR 范围是专门用于为集群中的 Pod 分配唯一 IP 地址的 IP 地址块。集群中运行的每个 Pod 都会从此范围内收到自己的 IP 地址,从而实现网络通信。
  • 自定义配置ip-masq-agent ConfigMap 的自定义配置会覆盖默认的 nonMasqueradeCIDRs 列表。您的自定义配置会完全替换代理提供的默认范围。
  • disable-default-snat 标志--disable-default-snat 标志会更改默认 GKE SNAT 行为,以便保留发送到所有目标的数据包的来源 Pod IP 地址。

如需了解详情,请参阅 IP 伪装代理在标准集群中配置 IP 伪装代理

建议

检查分配给集群的 Pod CIDR自定义配置的值。修改 ip-masq-agent ConfigMap,以在 nonMasqueradeCIDRs 字段中添加所有 Pod CIDR 范围。添加 Pod CIDR 范围有助于确保集群内的流量不受 IP 伪装的影响。