Proxy Socks 4绑定请求说明

Proxy Socks 4绑定请求说明,proxy,connect,socks,Proxy,Connect,Socks,我在读这个话题 我想做的是: 我有一个客户机/服务器应用程序,我试图做的是使用socks 4绑定请求将我的服务器绑定到远程socks服务器,并使客户机连接到该socks服务器,socks服务器将使他们连接到我的服务器(至少我是这样理解socks绑定请求的) 但我不完全理解(我的英语有点差),我想问的是,当我不知道客户端的任何远程IP时,有可能这样做吗?由于服务器的绑定请求包必须包含远程客户端的地址,而我实际上没有,因为客户端来自从我的服务器检索状态信息的未知用户(或者我可以将0用于INANY_

我在读这个话题

我想做的是: 我有一个客户机/服务器应用程序,我试图做的是使用socks 4绑定请求将我的服务器绑定到远程socks服务器,并使客户机连接到该socks服务器,socks服务器将使他们连接到我的服务器(至少我是这样理解socks绑定请求的)


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

SOCKS不可能满足您的要求,也不适用于此目的。再次仔细阅读规范。BIND命令用于多连接协议(如FTP),其中主连接用于客户端和服务器之间的通信,而BIND有助于在客户端告诉服务器连接位置后服务器需要将辅助连接连接连接到客户端。在这种情况下,客户机将向SOCKS发出BIND命令,告诉它服务器的IP/端口,以便它只接受该连接,然后将生成的SOCKS侦听IP/端口发送到要连接的服务器


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

谢谢,我从您的示例中更好地理解了这一点,现在明白了,再次感谢。我只是想离开保护我的服务器,所以它受到了攻击,Socks服务器将是而不是我的本地服务器。使用内置了防攻击逻辑的路由器。雷米,目前我正在与Socks的rfc进行斗争。你能澄清一些问题吗?在绑定套接字上可以完成多少来自目标主机的入站连接?只有一个?在我看来,这一点在rfc中并不明显。@sim一旦绑定了新套接字,它只接受一个连接。在收到绑定请求后,服务器最多发送两个响应:一个在绑定套接字之后,另一个在预期的传入连接成功或失败之后。没有第三个回复-RFC中不包括进一步的传入连接1928@sim阅读Socks4和Socks5规范,很明显每个绑定请求只允许一个入站连接。