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地址:

相关推荐
小李独爱秋1 小时前
计算机网络经典问题透视:蜂窝网络切换如何“扼杀”你的TCP连接?
网络·网络协议·tcp/ip·计算机网络·php·信息与通信
人间打气筒(Ada)1 小时前
k8s:CNI网络插件flannel与calico
linux·云原生·容器·kubernetes·云计算·k8s
江畔何人初3 小时前
pod的内部结构
linux·运维·云原生·容器·kubernetes
苦逼IT运维6 小时前
从 0 到 1 理解 Kubernetes:一次“破坏式”学习实践(一)
linux·学习·docker·容器·kubernetes
Volunteer Technology6 小时前
FastDFS+Nginx
运维·nginx
腾讯云开发者6 小时前
言出法随 -- Chaterm如何通过ASR精准操作K8S
云原生·容器·kubernetes
三水不滴6 小时前
计算机网络核心网络模型
经验分享·笔记·tcp/ip·计算机网络·http·https
使者大牙7 小时前
【单点知识】CANopen实用协议介绍
服务器·网络·tcp/ip
伟大的大威8 小时前
NVIDIA DGX Spark (ARM64/Blackwell) Kubernetes 集群 + GPU Operator 完整部署指南
大数据·spark·kubernetes
qinyia9 小时前
**使用AI助手在智慧运维中快速定位并修复服务异常:以Nginx配置错误导致502错误为例**
linux·运维·服务器·数据库·mysql·nginx·自动化