ngx_http_proxy_protocol_vendor_module 模块

一、前置要求

  1. 启用 PROXY 协议

    listen 指令中添加 proxy_protocol 参数,例如:

    nginx 复制代码
    server {
        listen 80   proxy_protocol;
        listen 443  ssl proxy_protocol;
        ...
    }
  2. 商业订阅

    本模块仅在 Nginx 商业版中提供。

二、示例配置

nginx 复制代码
http {
    # 将 GCP 的 PSC 连接 ID 添加到上游请求头
    proxy_set_header X-Conn-ID $proxy_protocol_tlv_gcp_conn_id;

    server {
        listen 80   proxy_protocol;
        listen 443  ssl proxy_protocol;

        # 其他常规配置...
        location / {
            proxy_pass http://backend;
            # 示例:将 AWS VPC 端点 ID 透传给后端
            proxy_set_header X-AWS-VPCE-ID $proxy_protocol_tlv_aws_vpce_id;
            # 示例:将 Azure 私有端点 LinkID 透传给后端
            proxy_set_header X-AZURE-PEL-ID $proxy_protocol_tlv_azure_pel_id;
        }
    }
}

三、嵌入式变量

变量名 含义
$proxy_protocol_tlv_aws_vpce_id 提取 PROXY 协议 TLV 中 AWS VPC Endpoint 的 ID
$proxy_protocol_tlv_azure_pel_id 提取 PROXY 协议 TLV 中 Azure Private Endpoint 的 LinkID
$proxy_protocol_tlv_gcp_conn_id 提取 PROXY 协议 TLV 中 GCP PSC Connection 的 ID

这些变量可直接用于 proxy_set_header、日志记录或其他需要客户端连接上下文的位置。

四、使用建议

  1. 确保上游服务支持

    如果后端业务逻辑需要根据云平台连接元数据做访问控制、审计或路由,请务必在后端服务中解析并验证相应 HTTP 头。

  2. 安全与合规

    云平台 TLV 信息可能包含敏感的网络拓扑标识,尽量只在可信环境或内部网络中透传,避免泄露给未授权的外部方。

  3. 与 PROXY 协议配合

    • 在负载均衡器(如 AWS ALB/CLB、GCP 负载均衡、Azure 负载均衡)上启用 PROXY 协议;
    • Nginx listen ... proxy_protocol 后端需配置成接收 PROXY 协议(proxy_protocol 参数);
    • 并确保防火墙或安全组允许负载均衡器源 IP 伪装的连接。

通过 ngx_http_proxy_protocol_vendor_module,您可以在 Nginx 层面轻松获取并利用云平台提供的连接元数据,助力细粒度流量管理、审计和多云部署场景。

相关推荐
微硬创新7 小时前
老旧产线改造:耐达讯自动化16路4‑20mA转PROFINET的工程实践
人工智能·网络协议·自动化·信息与通信
80s77710 小时前
独享住宅IP、长效代理ip是什么?有哪些作用?
网络·网络协议·tcp/ip
IPdodo_10 小时前
静态 IP、住宅 IP 和固定出口有什么区别?开发场景选型指南
服务器·网络·网络协议·tcp/ip·代理ip
_ZHOURUI_H_11 小时前
Unity TCP底层极限拆解:粘包、半包、CRC、序列号、双缓冲到底怎么一起工作的?
网络·网络协议·tcp/ip·游戏·unity·游戏引擎·游戏开发
pcplayer15 小时前
Delphi WebService 使用 HTTP Header 管理 Session
http·webservice·soap·web server·http header
微硬创新16 小时前
大点数模拟量采集落地:耐达讯自动化32路0-20mA适配PROFINET总线实践解析
运维·人工智能·网络协议·自动化·信息与通信
zhiSiBuYu051716 小时前
Flask Session 与 Cookie 新手实战指南
后端·python·flask
FfHUCisI16 小时前
Golang HTTP 路由设计与请求处理
开发语言·http·golang
小新讲网安17 小时前
HTTP请求走私攻击实战:CL.TE与TE.CL绕过前端服务器全解析
服务器·前端·网络·web安全·http·架构·漏洞
zhengqiqiqinqin17 小时前
Ubuntu16.04 升级ssl到3.5.7、升级ssh到9.8p1
网络协议·ssh·ssl