Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Socks5外部应用程序_Java_Sockets_External_Socks - Fatal编程技术网

Java Socks5外部应用程序

Java Socks5外部应用程序,java,sockets,external,socks,Java,Sockets,External,Socks,我已经在java应用程序中连接到一个socks5服务器,现在我想启动一个外部应用程序,并让它的所有连接都通过socks5服务器运行。外部应用程序本身不支持socks5 任何输入都很好,我在这里摸不着头脑。我知道的两个技巧是替换标准运行库或类似的技巧来拦截操作系统网络调用或在内核中设置一组经过微调的防火墙规则 这两种技术都是非常特定于操作系统的,无法使用java来实现这一点 您最好运行一个现有的socks5包装器,让该程序启动外部应用程序,如socksify 我对这种方法有着复杂的经验,有些应用程

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


任何输入都很好,我在这里摸不着头脑。

我知道的两个技巧是替换标准运行库或类似的技巧来拦截操作系统网络调用或在内核中设置一组经过微调的防火墙规则

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

您最好运行一个现有的socks5包装器,让该程序启动外部应用程序,如socksify

我对这种方法有着复杂的经验,有些应用程序可以工作,有些则不行,而且从来没有在其中找到任何逻辑

YMMV


另一种方法是在Java应用程序中使用tcpproxy,例如使用ApacheMina工具,并让应用程序连接到本地主机上的代理端口。同样,这只适用于某些服务。

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

[1] :网络属性