V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zhoudaiyu
V2EX  ›  问与答

想问问大家一个经过代理的请求的抓包问题

  •  
  •   zhoudaiyu · 2022-01-04 21:00:42 +08:00 · 876 次点击
    这是一个创建于 1039 天前的主题,其中的信息可能已经有所发展或是发生改变。

    网络拓扑非常简单,如下

    TraceNet 2.jpg

        请求从 Client 通过访问代理服务器 ProxyServerNginx 访问百度,相当于客户端请求了代理服务器,代理服务器再新建一个与 Baidu 的 HTTP 请求,这样就导致了没法跟踪到是哪个 Client 访问代理服务器的连接导致了 NGINX 访问 Baidu (从 WireShark 看不出来)。请问这种问题如何解决?
    
    8 条回复    2022-01-04 22:57:55 +08:00
    rapiz
        1
    rapiz  
       2022-01-04 21:02:38 +08:00
    你是不是想找 x-forwarded-for ?
    zhoudaiyu
        2
    zhoudaiyu  
    OP
       2022-01-04 21:13:07 +08:00
    @rapiz #1 忘记说了,最好是纯 TCP 代理的也能找到,X-Forward-For 是不是还得靠 Nginx 配置请求头
    Tianao
        3
    Tianao  
       2022-01-04 21:13:17 +08:00
    要看 ProxyServerNginx 是否受控啦,如果是做 LB/ADC 的话,Nginx 可以开 log 啦插楼上说的 XFF 啦。
    zhoudaiyu
        4
    zhoudaiyu  
    OP
       2022-01-04 21:27:56 +08:00 via iPhone
    @Tianao 可控,root 都有,但是针对纯 TCP 请求有办法吗
    Tianao
        5
    Tianao  
       2022-01-04 21:53:12 +08:00
    @zhoudaiyu #4 那就是 LB/ADC 喽,最终目标是解决什么问题,常态化 audit 日志还是临时排错 /调试?
    lovelylain
        6
    lovelylain  
       2022-01-04 21:59:51 +08:00 via Android
    @zhoudaiyu 如果后端服务支持 proxy protocol ,可以,例如 nginx 。如果后端服务既不支持 xff 也不支持 pp ,只认 tcp 协议报文取到的 ip ,巧妇难为无米之炊。
    zhoudaiyu
        7
    zhoudaiyu  
    OP
       2022-01-04 22:52:41 +08:00 via iPhone
    @Tianao 用于 debug
    zhoudaiyu
        8
    zhoudaiyu  
    OP
       2022-01-04 22:57:55 +08:00 via iPhone
    @jobmailcn 哦哦!我们的 nginx 是支持 Proxy Protocal 的,但是没有开,我去研究研究,这是个好东西,谢谢!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   960 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 20:50 · PVG 04:50 · LAX 12:50 · JFK 15:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.