Socks 4 绑定请求说明

问题描述 投票:0回答:1

我正在读这个主题 http://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4.protocol

我想做的是:
我有一个客户端/服务器应用程序,我尝试使用socks 4 BIND请求将我的服务器绑定到远程socks服务器,并使客户端连接到该socks服务器,而socks服务器将使它们连接到我的服务器(位于至少这就是我对袜子BIND请求的理解)

但是我不太明白(我的英语有点差),我想问的是,当我不知道客户端的任何远程IP时可以这样做吗?由于服务器的 BIND 请求包必须包含远程客户端的地址,而我实际上没有,因为客户端来自从我的服务器检索状态信息的未知用户(或者我可以使用 0 作为 INANY_ADDR)吗?

proxy socks
1个回答
7
投票

您所要求的 SOCKS 是不可能实现的,也不是为了这个目的。更仔细地再次阅读规范。 BIND 命令旨在与多连接协议(如 FTP)一起使用,其中主连接用于在客户端和服务器之间进行通信,并且 BIND 有助于服务器在连接后需要将辅助连接连接到客户端的情况。客户端告诉服务器连接到哪里。在这种情况下,客户端会向 SOCKS 发出 BIND 命令,告诉它服务器的 IP/端口,以便它只接受该连接,然后将生成的 SOCKS 侦听 IP/端口发送到服务器进行连接。

使用定义了端口转发规则的路由器可以更好地满足您的要求。然后,您可以在路由器上打开一个侦听端口,该端口接受任何入站连接并将其转发到您的应用程序的侦听 IP/端口。大多数现代路由器都支持 uPNP(通用即插即用),因此您可以通过编程方式配置转发规则,而不需要管理员访问路由器的配置软件。

© www.soinside.com 2019 - 2024. All rights reserved.