【问题标题】:Java Socks5 External ApplicationJava Socks5 外部应用程序
【发布时间】:2010-09-09 17:12:54
【问题描述】:

我已在我的 java 应用程序中连接到 socks5 服务器,现在我想启动一个外部应用程序并让它的所有连接都通过 socks5 服务器运行。外部应用程序本身不支持 socks5。

任何输入都会很棒,在这里挠头..

【问题讨论】:

    标签: java sockets external socks


    【解决方案1】:

    我知道如何做到这一点的 2 个技巧是替换标准运行时库或类似的技巧来拦截 OS 网络调用或在内核中设置一组微调的防火墙规则。

    这两种技术都非常特定于操作系统,无法使用 java 来实现。

    最好的办法是运行现有的 socks5 包装器并让该程序启动外部应用程序,例如 socksify

    我对这种方法的体验参差不齐,有些应用程序可以工作,有些则不能,而且从未发现其中的任何逻辑。

    YMMV

    另一种方法是在 Java 应用程序中播放 tcpproxy(例如,使用 Apache MINA 的东西)并让应用程序连接到 localhost 上的代理端口。同样,这仅适用于某些服务。

    【讨论】:

      【解决方案2】:

      如果外部应用程序是用 Java 编写的,它确实支持 SOCKS。只需使用 -DsocksProxyHost=host 和 -DsocksProxyPort=port 运行它。见[1]。

      [1]:http://download.oracle.com/javase/6/docs/technotes/guides/net/properties.html“网络属性”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-11
        • 2012-12-31
        • 2017-01-19
        相关资源
        最近更新 更多