V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lysS
V2EX  ›  Windows

Windows 的那个代理是什么原理?

  •  
  •   lysS · 2022-05-10 11:45:31 +08:00 · 2161 次点击
    这是一个创建于 932 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在设置里面我设置成了一个本地地址。然后在本地 listen 这个地址。如果是 HTTP listen 的话是收不到请求的;但是 TCP 可以。

    这就有个问题了:本地代理时,怎么知道一个请求实际需要请求的地址喃?

    lyy16384
        1
    lyy16384  
       2022-05-10 18:07:08 +08:00
    你需要的是 socks5 协议相关的信息
    lysS
        2
    lysS  
    OP
       2022-05-10 18:18:26 +08:00
    @lyy16384 操作系统会默认套一层 socks 吗?我还以为是设置 http 的代理呢
    Opportunity
        3
    Opportunity  
       2022-05-10 22:11:24 +08:00
    默认应该是 HTTP 代理没问题,感觉是你用的 http 库没有支持 connect 请求方法

    > CONNECT example.com:443 HTTP/1.1
    >
    < HTTP/1.1 200 Connection established
    <
    // 到这里就相当于和 example.com:443 建立了 TCP 连接,具体后边发什么东西依据实际情况决定,HTTP 、TLS 握手、或者其他基于 TCP 的协议 etc
    > // handshake to example.com
    < // response from example.com

    https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Methods/CONNECT

    跟普通的 HTTP 方法还是有一定的差别的

    要调试的话还是用 curl 和 telnet 看起来清楚点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1215 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:15 · PVG 02:15 · LAX 10:15 · JFK 13:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.