首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Krakend正在屏蔽客户端IP地址。

Krakend正在屏蔽客户端IP地址。
EN

Stack Overflow用户
提问于 2021-10-06 13:47:29
回答 1查看 385关注 0票数 1

我有一个python程序,它使用request.client.host头和Fast获取客户机IP。这个程序运行在库伯内特斯吊舱(Ip)上.我使用KrakenD实现了另一个Gateway,它运行在kubernetes集群中的另一个pod上。Kubernetes yaml文件( ip-pod和KrakenD)都具有externalTrafficPolicy: Local属性,我无法检索用户的真实IP,这可能是因为KrakenD不允许真正的IP到达ip-pod。我已经测试了这个程序,通过使用type: LoadBalancer将IP暴露到互联网上,这样它就给出了正确的客户端IP。但是当我使用KrakenD网关时,IP是不同的(私有IP)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-06 13:58:58

您可以在krakenD中使用no,它会将请求转发到后端。

https://www.krakend.io/docs/endpoints/no-op/

您还可以在YAML of KrakenD中检查参数转发配置。

代码语言:javascript
复制
"headers_to_pass":[  
      "*"
]

如果您在报头中获取客户端IP,KrakenD将将其转发到后端。

https://www.krakend.io/docs/endpoints/parameter-forwarding/#sending-all-client-headers-to-the-backends

参照系

代码语言:javascript
复制
{
              "endpoint": "/api/v1/{uid}/user",
              "method": "GET",
              "headers_to_pass": [ "*" ],
              "querystring_params": [ "*" ],
              "output_encoding": "no-op",
              "concurrent_calls": 1,
              "backend": [
                  {
                      "url_pattern": "/api/{uid}/user",
                      "encoding": "no-op",
                      "host": [
                          "http://IP:Port"
                      ]
                  }
              ]
          }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69466985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档