V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
woshisongzhe
V2EX  ›  云计算

阿里云的均衡负载,貌似获取不到经过代理的客户端真实 ip

  •  
  •   woshisongzhe · Aug 16, 2016 · 5374 views
    This topic created in 3548 days ago, the information mentioned may be changed or developed.
    我开了阿里云的均衡负载的目的是为了能够第一时间把真实 ip 提取出来然后第一时间设置防火墙把这些恶意 ip 给屏蔽掉,但问题是测试了几天经过代理的 ip 还是看不到真实 ip ,还需后端服务器提取,究竟这么设置才能让 slb 提取到真实 ip 然后再后端通过 netstat 就能查看到真实 ip?这样,我就可以减少很多工作了,后端服务器也就更安全了
    15 replies    2018-01-03 22:56:29 +08:00
    songw123
        1
    songw123  
       Aug 17, 2016
    XFF
    woshisongzhe
        2
    woshisongzhe  
    OP
       Aug 17, 2016
    @songw123 我在后端设置了 XFF ,但是通过命令窗口 netstat 还是抓取不到真实 ip ,要在负载均衡那设置?但是负载均衡没有让我们进去设置的入口
    cq65617875
        3
    cq65617875  
       Aug 17, 2016
    netstat 当然是看不到客户端 IP 的啊 因为访问的都是 CDN 节点的 IP 你可以在 Header 中获取到 IP
    woshisongzhe
        4
    woshisongzhe  
    OP
       Aug 17, 2016
    @cq65617875 按照这么说,对于通过代理隐藏的客户端 ip 不能通过防火墙给它封了是吗
    cq65617875
        5
    cq65617875  
       Aug 17, 2016
    @woshisongzhe 如果你走 CDN 那么你就只能从你的 WEBSERVER 来判断 IP 你可以在里面做判断进行 403 跳转 CDN 本身就有一层防火墙 你这么做的原因是要做什么
    cq65617875
        6
    cq65617875  
       Aug 17, 2016
    @woshisongzhe 妈的我貌似搞错了 你用的是 SLB 并不是 CDN (噗
    cq65617875
        7
    cq65617875  
       Aug 17, 2016
    @woshisongzhe
    如何获得来访者的真实 IP ?

    针对 7 层( HTTP 协议)服务,负载均衡通过 Http Header:X-Forwarded-For 获取来访者真实 IP ,该功能已经默认开启,无需配置,也不能修改。

    针对 4 层( TCP 协议)服务可以直接获取,无需额外配置。
    songw123
        8
    songw123  
       Aug 17, 2016
    @woshisongzhe 这种情况下,你可以在应用层做,防火墙层面很难做, iptables 不支持
    woshisongzhe
        9
    woshisongzhe  
    OP
       Aug 17, 2016
    @cq65617875 我想要的是在进入防火墙之前这个 ip 就已经暴露而不是进入防火墙之后这个 ip 才能被提取,这么做的话就减少应用层的提取真实 ip 的负担了
    woshisongzhe
        10
    woshisongzhe  
    OP
       Aug 17, 2016
    @songw123 应用层倒是能抓取到,但是增加应用层的负担,我看到 slb 说能真实抓取到 ip 我才开了 slb 试一下,但是发现在后端通过 netstat 查看不到经过代理的真实 ip
    cq65617875
        11
    cq65617875  
       Aug 17, 2016
    @woshisongzhe 是 HTTP 业务么 还是 TCP/UDP
    woshisongzhe
        12
    woshisongzhe  
    OP
       Aug 17, 2016
    @cq65617875 通过网址获取网页结果,我一直理解为是 tcp 业务,其他 UDP 什么的我都封了,只留下 tcp 协议
    cq65617875
        13
    cq65617875  
       Aug 17, 2016
    @woshisongzhe HTTP 的 SLB 不一样 没办法
    donglemon
        14
    donglemon  
       Sep 28, 2016
    用 traceroute 下,应该能抓到
    root123
        15
    root123  
       Jan 3, 2018
    @woshisongzhe 大佬,解决了么?请问如何解决的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2423 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 11:16 · PVG 19:16 · LAX 04:16 · JFK 07:16
    ♥ Do have faith in what you're doing.