在 HTTP 隧道代理中,客户端可以单独指定目标服务器的 ip 么?还是只能把 host 交给代理服务器让代理服务器来解析对应 ip?
代理服务器版本 squid/3.5.19
1
3dwelcome 2021-05-28 02:28:05 +08:00
理论上是可以的。HTTP 代理协议,第一步客户端通过 CONNECT 来请求代理服务器,传递的参数,就是连接的网站域名或 IP 地址。
第二步才是正式让代理服务器,转发 GET/POST 之类的请求。 |
2
araaaa 2021-05-28 08:34:56 +08:00 via iPhone
看代理客户端实现,看能否选择在本地解析域名
|
3
qaz168000 2021-05-28 09:38:15 +08:00
这个问题同样好奇,mark 一下
|
4
SmiteChow 2021-05-28 10:07:11 +08:00
`只能把 host 交给代理服务器让代理服务器来解析`
|
5
march1993 2021-05-28 11:04:56 +08:00 via iPhone
看一下 http proxy 协议将知道了 不复杂的
|
6
aladdindingding 2021-05-28 13:52:49 +08:00
connect 请求 起始行 CONNECT 后就是 host,然后代理会解析端口号 https 就是 443 http 就是 80,当然你也可以直接写 IP 地址加端口号,代理就会直接连接到目标主机以及端口
|
7
hanssx 2021-11-05 15:20:22 +08:00
@aladdindingding 如果是 80 的话应该直接是 http 代理了吧,不是 http 隧道代理了吧?除非 CONNETC 指定的是 host 后面有加:80 ,就像你访问一个开在 8080 上面的 https 服务,你访问的时候 host 不加:8080 是不可能访问到的。
|
8
hanssx 2021-11-05 15:20:48 +08:00
|