traefik后端应用获取用户真实ip

简介

我树莓派集群是使用taefik作为api网关的,因为后端有一个查询访问者ip的服务,所以必须要设置前端的traefik可以获取到用户的ip,下面是我的流量路径

外网frp服务器–>树莓派traefik服务器–>应用程序

操作

大家都知道当到了树莓派traefik这一层的时候我们就只能从请求头HTTP_X_FORWARDED_FOR获取到用户的真实ip

所以要让traefik得到用户的真实ip必须要traefik信任转发头,所以在traefik启动的时候必须要加上

--entrypoints.<name>.forwardedheaders.insecure

当中的name要用你的entrypoints名字替换了,比如我的80端口的entrypoints名字是web 443端口的entrypoints名字是websecure我就需要加

- --entrypoints.web.forwardedheaders.insecure

- --entrypoints.websecure.forwardedheaders.insecure

当然traefik支持信任部分的转发头,比如你想信任本地的你可以这么做

--entryPoints.web.forwardedHeaders.trustedIPs=192.168.1.1/24

个人觉得traefik是最好的网关工具了,没有其他

欢迎关注Bboysoul的博客www.bboy.app

Have Fun

欢迎关注我的其它发布渠道