如何根据每个应用程序通过特定的 SOCKS 代理路由流量?

如何根据每个应用程序通过特定的 SOCKS 代理路由流量?

我正在运行某个桌面应用程序(如果有任何区别的话实际上是通过 AIR),它没有任何内置的代理配置设置。

我需要让所有来自此应用的流量都通过安全的 SOCKS 代理进行传输。这意味着我无法使用全局网络偏好设置,因为这会影响许多其他应用。

有没有办法强制每个应用程序的所有网络通信通过给定的 SOCKS 代理?

了解是否有办法根据特定 IP 地址全局执行此类路由也会很有帮助(因为这可以允许一些合理的解决方法)。

答案1

代理卡使您可以通过代理服务器重定向计算机的网络连接。您可以告诉 ProxyCap 哪些应用程序将通过代理连接到互联网以及在什么情况下。这可以通过用户友好的界面完成,无需重新配置任何互联网客户端。

主要特征:

  • 支持SOCKS4、SOCKS5和HTTPS代理服务器
  • 直接支持 SSH 隧道(指定 SSH 服务器作为代理服务器)
  • 支持基于 TCP 和 UDP 的网络协议
  • 代理端 DNS 支持
  • 灵活的路由规则
  • 支持代理链
  • IPv6 支持
  • 支持 64 位应用程序
  • 集中管理支持

答案2

在文章中 使用 Mac OS X 在美国境外观看 hulu.com,作者尝试了 tsocks/dsocks/dante苹果端口,但效果都不太好。由于本文写于 2009 年,因此这些应用程序很可能已经得到改进,现在可能对您有用。

作者最终发现 适用于 Mac OS X 的 Proxifier,一个原生 Cocoa 应用程序,可让您通过各种代理传输整个应用程序。

其代理规则菜单有一个“仅处理以下内容”选项,您可以在其中为想要通过代理进行隧道传输的应用程序添加规则(默认情况下,它会尝试对所有内容进行 socksify)。

答案3

MacPorts 有一个tsocks 端口对于通常不支持代理或无法执行 SOCKS 的应用程序,可以使用 SOCKS 代理。如果您可以从终端启动应用程序,那么它可能可以满足您的需求。

相关内容