Amazon web services Istio中的客户端IP地址
所以我有一个这样的设置: AWS NLB(正向)-->Istio-->Nginx吊舱 现在,我试图在Istio层实现速率限制。我跟着林克。但是,我仍然可以请求比我配置的更多的API。进一步研究,我在nginx中记录了X-Forwarded-For头,它是空的 那么,当我使用NLB时,如何在Istio中获取客户端IP?NLB转发客户端IP,但如何转发?头球 编辑: Istio版本:1.2.5 istio入口网关配置为节点端口类型 根据AWS关于网络负载均衡器的规定: 网络负载平衡器在开放系统互连(OSI)模型的第四层工作。它每秒可以处理数百万个请求。负载平衡器接收到连接请求后,会从目标组中为默认规则选择一个目标。它尝试在侦听器配置中指定的端口上打开与选定目标的TCP连接 创建目标组时,指定其目标类型,该类型确定是按实例ID还是按IP地址注册目标。如果按实例ID注册目标,则会保留客户端的源IP地址并将其提供给应用程序。如果按IP地址注册目标,则源IP地址是负载平衡器节点的专用IP地址Amazon web services Istio中的客户端IP地址,amazon-web-services,kubernetes,istio,Amazon Web Services,Kubernetes,Istio,所以我有一个这样的设置: AWS NLB(正向)-->Istio-->Nginx吊舱 现在,我试图在Istio层实现速率限制。我跟着林克。但是,我仍然可以请求比我配置的更多的API。进一步研究,我在nginx中记录了X-Forwarded-For头,它是空的 那么,当我使用NLB时,如何在Istio中获取客户端IP?NLB转发客户端IP,但如何转发?头球 编辑: Istio版本:1.2.5 istio入口网关配置为节点端口类型 根据AWS关于网络负载均衡器的规定: 网络负载平衡器在开放系统互连(
使用NLB时,有两种保留客户端IP地址的方法: 1.:NLB在源地址中保留客户端IP地址 按实例ID注册目标时。 因此,客户端IP地址仅在特定NLB配置中可用。您可以在aws中阅读有关目标群体的更多信息
2.:代理协议头。 可以使用发送附加数据,例如标头中的源IP地址。即使您通过IP地址指定目标 您可以按照aws获取如何配置代理协议的指南和示例 使用控制台启用代理协议
使用NLB时,有两种保留客户端IP地址的方法: 1.:NLB在源地址中保留客户端IP地址 按实例ID注册目标时。 因此,客户端IP地址仅在特定NLB配置中可用。您可以在aws中阅读有关目标群体的更多信息
2.:代理协议头。 可以使用发送附加数据,例如标头中的源IP地址。即使您通过IP地址指定目标 您可以按照aws获取如何配置代理协议的指南和示例 使用控制台启用代理协议
我跟随这个链接。。。。哪个链接?更新了链接。嗨,你的istio版本是什么?当调用
kubectl get svc istio ingresgateway-n istio system
时,您的AWS NLB ip地址是否在EXTERNAL-ip
下?@PiotrMalec更新了这个问题。如果运行kubectl-n istio system get cm istio-o jsonpath=“{@.data.mesh}”| grep disablePolicyChecks
,您会得到什么?我遵循了这个链接。。。。哪个链接?更新了链接。嗨,你的istio版本是什么?调用kubectl get svc istio ingresgateway-n istio system
时,您的AWS NLB ip地址是否在EXTERNAL-ip
下?@PiotrMalec更新了问题。如果运行kubectl-n istio system get cm istio-o jsonpath=“{@.data.mesh}”| grep disablePolicyChecks
,您会得到什么?