3

嗨,我正在尝试让客户端真实 IP 限制在 pod 上的某些访问。但不幸的是,我总是在每个 pod 上得到 10.244.1.1。我试过https://kubernetes.io/docs/tutorials/services/source-ip/但不幸的是没有运气。请帮忙。

我在 cent os 7 裸机服务器上为 kubernetes 集群使用 kubernetes 1.8.2 版本。我没有任何选择,只能使用裸机。作为入口控制器,我使用的是 kong。我的 kong 入口控制器总是得到 10.244.1.1。在kong有一个叫做IP限制的功能。我正在尝试使用它。

所以其他人建议使用另一个 kong hop 作为负载均衡器,这对我的情况来说不是一个好的解决方案。

4

2 回答 2

2

检查“真实 IP”确定的属性(https://docs.konghq.com/2.1.x/configuration/#trusted_ips):

  • 受信任的ips
  • real_ip_header
  • real_ip_recursive

这可能也很有趣:https ://github.com/Kong/kong/pull/5861

于 2020-08-22T00:53:27.187 回答
2

您需要在 kong-proxy 服务上指定流量策略

spec:
...
  selector:
    app: ingress-kong
  type: LoadBalancer
  externalTrafficPolicy: Local

并且您可能需要将以下一个或两个环境变量添加到 kong 容器中

- name: KONG_TRUSTED_IPS
  value: 0.0.0.0/0,::/0
- name: KONG_REAL_IP_RECURSIVE
  value: "on"

我让这个与 k3s 实例一起工作。

k8s 文档的“k8s 的裸机注意事项”和 kong 文档的“保留客户端 IP 地址”中有关于源 IP 问题的详细信息。它们包含太多细节,无法简单概括。

于 2020-09-02T16:07:33.473 回答