一种基于Kong网关获取客户端IP的方法技术

技术编号:24692534 阅读:90 留言:0更新日期:2020-06-27 11:30
本发明专利技术公开的基于Kong网关获取客户端IP的方法,涉及网络技术领域,通过为IP数组proxy_add_x_forwarded_for设置环境参数is_first并根据该环境参数is_first解析IP数组proxy_add_x_forwarded_for,适用于Kong网关未被代理及被代理的场景,提高了兼容性。

A method of acquiring client IP based on Kong gateway

【技术实现步骤摘要】
一种基于Kong网关获取客户端IP的方法
本专利技术属于网络
,具体涉及一种基于Kong网关获取客户端IP的方法。
技术介绍
随着移动互联网技术的深入应用,基于前后台分离的应用场景越来越多。通过API-gateway管控后台接口的方式变得尤为重要,Kong网关作为API-gateway,就是其中最突出的一款产品形态。通过API-gateway可以实现对后台节点的如下管控:IP限流、IP黑白名和服务降级等。Kong网关作为一种API-gateway开源技术,已实现了对HTTP请求的限流和和黑白名单控制。在使用Kong网关的过程中,当Kong网关被反向代理服务器代理后,HTTP请求经过一层或者多层反向代理(如Openresty),请求到Kong网关上,Kong网关再路由请求到后台节点,此时获取不到用户端的真实IP,导致基于IP的拦截策略失效,如IP限流、IP黑白名单等等都会失效。现有方案仅从一个维度进行处理,即只是从HTTP请求中提取固定IPremote_addr的值,不适Kong网关被代理的场景,兼容性较差。本文档来自技高网...

【技术保护点】
1.一种基于Kong网关获取客户端IP的方法,其特征在于,包括:/n接收客户端发送的HTTP请求并从所述HTTP请求的请求头中获取IP数组proxy_add_x_forwarded_for;/n判断IP数组proxy_add_x_forwarded_for是否为空,若是,则从所述HTTP请求中提取固定IP remote_addr,将所述固定IP remote_addr作为客户端IP;/n若否,则解析IP数组proxy_add_x_forwarded_for,从所述IP数组proxy_add_x_forwarded_for中获取客户端IP。/n

【技术特征摘要】
1.一种基于Kong网关获取客户端IP的方法,其特征在于,包括:
接收客户端发送的HTTP请求并从所述HTTP请求的请求头中获取IP数组proxy_add_x_forwarded_for;
判断IP数组proxy_add_x_forwarded_for是否为空,若是,则从所述HTTP请求中提取固定IPremote_addr,将所述固定IPremote_addr作为客户端IP;
若否,则解析IP数组proxy_add_x_forwarded_for,从所述IP数组proxy_add_x_forwarded_for中获取客户端IP。


2.根据权利要求1所述的基于Kong网关获取客户端IP的方法,其特征在于,从所述IP数组proxy_add_x_forwarded_for中获取客户端IP包括:
获取所述IP数组proxy_add_x_forwarded_for中预设的环境参数is_first,...

【专利技术属性】
技术研发人员:张鹏
申请(专利权)人:北京首汽智行科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1