嗨,我正在尝试让客户端Real-ip限制kubernetes environemnt上的pod的某些访问权限

问题描述

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

我在cent os 7裸机服务器上使用kubernetes 1.8.2版本进行kubernetes集群。我没有选择使用裸机的选择。作为入口控制器,我正在使用kong。我的kong入口控制器始终获得10.244.1.1。 kong中有一个称为IP限制的功能。我正在尝试使用它。

因此其他人建议使用另一个kong跃点作为负载均衡器,这对我的情况不是一个好的解决方案。

解决方法

为“真实IP”确定(https://docs.konghq.com/2.1.x/configuration/#trusted_ips)签出属性:

  • trusted_ips
  • real_ip_header
  • real_ip_recursive

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

,

您需要在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 docs中的“保留客户端ip地址”中有关于source-ip问题的详细信息。它们包含太多细节,无法简要概述。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...