【问题标题】:Multiple connections in a single SSH SOCKS 5 Proxy单个 SSH SOCKS 5 代理中的多个连接
【发布时间】:2010-04-20 06:38:48
【问题描述】:

我在 Stackoverflow 上的第一个问题是:我应该怎么做才能让 SSH SOCKS 5 代理 (SSH2) 允许多个连接?

我注意到,当我在 Firefox 中加载页面时(已经配置为使用 SOCKS 5 代理),它会一一加载所有内容。它可以用肉眼感知,我还通过使用 Firebug 的 NET 选项卡确认了这一点,该选项卡记录了已建立的连接。

我已经在 about:config 页面中配置了一些指令,例如管道、持久代理连接和其他一些东西。但是我仍然会得到这种顺序加载的资源,这显然非常慢。

network.http.pipelining;true
network.http.pipelining.maxrequests;8
network.http.pipelining.ssl;true
network.http.proxy.pipelining;true
network.http.max-persistent-connections-per-proxy;100
network.proxy.socks_remote_dns;true

我的 ISP 很糟糕,因为它在白天故意随机中断连接。因此,如果不需要大量浏览器刷新或按 F5 键,就不可能真正完成有意义的工作。所以,这就是我开始寻找解决方案的原因。

SSH 的动态端口转发是我目前找到的最好的解决方案,因为它有一些非常好的压缩功能,可以节省大量无用的流量,而且还很安全。剩下的唯一事情就是让它运行多个连接。

感谢所有输入。

【问题讨论】:

  • socks 协议没有任何内容会导致这种行为。这更有可能是 http 流水线的结果,或者不太可能是笨拙的代理实现。
  • Pipelining 只是说,它可以通过同一个 TCP 连接发送所有请求,而无需等待第一个响应。并非所有代理都使用流水线,但据我了解,您根本不连接到 http 代理,而是使用不同的 socks 服务器。

标签: proxy ssh socks


【解决方案1】:

我也有同样的想法,我的结论是它应该已经有多个连接通过 socks 代理。这是因为如果您查看带有-vvv 标志的 ssh 连接,您会注意到它为不同的请求打开了不同的端口。

【讨论】:

    【解决方案2】:

    我认为这可能与 SSH-over-TCP 本身有关;另外,也许还有一些额外的低效率和/或实现中的错误。您是在 Mac OS X / *BSD / Linux 上仅使用 OpenSSH,还是在 Windows 上使用 PuTTY?

    您的情况实际上正是开发 SCTP 的原因(作为 TCP 的替代品),它具有来自单个连接的多个流的概念。

    希望有一天,我们可以随时使用基于 SCTP 的 SSH。 SCTP 最好的部分是它仍然可以在 IPv4 上工作,也就是说,它应该主要是只有终端主机支持它的问题,所以,与 IPv6 不同,你不必等待你的惰性 ISP(至少,理论上)。

    【讨论】:

    • 另一个问题是每个域名解析都会阻塞其余的流程(请参阅superuser.com/questions/700453/…),因此,您的network.proxy.socks_remote_dns;true 设置实际上可能适得其反。
    猜你喜欢
    • 1970-01-01
    • 2013-08-31
    • 1970-01-01
    • 1970-01-01
    • 2020-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-04
    相关资源
    最近更新 更多