nginx 多层代理 + k8s ingress 后端服务获取客户真实ip 配置

1.nginx http 七层代理

修改命令空间:

namespace: nginx-ingress :

configmap:nginx-configuration

bash 复制代码
kubectl get cm nginx-configuration  -n ingress-nginx  -o yaml

添加如上配置

compute-full-forwarded-for: "true"

forwarded-for-header: X-Forwarded-For

use-forwarded-headers: "true"

即可;

  1. nginx stream 4层代理:

nginx 需要编译增加--with-stream_realip_module模块,然后对应的server块中添加参数,proxy_protocol on; 如下图所示:


前面的4层代理更改好之后,ingress解析不了包,会报错 '400 Bad Request',需要修改ingress cm nginx-configuration 配置 , 增加 use-proxy-protocol: "true" 。如下图:

查看日志,为真实客户端ip地址:

相关推荐
阿维的博客日记6 小时前
(生活比喻-图文并茂)http2.0和http3.0的队头阻塞,http2.0应用层解决,TCP层存在,3.0就是彻底解决,到底怎么理解区别???
网络协议·tcp/ip
2501_916008897 小时前
iOS App抓包工具排查后台唤醒引发请求异常
websocket·网络协议·tcp/ip·http·网络安全·https·udp
JeffersonZU8 小时前
Linux/Unix 套接字Socket编程(socket基本概念,流程,流式/数据报socket,Unix domain socket示例)
linux·c语言·tcp/ip·udp·unix·gnu
2401_836836599 小时前
k8s配置管理
云原生·容器·kubernetes
一切顺势而行9 小时前
k8s 使用docker 安装教程
docker·容器·kubernetes
霖檬ing9 小时前
K8s——配置管理(1)
java·贪心算法·kubernetes
澜兮子9 小时前
k8s-服务发布基础
云原生·容器·kubernetes
小安运维日记9 小时前
CKS认证 | Day4 最小化微服务漏洞
安全·docker·微服务·云原生·容器·kubernetes
2401_836836599 小时前
k8s服务发布进阶
云原生·容器·kubernetes
D-海漠10 小时前
S7-1200 CPU 与 S7-300 CP ISO on TCP 通信(S7-1200 作为客户端,S7-300 使用 Step7)
tcp/ip